@carbon/web-components 1.26.0-rc.1 → 1.26.0-rc.3

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 (626) hide show
  1. package/dist/accordion.min.js +2 -2
  2. package/dist/accordion.rtl.min.js +2 -2
  3. package/dist/breadcrumb.min.js +1 -1
  4. package/dist/breadcrumb.rtl.min.js +1 -1
  5. package/dist/{button-0eeac278.js → button-c71594fa.js} +2 -2
  6. package/dist/{button-4b4837f0.js → button-e31ba29e.js} +2 -2
  7. package/dist/button.min.js +1 -1
  8. package/dist/button.rtl.min.js +1 -1
  9. package/dist/{decorators-0a905d41.js → carbon-element-18175602.js} +9 -1
  10. package/dist/checkbox-3fc0ced9.js +65 -0
  11. package/dist/checkbox-a740039c.js +65 -0
  12. package/dist/checkbox.min.js +1 -1
  13. package/dist/checkbox.rtl.min.js +1 -1
  14. package/dist/code-snippet.min.js +2 -2
  15. package/dist/code-snippet.rtl.min.js +2 -2
  16. package/dist/combo-box.min.js +1 -1
  17. package/dist/combo-box.rtl.min.js +1 -1
  18. package/dist/{content-switcher-item-d37071b9.js → content-switcher-item-77b690a9.js} +2 -2
  19. package/dist/{content-switcher-item-db96b7e3.js → content-switcher-item-96395561.js} +2 -2
  20. package/dist/content-switcher.min.js +1 -1
  21. package/dist/content-switcher.rtl.min.js +1 -1
  22. package/dist/copy-button-50221d0f.js +65 -0
  23. package/dist/copy-button-9cb9a0c6.js +65 -0
  24. package/dist/copy-button.min.js +1 -1
  25. package/dist/copy-button.rtl.min.js +1 -1
  26. package/dist/data-table.min.js +2 -2
  27. package/dist/data-table.rtl.min.js +2 -2
  28. package/dist/date-picker.min.js +3 -3
  29. package/dist/date-picker.rtl.min.js +3 -3
  30. package/dist/decorators-56213c84.js +78 -0
  31. package/dist/{dropdown-item-1630cdb0.js → dropdown-item-62abeaa7.js} +2 -2
  32. package/dist/{dropdown-item-8c9136d9.js → dropdown-item-97eb5366.js} +2 -2
  33. package/dist/dropdown.min.js +1 -1
  34. package/dist/dropdown.rtl.min.js +1 -1
  35. package/dist/file-uploader.min.js +2 -2
  36. package/dist/file-uploader.rtl.min.js +2 -2
  37. package/dist/form.min.js +1 -1
  38. package/dist/form.rtl.min.js +1 -1
  39. package/dist/inline-loading.min.js +2 -2
  40. package/dist/inline-loading.rtl.min.js +2 -2
  41. package/dist/{input-1583283e.js → input-254c34ac.js} +2 -2
  42. package/dist/{input-b817aa3d.js → input-bb75e577.js} +2 -2
  43. package/dist/input.min.js +1 -1
  44. package/dist/input.rtl.min.js +1 -1
  45. package/dist/link-3c734b06.js +65 -0
  46. package/dist/link-aecb4d2a.js +65 -0
  47. package/dist/link.min.js +1 -1
  48. package/dist/link.rtl.min.js +1 -1
  49. package/dist/list.min.js +1 -1
  50. package/dist/list.rtl.min.js +1 -1
  51. package/dist/loading-9ce928f0.js +65 -0
  52. package/dist/loading-c77e0b8d.js +65 -0
  53. package/dist/loading.min.js +1 -1
  54. package/dist/loading.rtl.min.js +1 -1
  55. package/dist/modal.min.js +2 -2
  56. package/dist/modal.rtl.min.js +2 -2
  57. package/dist/multi-select.min.js +1 -1
  58. package/dist/multi-select.rtl.min.js +1 -1
  59. package/dist/notification.min.js +2 -2
  60. package/dist/notification.rtl.min.js +2 -2
  61. package/dist/number-input.min.js +2 -2
  62. package/dist/number-input.rtl.min.js +2 -2
  63. package/dist/overflow-menu.min.js +2 -2
  64. package/dist/overflow-menu.rtl.min.js +2 -2
  65. package/dist/pagination.min.js +1 -1
  66. package/dist/pagination.rtl.min.js +1 -1
  67. package/dist/progress-indicator.min.js +2 -2
  68. package/dist/progress-indicator.rtl.min.js +2 -2
  69. package/dist/radio-button.min.js +2 -2
  70. package/dist/radio-button.rtl.min.js +2 -2
  71. package/dist/search-99e65bb6.js +65 -0
  72. package/dist/search-dfddc65c.js +65 -0
  73. package/dist/search.min.js +1 -1
  74. package/dist/search.rtl.min.js +1 -1
  75. package/dist/select.min.js +1 -1
  76. package/dist/select.rtl.min.js +1 -1
  77. package/dist/skeleton-placeholder.min.js +1 -1
  78. package/dist/skeleton-placeholder.rtl.min.js +1 -1
  79. package/dist/skeleton-text.min.js +2 -2
  80. package/dist/skeleton-text.rtl.min.js +2 -2
  81. package/dist/skip-to-content.min.js +1 -1
  82. package/dist/skip-to-content.rtl.min.js +1 -1
  83. package/dist/slider.min.js +1 -1
  84. package/dist/slider.rtl.min.js +1 -1
  85. package/dist/structured-list.min.js +1 -1
  86. package/dist/structured-list.rtl.min.js +1 -1
  87. package/dist/tabs.min.js +2 -2
  88. package/dist/tabs.rtl.min.js +2 -2
  89. package/dist/tag.min.js +2 -2
  90. package/dist/tag.rtl.min.js +2 -2
  91. package/dist/textarea.min.js +1 -1
  92. package/dist/textarea.rtl.min.js +1 -1
  93. package/dist/tile.min.js +1 -1
  94. package/dist/tile.rtl.min.js +1 -1
  95. package/dist/toggle.min.js +2 -2
  96. package/dist/toggle.rtl.min.js +2 -2
  97. package/dist/tooltip.min.js +2 -2
  98. package/dist/tooltip.rtl.min.js +2 -2
  99. package/dist/ui-shell.min.js +2 -2
  100. package/dist/ui-shell.rtl.min.js +2 -2
  101. package/es/components/accordion/accordion-item.d.ts +1 -1
  102. package/es/components/accordion/accordion-item.d.ts.map +1 -1
  103. package/es/components/accordion/accordion-item.js +4 -3
  104. package/es/components/accordion/accordion-item.js.map +1 -1
  105. package/es/components/accordion/accordion.d.ts +1 -1
  106. package/es/components/accordion/accordion.d.ts.map +1 -1
  107. package/es/components/accordion/accordion.js +3 -2
  108. package/es/components/accordion/accordion.js.map +1 -1
  109. package/es/components/breadcrumb/breadcrumb-item.d.ts +1 -1
  110. package/es/components/breadcrumb/breadcrumb-item.d.ts.map +1 -1
  111. package/es/components/breadcrumb/breadcrumb-item.js +3 -2
  112. package/es/components/breadcrumb/breadcrumb-item.js.map +1 -1
  113. package/es/components/breadcrumb/breadcrumb-link.d.ts +1 -1
  114. package/es/components/breadcrumb/breadcrumb-link.d.ts.map +1 -1
  115. package/es/components/breadcrumb/breadcrumb-link.js +2 -2
  116. package/es/components/breadcrumb/breadcrumb-link.js.map +1 -1
  117. package/es/components/breadcrumb/breadcrumb-overflow-menu.d.ts +1 -1
  118. package/es/components/breadcrumb/breadcrumb-overflow-menu.d.ts.map +1 -1
  119. package/es/components/breadcrumb/breadcrumb-overflow-menu.js +3 -2
  120. package/es/components/breadcrumb/breadcrumb-overflow-menu.js.map +1 -1
  121. package/es/components/breadcrumb/breadcrumb.d.ts +1 -1
  122. package/es/components/breadcrumb/breadcrumb.d.ts.map +1 -1
  123. package/es/components/breadcrumb/breadcrumb.js +3 -2
  124. package/es/components/breadcrumb/breadcrumb.js.map +1 -1
  125. package/es/components/button/button-skeleton.d.ts +1 -1
  126. package/es/components/button/button-skeleton.d.ts.map +1 -1
  127. package/es/components/button/button-skeleton.js +3 -2
  128. package/es/components/button/button-skeleton.js.map +1 -1
  129. package/es/components/button/button.d.ts +1 -1
  130. package/es/components/button/button.d.ts.map +1 -1
  131. package/es/components/button/button.js +3 -2
  132. package/es/components/button/button.js.map +1 -1
  133. package/es/components/checkbox/checkbox.d.ts +1 -1
  134. package/es/components/checkbox/checkbox.d.ts.map +1 -1
  135. package/es/components/checkbox/checkbox.js +3 -2
  136. package/es/components/checkbox/checkbox.js.map +1 -1
  137. package/es/components/code-snippet/code-snippet-skeleton.d.ts +1 -1
  138. package/es/components/code-snippet/code-snippet-skeleton.d.ts.map +1 -1
  139. package/es/components/code-snippet/code-snippet-skeleton.js +3 -2
  140. package/es/components/code-snippet/code-snippet-skeleton.js.map +1 -1
  141. package/es/components/code-snippet/code-snippet.d.ts +1 -1
  142. package/es/components/code-snippet/code-snippet.d.ts.map +1 -1
  143. package/es/components/code-snippet/code-snippet.js +3 -2
  144. package/es/components/code-snippet/code-snippet.js.map +1 -1
  145. package/es/components/combo-box/combo-box-item.d.ts +1 -1
  146. package/es/components/combo-box/combo-box-item.d.ts.map +1 -1
  147. package/es/components/combo-box/combo-box-item.js +2 -2
  148. package/es/components/combo-box/combo-box-item.js.map +1 -1
  149. package/es/components/combo-box/combo-box.d.ts +1 -1
  150. package/es/components/combo-box/combo-box.d.ts.map +1 -1
  151. package/es/components/combo-box/combo-box.js +3 -2
  152. package/es/components/combo-box/combo-box.js.map +1 -1
  153. package/es/components/content-switcher/content-switcher-item.d.ts +1 -1
  154. package/es/components/content-switcher/content-switcher-item.d.ts.map +1 -1
  155. package/es/components/content-switcher/content-switcher-item.js +3 -2
  156. package/es/components/content-switcher/content-switcher-item.js.map +1 -1
  157. package/es/components/content-switcher/content-switcher.d.ts +1 -1
  158. package/es/components/content-switcher/content-switcher.d.ts.map +1 -1
  159. package/es/components/content-switcher/content-switcher.js +3 -2
  160. package/es/components/content-switcher/content-switcher.js.map +1 -1
  161. package/es/components/copy-button/copy-button.d.ts +1 -1
  162. package/es/components/copy-button/copy-button.d.ts.map +1 -1
  163. package/es/components/copy-button/copy-button.js +3 -2
  164. package/es/components/copy-button/copy-button.js.map +1 -1
  165. package/es/components/data-table/table-batch-actions.d.ts +1 -1
  166. package/es/components/data-table/table-batch-actions.d.ts.map +1 -1
  167. package/es/components/data-table/table-batch-actions.js +3 -2
  168. package/es/components/data-table/table-batch-actions.js.map +1 -1
  169. package/es/components/data-table/table-body.d.ts +1 -1
  170. package/es/components/data-table/table-body.d.ts.map +1 -1
  171. package/es/components/data-table/table-body.js +3 -2
  172. package/es/components/data-table/table-body.js.map +1 -1
  173. package/es/components/data-table/table-cell-skeleton.d.ts +1 -1
  174. package/es/components/data-table/table-cell-skeleton.d.ts.map +1 -1
  175. package/es/components/data-table/table-cell-skeleton.js +3 -2
  176. package/es/components/data-table/table-cell-skeleton.js.map +1 -1
  177. package/es/components/data-table/table-cell.d.ts +1 -1
  178. package/es/components/data-table/table-cell.d.ts.map +1 -1
  179. package/es/components/data-table/table-cell.js +3 -2
  180. package/es/components/data-table/table-cell.js.map +1 -1
  181. package/es/components/data-table/table-expand-row.d.ts +1 -1
  182. package/es/components/data-table/table-expand-row.d.ts.map +1 -1
  183. package/es/components/data-table/table-expand-row.js +3 -2
  184. package/es/components/data-table/table-expand-row.js.map +1 -1
  185. package/es/components/data-table/table-expanded-row.d.ts +1 -1
  186. package/es/components/data-table/table-expanded-row.d.ts.map +1 -1
  187. package/es/components/data-table/table-expanded-row.js +3 -2
  188. package/es/components/data-table/table-expanded-row.js.map +1 -1
  189. package/es/components/data-table/table-head.d.ts +1 -1
  190. package/es/components/data-table/table-head.d.ts.map +1 -1
  191. package/es/components/data-table/table-head.js +3 -2
  192. package/es/components/data-table/table-head.js.map +1 -1
  193. package/es/components/data-table/table-header-cell-skeleton.d.ts +1 -1
  194. package/es/components/data-table/table-header-cell-skeleton.d.ts.map +1 -1
  195. package/es/components/data-table/table-header-cell-skeleton.js +2 -2
  196. package/es/components/data-table/table-header-cell-skeleton.js.map +1 -1
  197. package/es/components/data-table/table-header-cell.d.ts +1 -1
  198. package/es/components/data-table/table-header-cell.d.ts.map +1 -1
  199. package/es/components/data-table/table-header-cell.js +3 -2
  200. package/es/components/data-table/table-header-cell.js.map +1 -1
  201. package/es/components/data-table/table-header-expand-row.d.ts +1 -1
  202. package/es/components/data-table/table-header-expand-row.d.ts.map +1 -1
  203. package/es/components/data-table/table-header-expand-row.js +2 -2
  204. package/es/components/data-table/table-header-expand-row.js.map +1 -1
  205. package/es/components/data-table/table-header-row.d.ts +1 -1
  206. package/es/components/data-table/table-header-row.d.ts.map +1 -1
  207. package/es/components/data-table/table-header-row.js +2 -2
  208. package/es/components/data-table/table-header-row.js.map +1 -1
  209. package/es/components/data-table/table-row.d.ts +1 -1
  210. package/es/components/data-table/table-row.d.ts.map +1 -1
  211. package/es/components/data-table/table-row.js +3 -2
  212. package/es/components/data-table/table-row.js.map +1 -1
  213. package/es/components/data-table/table-toolbar-content.d.ts +1 -1
  214. package/es/components/data-table/table-toolbar-content.d.ts.map +1 -1
  215. package/es/components/data-table/table-toolbar-content.js +3 -2
  216. package/es/components/data-table/table-toolbar-content.js.map +1 -1
  217. package/es/components/data-table/table-toolbar-search.d.ts +1 -1
  218. package/es/components/data-table/table-toolbar-search.d.ts.map +1 -1
  219. package/es/components/data-table/table-toolbar-search.js +3 -2
  220. package/es/components/data-table/table-toolbar-search.js.map +1 -1
  221. package/es/components/data-table/table-toolbar.d.ts +1 -1
  222. package/es/components/data-table/table-toolbar.d.ts.map +1 -1
  223. package/es/components/data-table/table-toolbar.js +3 -2
  224. package/es/components/data-table/table-toolbar.js.map +1 -1
  225. package/es/components/data-table/table.d.ts +1 -1
  226. package/es/components/data-table/table.d.ts.map +1 -1
  227. package/es/components/data-table/table.js +3 -2
  228. package/es/components/data-table/table.js.map +1 -1
  229. package/es/components/date-picker/date-picker-input-skeleton.d.ts +1 -1
  230. package/es/components/date-picker/date-picker-input-skeleton.d.ts.map +1 -1
  231. package/es/components/date-picker/date-picker-input-skeleton.js +3 -2
  232. package/es/components/date-picker/date-picker-input-skeleton.js.map +1 -1
  233. package/es/components/date-picker/date-picker-input.d.ts +3 -7
  234. package/es/components/date-picker/date-picker-input.d.ts.map +1 -1
  235. package/es/components/date-picker/date-picker-input.js +3 -2
  236. package/es/components/date-picker/date-picker-input.js.map +1 -1
  237. package/es/components/date-picker/date-picker.d.ts +2 -4
  238. package/es/components/date-picker/date-picker.d.ts.map +1 -1
  239. package/es/components/date-picker/date-picker.js +3 -2
  240. package/es/components/date-picker/date-picker.js.map +1 -1
  241. package/es/components/dropdown/dropdown-item.d.ts +1 -1
  242. package/es/components/dropdown/dropdown-item.d.ts.map +1 -1
  243. package/es/components/dropdown/dropdown-item.js +3 -2
  244. package/es/components/dropdown/dropdown-item.js.map +1 -1
  245. package/es/components/dropdown/dropdown-skeleton.d.ts +1 -1
  246. package/es/components/dropdown/dropdown-skeleton.d.ts.map +1 -1
  247. package/es/components/dropdown/dropdown-skeleton.js +3 -2
  248. package/es/components/dropdown/dropdown-skeleton.js.map +1 -1
  249. package/es/components/dropdown/dropdown.d.ts.map +1 -1
  250. package/es/components/dropdown/dropdown.js +2 -1
  251. package/es/components/dropdown/dropdown.js.map +1 -1
  252. package/es/components/file-uploader/drop-container.d.ts +4 -1
  253. package/es/components/file-uploader/drop-container.d.ts.map +1 -1
  254. package/es/components/file-uploader/drop-container.js +3 -2
  255. package/es/components/file-uploader/drop-container.js.map +1 -1
  256. package/es/components/file-uploader/file-uploader-item.d.ts +1 -1
  257. package/es/components/file-uploader/file-uploader-item.d.ts.map +1 -1
  258. package/es/components/file-uploader/file-uploader-item.js +3 -2
  259. package/es/components/file-uploader/file-uploader-item.js.map +1 -1
  260. package/es/components/file-uploader/file-uploader.d.ts +1 -1
  261. package/es/components/file-uploader/file-uploader.d.ts.map +1 -1
  262. package/es/components/file-uploader/file-uploader.js +3 -2
  263. package/es/components/file-uploader/file-uploader.js.map +1 -1
  264. package/es/components/form/form-item.d.ts +1 -1
  265. package/es/components/form/form-item.d.ts.map +1 -1
  266. package/es/components/form/form-item.js +3 -2
  267. package/es/components/form/form-item.js.map +1 -1
  268. package/es/components/inline-loading/inline-loading.d.ts +1 -1
  269. package/es/components/inline-loading/inline-loading.d.ts.map +1 -1
  270. package/es/components/inline-loading/inline-loading.js +3 -2
  271. package/es/components/inline-loading/inline-loading.js.map +1 -1
  272. package/es/components/input/input.d.ts +1 -4
  273. package/es/components/input/input.d.ts.map +1 -1
  274. package/es/components/input/input.js +3 -2
  275. package/es/components/input/input.js.map +1 -1
  276. package/es/components/link/link.d.ts +1 -1
  277. package/es/components/link/link.d.ts.map +1 -1
  278. package/es/components/link/link.js +3 -2
  279. package/es/components/link/link.js.map +1 -1
  280. package/es/components/list/list-item.d.ts +1 -1
  281. package/es/components/list/list-item.d.ts.map +1 -1
  282. package/es/components/list/list-item.js +3 -2
  283. package/es/components/list/list-item.js.map +1 -1
  284. package/es/components/list/ordered-list.d.ts +1 -1
  285. package/es/components/list/ordered-list.d.ts.map +1 -1
  286. package/es/components/list/ordered-list.js +3 -2
  287. package/es/components/list/ordered-list.js.map +1 -1
  288. package/es/components/list/unordered-list.d.ts +1 -1
  289. package/es/components/list/unordered-list.d.ts.map +1 -1
  290. package/es/components/list/unordered-list.js +3 -2
  291. package/es/components/list/unordered-list.js.map +1 -1
  292. package/es/components/loading/loading.d.ts +1 -1
  293. package/es/components/loading/loading.d.ts.map +1 -1
  294. package/es/components/loading/loading.js +3 -2
  295. package/es/components/loading/loading.js.map +1 -1
  296. package/es/components/modal/modal-body.d.ts +1 -1
  297. package/es/components/modal/modal-body.d.ts.map +1 -1
  298. package/es/components/modal/modal-body.js +3 -2
  299. package/es/components/modal/modal-body.js.map +1 -1
  300. package/es/components/modal/modal-close-button.d.ts +1 -1
  301. package/es/components/modal/modal-close-button.d.ts.map +1 -1
  302. package/es/components/modal/modal-close-button.js +3 -2
  303. package/es/components/modal/modal-close-button.js.map +1 -1
  304. package/es/components/modal/modal-footer-button.d.ts +1 -1
  305. package/es/components/modal/modal-footer-button.d.ts.map +1 -1
  306. package/es/components/modal/modal-footer-button.js +2 -2
  307. package/es/components/modal/modal-footer-button.js.map +1 -1
  308. package/es/components/modal/modal-footer.d.ts +1 -1
  309. package/es/components/modal/modal-footer.d.ts.map +1 -1
  310. package/es/components/modal/modal-footer.js +3 -2
  311. package/es/components/modal/modal-footer.js.map +1 -1
  312. package/es/components/modal/modal-header.d.ts +1 -1
  313. package/es/components/modal/modal-header.d.ts.map +1 -1
  314. package/es/components/modal/modal-header.js +3 -2
  315. package/es/components/modal/modal-header.js.map +1 -1
  316. package/es/components/modal/modal-heading.d.ts +1 -1
  317. package/es/components/modal/modal-heading.d.ts.map +1 -1
  318. package/es/components/modal/modal-heading.js +3 -2
  319. package/es/components/modal/modal-heading.js.map +1 -1
  320. package/es/components/modal/modal-label.d.ts +1 -1
  321. package/es/components/modal/modal-label.d.ts.map +1 -1
  322. package/es/components/modal/modal-label.js +3 -2
  323. package/es/components/modal/modal-label.js.map +1 -1
  324. package/es/components/modal/modal.css.js +1 -1
  325. package/es/components/modal/modal.d.ts +1 -1
  326. package/es/components/modal/modal.d.ts.map +1 -1
  327. package/es/components/modal/modal.js +3 -2
  328. package/es/components/modal/modal.js.map +1 -1
  329. package/es/components/modal/modal.rtl.css.js +1 -1
  330. package/es/components/multi-select/multi-select-item.d.ts +1 -1
  331. package/es/components/multi-select/multi-select-item.d.ts.map +1 -1
  332. package/es/components/multi-select/multi-select-item.js +3 -2
  333. package/es/components/multi-select/multi-select-item.js.map +1 -1
  334. package/es/components/multi-select/multi-select.d.ts +1 -1
  335. package/es/components/multi-select/multi-select.d.ts.map +1 -1
  336. package/es/components/multi-select/multi-select.js +3 -2
  337. package/es/components/multi-select/multi-select.js.map +1 -1
  338. package/es/components/notification/inline-notification.d.ts +1 -1
  339. package/es/components/notification/inline-notification.d.ts.map +1 -1
  340. package/es/components/notification/inline-notification.js +4 -3
  341. package/es/components/notification/inline-notification.js.map +1 -1
  342. package/es/components/notification/toast-notification.d.ts +1 -1
  343. package/es/components/notification/toast-notification.d.ts.map +1 -1
  344. package/es/components/notification/toast-notification.js +3 -2
  345. package/es/components/notification/toast-notification.js.map +1 -1
  346. package/es/components/number-input/number-input-skeleton.d.ts +1 -1
  347. package/es/components/number-input/number-input-skeleton.d.ts.map +1 -1
  348. package/es/components/number-input/number-input-skeleton.js +3 -2
  349. package/es/components/number-input/number-input-skeleton.js.map +1 -1
  350. package/es/components/number-input/number-input.d.ts +1 -1
  351. package/es/components/number-input/number-input.d.ts.map +1 -1
  352. package/es/components/number-input/number-input.js +3 -2
  353. package/es/components/number-input/number-input.js.map +1 -1
  354. package/es/components/overflow-menu/overflow-menu-body.d.ts +1 -1
  355. package/es/components/overflow-menu/overflow-menu-body.d.ts.map +1 -1
  356. package/es/components/overflow-menu/overflow-menu-body.js +3 -2
  357. package/es/components/overflow-menu/overflow-menu-body.js.map +1 -1
  358. package/es/components/overflow-menu/overflow-menu-item.d.ts +1 -1
  359. package/es/components/overflow-menu/overflow-menu-item.d.ts.map +1 -1
  360. package/es/components/overflow-menu/overflow-menu-item.js +3 -2
  361. package/es/components/overflow-menu/overflow-menu-item.js.map +1 -1
  362. package/es/components/overflow-menu/overflow-menu.d.ts +4 -1
  363. package/es/components/overflow-menu/overflow-menu.d.ts.map +1 -1
  364. package/es/components/overflow-menu/overflow-menu.js +3 -2
  365. package/es/components/overflow-menu/overflow-menu.js.map +1 -1
  366. package/es/components/pagination/page-sizes-select.d.ts +1 -1
  367. package/es/components/pagination/page-sizes-select.d.ts.map +1 -1
  368. package/es/components/pagination/page-sizes-select.js +3 -2
  369. package/es/components/pagination/page-sizes-select.js.map +1 -1
  370. package/es/components/pagination/pages-select.d.ts +1 -1
  371. package/es/components/pagination/pages-select.d.ts.map +1 -1
  372. package/es/components/pagination/pages-select.js +3 -2
  373. package/es/components/pagination/pages-select.js.map +1 -1
  374. package/es/components/pagination/pagination.d.ts +1 -1
  375. package/es/components/pagination/pagination.d.ts.map +1 -1
  376. package/es/components/pagination/pagination.js +3 -2
  377. package/es/components/pagination/pagination.js.map +1 -1
  378. package/es/components/progress-indicator/progress-indicator-skeleton.d.ts +1 -1
  379. package/es/components/progress-indicator/progress-indicator-skeleton.d.ts.map +1 -1
  380. package/es/components/progress-indicator/progress-indicator-skeleton.js +3 -2
  381. package/es/components/progress-indicator/progress-indicator-skeleton.js.map +1 -1
  382. package/es/components/progress-indicator/progress-indicator.d.ts +1 -1
  383. package/es/components/progress-indicator/progress-indicator.d.ts.map +1 -1
  384. package/es/components/progress-indicator/progress-indicator.js +3 -2
  385. package/es/components/progress-indicator/progress-indicator.js.map +1 -1
  386. package/es/components/progress-indicator/progress-step-skeleton.d.ts +1 -1
  387. package/es/components/progress-indicator/progress-step-skeleton.d.ts.map +1 -1
  388. package/es/components/progress-indicator/progress-step-skeleton.js +3 -2
  389. package/es/components/progress-indicator/progress-step-skeleton.js.map +1 -1
  390. package/es/components/progress-indicator/progress-step.d.ts +1 -1
  391. package/es/components/progress-indicator/progress-step.d.ts.map +1 -1
  392. package/es/components/progress-indicator/progress-step.js +3 -2
  393. package/es/components/progress-indicator/progress-step.js.map +1 -1
  394. package/es/components/radio-button/radio-button-group.d.ts +1 -1
  395. package/es/components/radio-button/radio-button-group.d.ts.map +1 -1
  396. package/es/components/radio-button/radio-button-group.js +3 -2
  397. package/es/components/radio-button/radio-button-group.js.map +1 -1
  398. package/es/components/radio-button/radio-button-skeleton.d.ts +1 -1
  399. package/es/components/radio-button/radio-button-skeleton.d.ts.map +1 -1
  400. package/es/components/radio-button/radio-button-skeleton.js +3 -2
  401. package/es/components/radio-button/radio-button-skeleton.js.map +1 -1
  402. package/es/components/radio-button/radio-button.d.ts +1 -1
  403. package/es/components/radio-button/radio-button.d.ts.map +1 -1
  404. package/es/components/radio-button/radio-button.js +3 -2
  405. package/es/components/radio-button/radio-button.js.map +1 -1
  406. package/es/components/search/search-skeleton.d.ts +1 -1
  407. package/es/components/search/search-skeleton.d.ts.map +1 -1
  408. package/es/components/search/search-skeleton.js +3 -2
  409. package/es/components/search/search-skeleton.js.map +1 -1
  410. package/es/components/search/search.d.ts +1 -1
  411. package/es/components/search/search.d.ts.map +1 -1
  412. package/es/components/search/search.js +3 -2
  413. package/es/components/search/search.js.map +1 -1
  414. package/es/components/select/select-item-group.d.ts +1 -1
  415. package/es/components/select/select-item-group.d.ts.map +1 -1
  416. package/es/components/select/select-item-group.js +3 -2
  417. package/es/components/select/select-item-group.js.map +1 -1
  418. package/es/components/select/select-item.d.ts +1 -1
  419. package/es/components/select/select-item.d.ts.map +1 -1
  420. package/es/components/select/select-item.js +3 -2
  421. package/es/components/select/select-item.js.map +1 -1
  422. package/es/components/select/select.d.ts +6 -2
  423. package/es/components/select/select.d.ts.map +1 -1
  424. package/es/components/select/select.js +3 -2
  425. package/es/components/select/select.js.map +1 -1
  426. package/es/components/skeleton-placeholder/skeleton-placeholder.d.ts +1 -1
  427. package/es/components/skeleton-placeholder/skeleton-placeholder.d.ts.map +1 -1
  428. package/es/components/skeleton-placeholder/skeleton-placeholder.js +3 -2
  429. package/es/components/skeleton-placeholder/skeleton-placeholder.js.map +1 -1
  430. package/es/components/skeleton-text/skeleton-text.d.ts +1 -1
  431. package/es/components/skeleton-text/skeleton-text.d.ts.map +1 -1
  432. package/es/components/skeleton-text/skeleton-text.js +3 -2
  433. package/es/components/skeleton-text/skeleton-text.js.map +1 -1
  434. package/es/components/skip-to-content/skip-to-content.d.ts +1 -1
  435. package/es/components/skip-to-content/skip-to-content.d.ts.map +1 -1
  436. package/es/components/skip-to-content/skip-to-content.js +3 -2
  437. package/es/components/skip-to-content/skip-to-content.js.map +1 -1
  438. package/es/components/slider/slider-input.d.ts +1 -1
  439. package/es/components/slider/slider-input.d.ts.map +1 -1
  440. package/es/components/slider/slider-input.js +3 -2
  441. package/es/components/slider/slider-input.js.map +1 -1
  442. package/es/components/slider/slider-skeleton.d.ts +1 -1
  443. package/es/components/slider/slider-skeleton.d.ts.map +1 -1
  444. package/es/components/slider/slider-skeleton.js +3 -2
  445. package/es/components/slider/slider-skeleton.js.map +1 -1
  446. package/es/components/slider/slider.d.ts +1 -1
  447. package/es/components/slider/slider.d.ts.map +1 -1
  448. package/es/components/slider/slider.js +3 -2
  449. package/es/components/slider/slider.js.map +1 -1
  450. package/es/components/structured-list/structured-list-body.d.ts +1 -1
  451. package/es/components/structured-list/structured-list-body.d.ts.map +1 -1
  452. package/es/components/structured-list/structured-list-body.js +3 -2
  453. package/es/components/structured-list/structured-list-body.js.map +1 -1
  454. package/es/components/structured-list/structured-list-cell.d.ts +1 -1
  455. package/es/components/structured-list/structured-list-cell.d.ts.map +1 -1
  456. package/es/components/structured-list/structured-list-cell.js +3 -2
  457. package/es/components/structured-list/structured-list-cell.js.map +1 -1
  458. package/es/components/structured-list/structured-list-head.d.ts +1 -1
  459. package/es/components/structured-list/structured-list-head.d.ts.map +1 -1
  460. package/es/components/structured-list/structured-list-head.js +3 -2
  461. package/es/components/structured-list/structured-list-head.js.map +1 -1
  462. package/es/components/structured-list/structured-list-header-cell-skeleton.d.ts +1 -1
  463. package/es/components/structured-list/structured-list-header-cell-skeleton.d.ts.map +1 -1
  464. package/es/components/structured-list/structured-list-header-cell-skeleton.js +3 -2
  465. package/es/components/structured-list/structured-list-header-cell-skeleton.js.map +1 -1
  466. package/es/components/structured-list/structured-list-header-cell.d.ts +1 -1
  467. package/es/components/structured-list/structured-list-header-cell.d.ts.map +1 -1
  468. package/es/components/structured-list/structured-list-header-cell.js +3 -2
  469. package/es/components/structured-list/structured-list-header-cell.js.map +1 -1
  470. package/es/components/structured-list/structured-list-header-row.d.ts +1 -1
  471. package/es/components/structured-list/structured-list-header-row.d.ts.map +1 -1
  472. package/es/components/structured-list/structured-list-header-row.js +3 -2
  473. package/es/components/structured-list/structured-list-header-row.js.map +1 -1
  474. package/es/components/structured-list/structured-list-row.d.ts +1 -1
  475. package/es/components/structured-list/structured-list-row.d.ts.map +1 -1
  476. package/es/components/structured-list/structured-list-row.js +3 -2
  477. package/es/components/structured-list/structured-list-row.js.map +1 -1
  478. package/es/components/structured-list/structured-list.d.ts +1 -1
  479. package/es/components/structured-list/structured-list.d.ts.map +1 -1
  480. package/es/components/structured-list/structured-list.js +3 -2
  481. package/es/components/structured-list/structured-list.js.map +1 -1
  482. package/es/components/tabs/tab-skeleton.d.ts +1 -1
  483. package/es/components/tabs/tab-skeleton.d.ts.map +1 -1
  484. package/es/components/tabs/tab-skeleton.js +3 -2
  485. package/es/components/tabs/tab-skeleton.js.map +1 -1
  486. package/es/components/tabs/tab.d.ts +1 -1
  487. package/es/components/tabs/tab.d.ts.map +1 -1
  488. package/es/components/tabs/tab.js +3 -2
  489. package/es/components/tabs/tab.js.map +1 -1
  490. package/es/components/tabs/tabs-skeleton.d.ts +1 -1
  491. package/es/components/tabs/tabs-skeleton.d.ts.map +1 -1
  492. package/es/components/tabs/tabs-skeleton.js +3 -2
  493. package/es/components/tabs/tabs-skeleton.js.map +1 -1
  494. package/es/components/tabs/tabs.d.ts +3 -3
  495. package/es/components/tabs/tabs.d.ts.map +1 -1
  496. package/es/components/tabs/tabs.js +5 -4
  497. package/es/components/tabs/tabs.js.map +1 -1
  498. package/es/components/tag/filter-tag.d.ts +5 -2
  499. package/es/components/tag/filter-tag.d.ts.map +1 -1
  500. package/es/components/tag/filter-tag.js +3 -2
  501. package/es/components/tag/filter-tag.js.map +1 -1
  502. package/es/components/tag/tag.d.ts +1 -1
  503. package/es/components/tag/tag.d.ts.map +1 -1
  504. package/es/components/tag/tag.js +3 -2
  505. package/es/components/tag/tag.js.map +1 -1
  506. package/es/components/textarea/textarea-skeleton.d.ts +1 -1
  507. package/es/components/textarea/textarea-skeleton.d.ts.map +1 -1
  508. package/es/components/textarea/textarea-skeleton.js +3 -2
  509. package/es/components/textarea/textarea-skeleton.js.map +1 -1
  510. package/es/components/textarea/textarea.d.ts +1 -1
  511. package/es/components/textarea/textarea.d.ts.map +1 -1
  512. package/es/components/textarea/textarea.js +3 -2
  513. package/es/components/textarea/textarea.js.map +1 -1
  514. package/es/components/tile/clickable-tile.d.ts +1 -1
  515. package/es/components/tile/clickable-tile.d.ts.map +1 -1
  516. package/es/components/tile/clickable-tile.js +3 -2
  517. package/es/components/tile/clickable-tile.js.map +1 -1
  518. package/es/components/tile/expandable-tile.d.ts +1 -1
  519. package/es/components/tile/expandable-tile.d.ts.map +1 -1
  520. package/es/components/tile/expandable-tile.js +3 -2
  521. package/es/components/tile/expandable-tile.js.map +1 -1
  522. package/es/components/tile/radio-tile.d.ts +1 -1
  523. package/es/components/tile/radio-tile.d.ts.map +1 -1
  524. package/es/components/tile/radio-tile.js +2 -2
  525. package/es/components/tile/radio-tile.js.map +1 -1
  526. package/es/components/tile/selectable-tile.d.ts.map +1 -1
  527. package/es/components/tile/selectable-tile.js +2 -1
  528. package/es/components/tile/selectable-tile.js.map +1 -1
  529. package/es/components/tile/tile-group.d.ts +1 -1
  530. package/es/components/tile/tile-group.d.ts.map +1 -1
  531. package/es/components/tile/tile-group.js +3 -2
  532. package/es/components/tile/tile-group.js.map +1 -1
  533. package/es/components/tile/tile.d.ts +1 -1
  534. package/es/components/tile/tile.d.ts.map +1 -1
  535. package/es/components/tile/tile.js +3 -2
  536. package/es/components/tile/tile.js.map +1 -1
  537. package/es/components/toggle/toggle.d.ts +1 -1
  538. package/es/components/toggle/toggle.d.ts.map +1 -1
  539. package/es/components/toggle/toggle.js +3 -2
  540. package/es/components/toggle/toggle.js.map +1 -1
  541. package/es/components/tooltip/tooltip-body.d.ts.map +1 -1
  542. package/es/components/tooltip/tooltip-body.js +2 -1
  543. package/es/components/tooltip/tooltip-body.js.map +1 -1
  544. package/es/components/tooltip/tooltip-definition.d.ts +1 -1
  545. package/es/components/tooltip/tooltip-definition.d.ts.map +1 -1
  546. package/es/components/tooltip/tooltip-definition.js +3 -2
  547. package/es/components/tooltip/tooltip-definition.js.map +1 -1
  548. package/es/components/tooltip/tooltip-footer.d.ts +1 -1
  549. package/es/components/tooltip/tooltip-footer.d.ts.map +1 -1
  550. package/es/components/tooltip/tooltip-footer.js +3 -2
  551. package/es/components/tooltip/tooltip-footer.js.map +1 -1
  552. package/es/components/tooltip/tooltip-icon.d.ts +1 -1
  553. package/es/components/tooltip/tooltip-icon.d.ts.map +1 -1
  554. package/es/components/tooltip/tooltip-icon.js +3 -2
  555. package/es/components/tooltip/tooltip-icon.js.map +1 -1
  556. package/es/components/tooltip/tooltip.d.ts.map +1 -1
  557. package/es/components/tooltip/tooltip.js +2 -1
  558. package/es/components/tooltip/tooltip.js.map +1 -1
  559. package/es/components/ui-shell/header-menu-button.d.ts +1 -1
  560. package/es/components/ui-shell/header-menu-button.d.ts.map +1 -1
  561. package/es/components/ui-shell/header-menu-button.js +3 -2
  562. package/es/components/ui-shell/header-menu-button.js.map +1 -1
  563. package/es/components/ui-shell/header-menu-item.d.ts +1 -1
  564. package/es/components/ui-shell/header-menu-item.d.ts.map +1 -1
  565. package/es/components/ui-shell/header-menu-item.js +2 -2
  566. package/es/components/ui-shell/header-menu-item.js.map +1 -1
  567. package/es/components/ui-shell/header-menu.d.ts +1 -1
  568. package/es/components/ui-shell/header-menu.d.ts.map +1 -1
  569. package/es/components/ui-shell/header-menu.js +3 -2
  570. package/es/components/ui-shell/header-menu.js.map +1 -1
  571. package/es/components/ui-shell/header-name.d.ts +1 -1
  572. package/es/components/ui-shell/header-name.d.ts.map +1 -1
  573. package/es/components/ui-shell/header-name.js +3 -2
  574. package/es/components/ui-shell/header-name.js.map +1 -1
  575. package/es/components/ui-shell/header-nav-item.d.ts +1 -1
  576. package/es/components/ui-shell/header-nav-item.d.ts.map +1 -1
  577. package/es/components/ui-shell/header-nav-item.js +3 -2
  578. package/es/components/ui-shell/header-nav-item.js.map +1 -1
  579. package/es/components/ui-shell/header-nav.d.ts +1 -1
  580. package/es/components/ui-shell/header-nav.d.ts.map +1 -1
  581. package/es/components/ui-shell/header-nav.js +3 -2
  582. package/es/components/ui-shell/header-nav.js.map +1 -1
  583. package/es/components/ui-shell/header.d.ts +1 -1
  584. package/es/components/ui-shell/header.d.ts.map +1 -1
  585. package/es/components/ui-shell/header.js +3 -2
  586. package/es/components/ui-shell/header.js.map +1 -1
  587. package/es/components/ui-shell/side-nav-divider.d.ts +1 -1
  588. package/es/components/ui-shell/side-nav-divider.d.ts.map +1 -1
  589. package/es/components/ui-shell/side-nav-divider.js +3 -2
  590. package/es/components/ui-shell/side-nav-divider.js.map +1 -1
  591. package/es/components/ui-shell/side-nav-items.d.ts +1 -1
  592. package/es/components/ui-shell/side-nav-items.d.ts.map +1 -1
  593. package/es/components/ui-shell/side-nav-items.js +3 -2
  594. package/es/components/ui-shell/side-nav-items.js.map +1 -1
  595. package/es/components/ui-shell/side-nav-link.d.ts +1 -1
  596. package/es/components/ui-shell/side-nav-link.d.ts.map +1 -1
  597. package/es/components/ui-shell/side-nav-link.js +3 -2
  598. package/es/components/ui-shell/side-nav-link.js.map +1 -1
  599. package/es/components/ui-shell/side-nav-menu-item.d.ts +1 -1
  600. package/es/components/ui-shell/side-nav-menu-item.d.ts.map +1 -1
  601. package/es/components/ui-shell/side-nav-menu-item.js +3 -2
  602. package/es/components/ui-shell/side-nav-menu-item.js.map +1 -1
  603. package/es/components/ui-shell/side-nav-menu.d.ts +1 -1
  604. package/es/components/ui-shell/side-nav-menu.d.ts.map +1 -1
  605. package/es/components/ui-shell/side-nav-menu.js +3 -2
  606. package/es/components/ui-shell/side-nav-menu.js.map +1 -1
  607. package/es/components/ui-shell/side-nav.d.ts +1 -1
  608. package/es/components/ui-shell/side-nav.d.ts.map +1 -1
  609. package/es/components/ui-shell/side-nav.js +3 -2
  610. package/es/components/ui-shell/side-nav.js.map +1 -1
  611. package/es/globals/decorators/carbon-element.d.ts +235 -0
  612. package/es/globals/decorators/carbon-element.d.ts.map +1 -0
  613. package/es/globals/decorators/carbon-element.js +429 -0
  614. package/es/globals/decorators/carbon-element.js.map +1 -0
  615. package/package.json +5 -5
  616. package/scss/components/modal/modal.scss +9 -0
  617. package/dist/checkbox-0edcc860.js +0 -65
  618. package/dist/checkbox-155d2e12.js +0 -65
  619. package/dist/copy-button-d50482da.js +0 -65
  620. package/dist/copy-button-e0c0c272.js +0 -65
  621. package/dist/link-5cef0608.js +0 -65
  622. package/dist/link-c666ff67.js +0 -65
  623. package/dist/loading-3754cb83.js +0 -65
  624. package/dist/loading-a86f38a0.js +0 -65
  625. package/dist/search-11f3a241.js +0 -65
  626. package/dist/search-487b4714.js +0 -65
@@ -1 +1 @@
1
- {"version":3,"file":"tab.js","names":["html","property","customElement","settings","BXContentSwitcherItem","TABS_TYPE","styles","prefix","BXTab","_decorate","_initialize","_BXContentSwitcherIte","constructor","args","F","d","kind","decorators","type","Boolean","reflect","key","value","REGULAR","connectedCallback","hasAttribute","setAttribute","_get","_getPrototypeOf","prototype","call","render","disabled","selected","_t","_","static"],"sources":["components/tabs/tab.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2022\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, property, customElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport BXContentSwitcherItem from '../content-switcher/content-switcher-item';\nimport { TABS_TYPE } from './tabs';\nimport styles from './tabs.scss';\n\nconst { prefix } = settings;\n\n/**\n * Basic tab.\n *\n * @element bx-tab\n */\n@customElement(`${prefix}-tab`)\nclass BXTab extends BXContentSwitcherItem {\n /**\n * `true` if this tab should be highlighted.\n * If `true`, parent `<bx-tabs>` selects/deselects this tab upon keyboard interaction.\n *\n * @private\n */\n @property({ type: Boolean, reflect: true })\n highlighted = false;\n\n /**\n * Tab type.\n */\n @property({ reflect: true })\n type = TABS_TYPE.REGULAR;\n\n connectedCallback() {\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'listitem');\n }\n super.connectedCallback();\n }\n\n render() {\n const { disabled, selected } = this;\n // No `href`/`tabindex` to not to make this `<a>` click-focusable\n return html`\n <a\n class=\"${prefix}--tabs__nav-link\"\n role=\"tab\"\n tabindex=\"${disabled ? -1 : 0}\"\n ?disabled=\"${disabled}\"\n aria-selected=\"${Boolean(selected)}\">\n <slot></slot>\n </a>\n `;\n }\n\n static styles = styles;\n}\n\nexport default BXTab;\n"],"mappings":";;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,IAAI,EAAEC,QAAQ,EAAEC,aAAa,QAAQ,aAAa;AAC3D,OAAOC,QAAQ,MAAM,0CAA0C;AAC/D,OAAOC,qBAAqB,MAAM,2CAA2C;AAC7E,SAASC,SAAS,QAAQ,QAAQ;AAClC,OAAOC,MAAM,MAAM,iBAAa;AAEhC,MAAM;EAAEC;AAAO,CAAC,GAAGJ,QAAQ;;AAE3B;AACA;AACA;AACA;AACA;AAJA,IAMMK,KAAK,GAAAC,SAAA,EADVP,aAAa,CAAE,GAAEK,MAAO,MAAK,CAAC,aAAAG,WAAA,EAAAC,qBAAA;EAA/B,MACMH,KAAK,SAAAG,qBAAA,CAA+B;IAAAC,YAAA,GAAAC,IAAA;MAAA,SAAAA,IAAA;MAAAH,WAAA;IAAA;EAuC1C;EAAC;IAAAI,CAAA,EAvCKN,KAAK;IAAAO,CAAA;MAAAC,IAAA;MAAAC,UAAA,GAORhB,QAAQ,CAAC;QAAEiB,IAAI,EAAEC,OAAO;QAAEC,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAC,GAAA;MAAAC,MAAA;QAAA,OAC7B,KAAK;MAAA;IAAA;MAAAN,IAAA;MAAAC,UAAA,GAKlBhB,QAAQ,CAAC;QAAEmB,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAC,GAAA;MAAAC,MAAA;QAAA,OACrBjB,SAAS,CAACkB,OAAO;MAAA;IAAA;MAAAP,IAAA;MAAAK,GAAA;MAAAC,KAAA;MAbxB;AACF;AACA;AACA;AACA;AACA;;MAIE;AACF;AACA;;MAIE,SAAAE,kBAAA,EAAoB;QAClB,IAAI,CAAC,IAAI,CAACC,YAAY,CAAC,MAAM,CAAC,EAAE;UAC9B,IAAI,CAACC,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC;QACvC;QACAC,IAAA,CAAAC,eAAA,CApBEpB,KAAK,CAAAqB,SAAA,8BAAAC,IAAA;MAqBT;IAAC;MAAAd,IAAA;MAAAK,GAAA;MAAAC,KAAA,EAED,SAAAS,OAAA,EAAS;QACP,MAAM;UAAEC,QAAQ;UAAEC;QAAS,CAAC,GAAG,IAAI;QACnC;QACA,OAAOjC,IAAI,CAAAkC,EAAA,KAAAA,EAAA,GAAAC,CAAA,2HAEE5B,MAAM,EAEHyB,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,EAChBA,QAAQ,EACJb,OAAO,CAACc,QAAQ,CAAC;MAIxC;IAAC;MAAAjB,IAAA;MAAAoB,MAAA;MAAAf,GAAA;MAAAC,MAAA;QAAA,OAEehB,MAAM;MAAA;IAAA;EAAA;AAAA,GAtCJF,qBAAqB;AAyCzC,eAAeI,KAAK"}
1
+ {"version":3,"file":"tab.js","names":["html","property","settings","BXContentSwitcherItem","TABS_TYPE","styles","carbonElement","customElement","prefix","BXTab","_decorate","_initialize","_BXContentSwitcherIte","constructor","args","F","d","kind","decorators","type","Boolean","reflect","key","value","REGULAR","connectedCallback","hasAttribute","setAttribute","_get","_getPrototypeOf","prototype","call","render","disabled","selected","_t","_","static"],"sources":["components/tabs/tab.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, property } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport BXContentSwitcherItem from '../content-switcher/content-switcher-item';\nimport { TABS_TYPE } from './tabs';\nimport styles from './tabs.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nconst { prefix } = settings;\n\n/**\n * Basic tab.\n *\n * @element bx-tab\n */\n@customElement(`${prefix}-tab`)\nclass BXTab extends BXContentSwitcherItem {\n /**\n * `true` if this tab should be highlighted.\n * If `true`, parent `<bx-tabs>` selects/deselects this tab upon keyboard interaction.\n *\n * @private\n */\n @property({ type: Boolean, reflect: true })\n highlighted = false;\n\n /**\n * Tab type.\n */\n @property({ reflect: true })\n type = TABS_TYPE.REGULAR;\n\n connectedCallback() {\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'listitem');\n }\n super.connectedCallback();\n }\n\n render() {\n const { disabled, selected } = this;\n // No `href`/`tabindex` to not to make this `<a>` click-focusable\n return html`\n <a\n class=\"${prefix}--tabs__nav-link\"\n role=\"tab\"\n tabindex=\"${disabled ? -1 : 0}\"\n ?disabled=\"${disabled}\"\n aria-selected=\"${Boolean(selected)}\">\n <slot></slot>\n </a>\n `;\n }\n\n static styles = styles;\n}\n\nexport default BXTab;\n"],"mappings":";;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,IAAI,EAAEC,QAAQ,QAAQ,aAAa;AAC5C,OAAOC,QAAQ,MAAM,0CAA0C;AAC/D,OAAOC,qBAAqB,MAAM,2CAA2C;AAC7E,SAASC,SAAS,QAAQ,QAAQ;AAClC,OAAOC,MAAM,MAAM,iBAAa;AAChC,SAASC,aAAa,IAAIC,aAAa,QAAQ,yCAAyC;AAExF,MAAM;EAAEC;AAAO,CAAC,GAAGN,QAAQ;;AAE3B;AACA;AACA;AACA;AACA;AAJA,IAMMO,KAAK,GAAAC,SAAA,EADVH,aAAa,CAAE,GAAEC,MAAO,MAAK,CAAC,aAAAG,WAAA,EAAAC,qBAAA;EAA/B,MACMH,KAAK,SAAAG,qBAAA,CAA+B;IAAAC,YAAA,GAAAC,IAAA;MAAA,SAAAA,IAAA;MAAAH,WAAA;IAAA;EAuC1C;EAAC;IAAAI,CAAA,EAvCKN,KAAK;IAAAO,CAAA;MAAAC,IAAA;MAAAC,UAAA,GAORjB,QAAQ,CAAC;QAAEkB,IAAI,EAAEC,OAAO;QAAEC,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAC,GAAA;MAAAC,MAAA;QAAA,OAC7B,KAAK;MAAA;IAAA;MAAAN,IAAA;MAAAC,UAAA,GAKlBjB,QAAQ,CAAC;QAAEoB,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAC,GAAA;MAAAC,MAAA;QAAA,OACrBnB,SAAS,CAACoB,OAAO;MAAA;IAAA;MAAAP,IAAA;MAAAK,GAAA;MAAAC,KAAA;MAbxB;AACF;AACA;AACA;AACA;AACA;;MAIE;AACF;AACA;;MAIE,SAAAE,kBAAA,EAAoB;QAClB,IAAI,CAAC,IAAI,CAACC,YAAY,CAAC,MAAM,CAAC,EAAE;UAC9B,IAAI,CAACC,YAAY,CAAC,MAAM,EAAE,UAAU,CAAC;QACvC;QACAC,IAAA,CAAAC,eAAA,CApBEpB,KAAK,CAAAqB,SAAA,8BAAAC,IAAA;MAqBT;IAAC;MAAAd,IAAA;MAAAK,GAAA;MAAAC,KAAA,EAED,SAAAS,OAAA,EAAS;QACP,MAAM;UAAEC,QAAQ;UAAEC;QAAS,CAAC,GAAG,IAAI;QACnC;QACA,OAAOlC,IAAI,CAAAmC,EAAA,KAAAA,EAAA,GAAAC,CAAA,2HAEE5B,MAAM,EAEHyB,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,EAChBA,QAAQ,EACJb,OAAO,CAACc,QAAQ,CAAC;MAIxC;IAAC;MAAAjB,IAAA;MAAAoB,MAAA;MAAAf,GAAA;MAAAC,MAAA;QAAA,OAEelB,MAAM;MAAA;IAAA;EAAA;AAAA,GAtCJF,qBAAqB;AAyCzC,eAAeM,KAAK"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *
4
- * Copyright IBM Corp. 2019
4
+ * Copyright IBM Corp. 2019, 2023
5
5
  *
6
6
  * This source code is licensed under the Apache-2.0 license found in the
7
7
  * LICENSE file in the root directory of this source tree.
@@ -1 +1 @@
1
- {"version":3,"sources":["components/tabs/tabs-skeleton.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAuB,UAAU,EAAE,MAAM,aAAa,CAAC;AAM9D;;GAEG;AACH,cACM,cAAe,SAAQ,UAAU;IACrC,MAAM;IAWN,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,cAAc,CAAC","file":"tabs-skeleton.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019\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, customElement, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport styles from './tabs.scss';\n\nconst { prefix } = settings;\n\n/**\n * Skeleton of tabs.\n */\n@customElement(`${prefix}-tabs-skeleton`)\nclass BXTabsSkeleton extends LitElement {\n render() {\n return html`\n <div class=\"${prefix}--tabs-trigger\">\n <span class=\"${prefix}--tabs-trigger-text\"></span>\n </div>\n <ul class=\"${prefix}--tabs__nav\">\n <slot></slot>\n </ul>\n `;\n }\n\n static styles = styles;\n}\n\nexport default BXTabsSkeleton;\n"]}
1
+ {"version":3,"sources":["components/tabs/tabs-skeleton.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,UAAU,EAAE,MAAM,aAAa,CAAC;AAO/C;;GAEG;AACH,cACM,cAAe,SAAQ,UAAU;IACrC,MAAM;IAWN,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,cAAc,CAAC","file":"tabs-skeleton.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport styles from './tabs.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nconst { prefix } = settings;\n\n/**\n * Skeleton of tabs.\n */\n@customElement(`${prefix}-tabs-skeleton`)\nclass BXTabsSkeleton extends LitElement {\n render() {\n return html`\n <div class=\"${prefix}--tabs-trigger\">\n <span class=\"${prefix}--tabs-trigger-text\"></span>\n </div>\n <ul class=\"${prefix}--tabs__nav\">\n <slot></slot>\n </ul>\n `;\n }\n\n static styles = styles;\n}\n\nexport default BXTabsSkeleton;\n"]}
@@ -4,15 +4,16 @@ let _ = t => t,
4
4
  /**
5
5
  * @license
6
6
  *
7
- * Copyright IBM Corp. 2019
7
+ * Copyright IBM Corp. 2019, 2023
8
8
  *
9
9
  * This source code is licensed under the Apache-2.0 license found in the
10
10
  * LICENSE file in the root directory of this source tree.
11
11
  */
12
12
 
13
- import { html, customElement, LitElement } from 'lit-element';
13
+ import { html, LitElement } from 'lit-element';
14
14
  import settings from 'carbon-components/es/globals/js/settings';
15
15
  import styles from "././tabs.css.js";
16
+ import { carbonElement as customElement } from '../../globals/decorators/carbon-element';
16
17
  const {
17
18
  prefix
18
19
  } = settings;
@@ -1 +1 @@
1
- {"version":3,"file":"tabs-skeleton.js","names":["html","customElement","LitElement","settings","styles","prefix","BXTabsSkeleton","_decorate","_initialize","_LitElement","constructor","args","F","d","kind","key","value","render","_t","_","static"],"sources":["components/tabs/tabs-skeleton.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019\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, customElement, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport styles from './tabs.scss';\n\nconst { prefix } = settings;\n\n/**\n * Skeleton of tabs.\n */\n@customElement(`${prefix}-tabs-skeleton`)\nclass BXTabsSkeleton extends LitElement {\n render() {\n return html`\n <div class=\"${prefix}--tabs-trigger\">\n <span class=\"${prefix}--tabs-trigger-text\"></span>\n </div>\n <ul class=\"${prefix}--tabs__nav\">\n <slot></slot>\n </ul>\n `;\n }\n\n static styles = styles;\n}\n\nexport default BXTabsSkeleton;\n"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,IAAI,EAAEC,aAAa,EAAEC,UAAU,QAAQ,aAAa;AAC7D,OAAOC,QAAQ,MAAM,0CAA0C;AAC/D,OAAOC,MAAM,MAAM,iBAAa;AAEhC,MAAM;EAAEC;AAAO,CAAC,GAAGF,QAAQ;;AAE3B;AACA;AACA;AAFA,IAIMG,cAAc,GAAAC,SAAA,EADnBN,aAAa,CAAE,GAAEI,MAAO,gBAAe,CAAC,aAAAG,WAAA,EAAAC,WAAA;EAAzC,MACMH,cAAc,SAAAG,WAAA,CAAoB;IAAAC,YAAA,GAAAC,IAAA;MAAA,SAAAA,IAAA;MAAAH,WAAA;IAAA;EAaxC;EAAC;IAAAI,CAAA,EAbKN,cAAc;IAAAO,CAAA;MAAAC,IAAA;MAAAC,GAAA;MAAAC,KAAA,EAClB,SAAAC,OAAA,EAAS;QACP,OAAOjB,IAAI,CAAAkB,EAAA,KAAAA,EAAA,GAAAC,CAAA,6IACKd,MAAM,EACHA,MAAM,EAEVA,MAAM;MAIvB;IAAC;MAAAS,IAAA;MAAAM,MAAA;MAAAL,GAAA;MAAAC,MAAA;QAAA,OAEeZ,MAAM;MAAA;IAAA;EAAA;AAAA,GAZKF,UAAU;AAevC,eAAeI,cAAc"}
1
+ {"version":3,"file":"tabs-skeleton.js","names":["html","LitElement","settings","styles","carbonElement","customElement","prefix","BXTabsSkeleton","_decorate","_initialize","_LitElement","constructor","args","F","d","kind","key","value","render","_t","_","static"],"sources":["components/tabs/tabs-skeleton.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport styles from './tabs.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nconst { prefix } = settings;\n\n/**\n * Skeleton of tabs.\n */\n@customElement(`${prefix}-tabs-skeleton`)\nclass BXTabsSkeleton extends LitElement {\n render() {\n return html`\n <div class=\"${prefix}--tabs-trigger\">\n <span class=\"${prefix}--tabs-trigger-text\"></span>\n </div>\n <ul class=\"${prefix}--tabs__nav\">\n <slot></slot>\n </ul>\n `;\n }\n\n static styles = styles;\n}\n\nexport default BXTabsSkeleton;\n"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,IAAI,EAAEC,UAAU,QAAQ,aAAa;AAC9C,OAAOC,QAAQ,MAAM,0CAA0C;AAC/D,OAAOC,MAAM,MAAM,iBAAa;AAChC,SAASC,aAAa,IAAIC,aAAa,QAAQ,yCAAyC;AAExF,MAAM;EAAEC;AAAO,CAAC,GAAGJ,QAAQ;;AAE3B;AACA;AACA;AAFA,IAIMK,cAAc,GAAAC,SAAA,EADnBH,aAAa,CAAE,GAAEC,MAAO,gBAAe,CAAC,aAAAG,WAAA,EAAAC,WAAA;EAAzC,MACMH,cAAc,SAAAG,WAAA,CAAoB;IAAAC,YAAA,GAAAC,IAAA;MAAA,SAAAA,IAAA;MAAAH,WAAA;IAAA;EAaxC;EAAC;IAAAI,CAAA,EAbKN,cAAc;IAAAO,CAAA;MAAAC,IAAA;MAAAC,GAAA;MAAAC,KAAA,EAClB,SAAAC,OAAA,EAAS;QACP,OAAOlB,IAAI,CAAAmB,EAAA,KAAAA,EAAA,GAAAC,CAAA,6IACKd,MAAM,EACHA,MAAM,EAEVA,MAAM;MAIvB;IAAC;MAAAS,IAAA;MAAAM,MAAA;MAAAL,GAAA;MAAAC,MAAA;QAAA,OAEed,MAAM;MAAA;IAAA;EAAA;AAAA,GAZKF,UAAU;AAevC,eAAeM,cAAc"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *
4
- * Copyright IBM Corp. 2019, 2022
4
+ * Copyright IBM Corp. 2019, 2023
5
5
  *
6
6
  * This source code is licensed under the Apache-2.0 license found in the
7
7
  * LICENSE file in the root directory of this source tree.
@@ -384,8 +384,8 @@ declare class BXTabs extends BXTabs_base {
384
384
  * @param [options.immediate]
385
385
  * `true` to make it "immediate selection change" mode, which does:
386
386
  *
387
- * * Starts with the selected item
388
- * * Going prev/next item immediately changes the selection
387
+ * Starts with the selected item
388
+ * Going prev/next item immediately changes the selection
389
389
  */
390
390
  protected _navigate(direction: number, { immediate }?: {
391
391
  immediate?: boolean;
@@ -1 +1 @@
1
- {"version":3,"sources":["components/tabs/tabs.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AASH,OAAO,iBAAiB,EAAE,EACxB,oBAAoB,EACrB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,2BAA2B,EAC3B,iBAAiB,EACjB,oBAAoB,EACpB,SAAS,EACV,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,iBAAiB,EACjB,oBAAoB,EACpB,SAAS,GACV,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF;;;;;;;;GAQG;AACH,cACM,MAAO,SAAQ,WAAoC;IACvD;;OAEG;IACH,OAAO,CAAC,oBAAoB,CAAC,CAAS;IAEtC;;OAEG;IACH,OAAO,CAAC,KAAK,CAAS;IAEtB;;OAEG;IACH,OAAO,CAAC,aAAa,CAAa;IAElC;;OAEG;IACH,OAAO,CAAC,oBAAoB,CAAiC;IAE7D;;OAEG;IACH,OAAO,CAAC,UAAU,CAAa;IAE/B;;OAEG;IAEH,OAAO,CAAC,YAAY,CAAkB;IAEtC;;;;OAIG;IAGH,OAAO,CAAC,eAAe;IAMvB;;;;OAIG;IACH,OAAO,CAAC,0BAA0B;IAwBlC;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;;;;;;;;;OAUG;IACH,SAAS,CAAC,SAAS,CACjB,SAAS,EAAE,MAAM,EACjB,EAAE,SAAS,EAAE,GAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAO;IAqC7C,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU;IAexC,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,aAAa;IA0E7C,SAAS,CAAC,mBAAmB,CAAC,YAAY,EAAE,KAAK;IAMjD;;OAEG;IAEH,WAAW,oBAA6B;IAExC;;OAEG;IAEH,2BAA2B,SACkC;IAE7D;;OAEG;IAEH,yBAAyB,SAAuB;IAEhD;;OAEG;IAEH,cAAc,SAAM;IAEpB;;OAEG;IAEH,IAAI,YAAqB;IAEzB,YAAY,CAAC,iBAAiB,KAAA;IAyB9B,MAAM;IA2CN;;OAEG;IACH,MAAM,CAAC,YAAY,cAA2B;IAE9C;;OAEG;IACH,MAAM,KAAK,YAAY,WAEtB;IAED;;OAEG;IACH,MAAM,KAAK,mBAAmB,WAE7B;IAED;;OAEG;IACH,MAAM,KAAK,uBAAuB,WAEjC;IAED;;OAEG;IACH,MAAM,KAAK,oBAAoB,WAE9B;IAED;;;OAGG;IACH,MAAM,KAAK,iBAAiB,WAE3B;IAED;;OAEG;IACH,MAAM,KAAK,WAAW,WAErB;IAED,MAAM,CAAC,MAAM,MAAU;IAEvB;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE;CAuBvE;AAED,eAAe,MAAM,CAAC","file":"tabs.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit-html/directives/class-map';\nimport { html, property, query, customElement } from 'lit-element';\nimport ChevronDown16 from '@carbon/icons/lib/chevron--down/16';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport HostListener from '../../globals/decorators/host-listener';\nimport { find, forEach } from '../../globals/internal/collection-helpers';\nimport BXContentSwitcher, {\n NAVIGATION_DIRECTION,\n} from '../content-switcher/content-switcher';\nimport {\n NAVIGATION_DIRECTION_NARROW,\n TABS_COLOR_SCHEME,\n TABS_KEYBOARD_ACTION,\n TABS_TYPE,\n} from './defs';\nimport BXTab from './tab';\nimport styles from './tabs.scss';\n\nconst { prefix } = settings;\n\nexport {\n NAVIGATION_DIRECTION,\n NAVIGATION_DIRECTION_NARROW,\n TABS_COLOR_SCHEME,\n TABS_KEYBOARD_ACTION,\n TABS_TYPE,\n};\n\n/**\n * Tabs.\n *\n * @element bx-tabs\n * @fires bx-tabs-beingselected\n * The custom event fired before a tab is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n * @fires bx-tabs-selected - The custom event fired after a a tab is selected upon a user gesture.\n */\n@customElement(`${prefix}-tabs`)\nclass BXTabs extends HostListenerMixin(BXContentSwitcher) {\n /**\n * The latest status of this dropdown, for screen reader to accounce.\n */\n private _assistiveStatusText?: string;\n\n /**\n * `true` if the narrow mode dropdown should be open.\n */\n private _open = false;\n\n /**\n * The currently selected index\n */\n private _currentIndex: number = 0;\n\n /**\n * The content of the selected item, used in the narrow mode.\n */\n private _selectedItemContent: DocumentFragment | null = null;\n\n /**\n * Total number of tabs in the component\n */\n private _totalTabs: number = 0;\n\n /**\n * The DOM element for the trigger button in narrow mode.\n */\n @query('#trigger')\n private _triggerNode!: HTMLDivElement;\n\n /**\n * Handles `blur` event handler on this element.\n *\n * @param event The event.\n */\n @HostListener('focusout')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleFocusOut({ relatedTarget }: FocusEvent) {\n if (!this.contains(relatedTarget as Node)) {\n this._handleUserInitiatedToggle(false);\n }\n }\n\n /**\n * Handles user-initiated toggling the open state.\n *\n * @param [force] If specified, forces the open state to the given one.\n */\n private _handleUserInitiatedToggle(force: boolean = !this._open) {\n this._open = force;\n if (this._open) {\n this._assistiveStatusText = this.selectingItemsAssistiveText;\n } else {\n const {\n selectedItemAssistiveText,\n triggerContent,\n _assistiveStatusText: assistiveStatusText,\n _selectedItemContent: selectedItemContent,\n } = this;\n const selectedItemText =\n (selectedItemContent && selectedItemContent.textContent) ||\n triggerContent;\n if (\n selectedItemText &&\n assistiveStatusText !== selectedItemAssistiveText\n ) {\n this._assistiveStatusText = selectedItemText;\n }\n }\n this.requestUpdate();\n }\n\n /**\n * Clears the selection of tabs.\n */\n private _clearHighlight() {\n forEach(\n this.querySelectorAll((this.constructor as typeof BXTabs).selectorItem),\n (item) => {\n (item as BXTab).highlighted = false;\n }\n );\n }\n\n /**\n * Navigates through tabs.\n *\n * @param direction `-1` to navigate backward, `1` to navigate forward.\n * @param [options] The options.\n * @param [options.immediate]\n * `true` to make it \"immediate selection change\" mode, which does:\n *\n * * Starts with the selected item\n * * Going prev/next item immediately changes the selection\n */\n protected _navigate(\n direction: number,\n { immediate }: { immediate?: boolean } = {}\n ) {\n const { selectorItem, selectorItemHighlighted, selectorItemSelected } = this\n .constructor as typeof BXTabs;\n const nextItem = this._getNextItem(\n this.querySelector(\n immediate ? selectorItemSelected : selectorItemHighlighted\n ) as BXTab,\n direction\n );\n if (!nextItem) {\n return;\n }\n\n if (immediate) {\n this._handleUserInitiatedSelectItem(nextItem as BXTab);\n } else {\n forEach(this.querySelectorAll(selectorItem), (item) => {\n (item as BXTab)[immediate ? 'selected' : 'highlighted'] =\n nextItem === item;\n });\n }\n\n // Using `{ block: 'nearest' }` to prevent scrolling unless scrolling is absolutely necessary.\n // `scrollIntoViewOptions` seems to work in latest Safari despite of MDN/caniuse table.\n // IE falls back to the old behavior.\n nextItem.scrollIntoView({ block: 'nearest' });\n\n const nextItemText = nextItem.textContent;\n if (nextItemText) {\n this._assistiveStatusText = nextItemText;\n }\n this._currentIndex += direction;\n this.requestUpdate();\n }\n\n @HostListener('click')\n protected _handleClick(event: MouseEvent) {\n const { target } = event;\n if (this === target) {\n this._handleUserInitiatedToggle();\n } else if ((target as BXTab).value === this.value) {\n // Clicking on selected item, simply closes the narrow mode dropdown\n this._handleUserInitiatedToggle(false);\n } else {\n // Trying to select the item\n // If the custom event of the selection is canceled, we don't close the narrow mode dropdown\n super._handleClick(event);\n }\n }\n\n @HostListener('keydown')\n protected _handleKeydown(event: KeyboardEvent) {\n const { _open: open, _triggerNode: triggerNode } = this;\n const { key, target } = event;\n const narrowMode = Boolean(triggerNode.offsetParent);\n const action = (this.constructor as typeof BXTabs).getAction(key, {\n narrowMode,\n });\n if (!open && narrowMode) {\n // Menu closed in narrow mode\n switch (action) {\n case TABS_KEYBOARD_ACTION.NAVIGATING:\n this._handleUserInitiatedToggle(true);\n // If this menu gets open with an arrow key, resets the highlight\n this._clearHighlight();\n break;\n case TABS_KEYBOARD_ACTION.TRIGGERING:\n this._handleUserInitiatedToggle(true);\n break;\n default:\n break;\n }\n } else {\n switch (action) {\n case TABS_KEYBOARD_ACTION.CLOSING:\n this._handleUserInitiatedToggle(false);\n break;\n case TABS_KEYBOARD_ACTION.SELECTING:\n this._handleUserInitiatedSelectItem(target as BXTab);\n break;\n case TABS_KEYBOARD_ACTION.HOME:\n this._navigate(this._currentIndex + this._totalTabs, {\n immediate: !narrowMode,\n });\n break;\n case TABS_KEYBOARD_ACTION.END:\n this._navigate(-this._currentIndex, { immediate: !narrowMode });\n break;\n case TABS_KEYBOARD_ACTION.NAVIGATING:\n {\n const direction = narrowMode\n ? NAVIGATION_DIRECTION_NARROW[key]\n : NAVIGATION_DIRECTION[key];\n if (direction) {\n this._navigate(direction, { immediate: !narrowMode });\n }\n }\n break;\n case TABS_KEYBOARD_ACTION.TRIGGERING:\n {\n const { selectorItemHighlighted } = this\n .constructor as typeof BXTabs;\n const highlightedItem = this.querySelector(\n selectorItemHighlighted\n ) as BXTab;\n if (highlightedItem) {\n if (highlightedItem.value === this.value) {\n // Selecting an already-selected item, simply closes the narrow mode dropdown\n this._handleUserInitiatedToggle(false);\n } else {\n // Trying to select the item\n // If the custom event of the selection is canceled, we don't close the narrow mode dropdown\n this._handleUserInitiatedSelectItem(highlightedItem);\n }\n } else {\n this._handleUserInitiatedToggle();\n }\n }\n break;\n default:\n break;\n }\n }\n }\n\n protected _selectionDidChange(itemToSelect: BXTab) {\n super._selectionDidChange(itemToSelect);\n this._assistiveStatusText = this.selectedItemAssistiveText;\n this._handleUserInitiatedToggle(false);\n }\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TABS_COLOR_SCHEME.REGULAR;\n\n /**\n * An assistive text for screen reader to announce, telling the open state.\n */\n @property({ attribute: 'selecting-items-assistive-text' })\n selectingItemsAssistiveText =\n 'Selecting items. Use up and down arrow keys to navigate.';\n\n /**\n * An assistive text for screen reader to announce, telling that an item is selected.\n */\n @property({ attribute: 'selected-item-assistive-text' })\n selectedItemAssistiveText = 'Selected an item.';\n\n /**\n * The content of the trigger button for narrow mode.\n */\n @property({ attribute: 'trigger-content' })\n triggerContent = '';\n\n /**\n * Tabs type.\n */\n @property({ reflect: true })\n type = TABS_TYPE.REGULAR;\n\n shouldUpdate(changedProperties) {\n super.shouldUpdate(changedProperties);\n const { selectorItem } = this.constructor as typeof BXTabs;\n if (changedProperties.has('type')) {\n forEach(this.querySelectorAll(selectorItem), (elem) => {\n this._totalTabs++;\n (elem as BXTab).type = this.type;\n });\n }\n if (changedProperties.has('value')) {\n const item = find(\n this.querySelectorAll(selectorItem),\n (elem) => (elem as BXTab).value === this.value\n );\n if (item) {\n const range = this.ownerDocument!.createRange();\n range.selectNodeContents(item);\n this._selectedItemContent = range.cloneContents();\n } else {\n this._selectedItemContent = null;\n }\n }\n return true;\n }\n\n render() {\n const {\n triggerContent,\n _assistiveStatusText: assistiveStatusText,\n _open: open,\n _selectedItemContent: selectedItemContent,\n } = this;\n const triggerClasses = classMap({\n [`${prefix}--tabs-trigger`]: true,\n [`${prefix}--tabs-trigger--open`]: open,\n });\n const listClasses = classMap({\n [`${prefix}--tabs__nav`]: true,\n [`${prefix}--tabs__nav--hidden`]: !open,\n });\n return html`\n <div\n id=\"trigger\"\n role=\"button\"\n class=\"${triggerClasses}\"\n aria-labelledby=\"trigger-label\"\n aria-expanded=\"${String(open)}\"\n aria-haspopup=\"listbox\"\n aria-owns=\"tablist\"\n aria-controls=\"tablist\">\n <span id=\"trigger-label\" class=\"${prefix}--tabs-trigger-text\">\n ${selectedItemContent || triggerContent}\n </span>\n ${ChevronDown16({ 'aria-hidden': 'true' })}\n </div>\n <ul id=\"tablist\" role=\"tablist\" class=\"${listClasses}\">\n <slot></slot>\n </ul>\n <div\n class=\"${prefix}--assistive-text\"\n role=\"status\"\n aria-live=\"assertive\"\n aria-relevant=\"additions text\">\n ${assistiveStatusText}\n </div>\n `;\n }\n\n /**\n * Symbols of keys that triggers opening/closing menu and selecting/deselecting menu item.\n */\n static TRIGGER_KEYS = new Set([' ', 'Enter']);\n\n /**\n * A selector that will return tabs.\n */\n static get selectorItem() {\n return `${prefix}-tab`;\n }\n\n /**\n * A selector that will return enabled tabs.\n */\n static get selectorItemEnabled() {\n return `${prefix}-tab:not([disabled])`;\n }\n\n /**\n * A selector that will return highlighted tabs.\n */\n static get selectorItemHighlighted() {\n return `${prefix}-tab[highlighted]`;\n }\n\n /**\n * A selector that will return selected tabs.\n */\n static get selectorItemSelected() {\n return `${prefix}-tab[selected]`;\n }\n\n /**\n * The name of the custom event fired before a tab 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}-tabs-beingselected`;\n }\n\n /**\n * The name of the custom event fired after a a tab is selected upon a user gesture.\n */\n static get eventSelect() {\n return `${prefix}-tabs-selected`;\n }\n\n static styles = styles;\n\n /**\n * @param key The key symbol.\n * @param [options] The options.\n * @param [options.narrowMode] `true` to get the action for narrow mode.\n * @returns A action for dropdown for the given key symbol.\n */\n static getAction(key: string, { narrowMode }: { narrowMode?: boolean }) {\n if (key === 'Escape') {\n return TABS_KEYBOARD_ACTION.CLOSING;\n }\n if (key === 'Enter') {\n return TABS_KEYBOARD_ACTION.SELECTING;\n }\n if (key === 'Home') {\n return TABS_KEYBOARD_ACTION.HOME;\n }\n if (key === 'End') {\n return TABS_KEYBOARD_ACTION.END;\n }\n if (\n key in (narrowMode ? NAVIGATION_DIRECTION_NARROW : NAVIGATION_DIRECTION)\n ) {\n return TABS_KEYBOARD_ACTION.NAVIGATING;\n }\n if (narrowMode && this.TRIGGER_KEYS.has(key)) {\n return TABS_KEYBOARD_ACTION.TRIGGERING;\n }\n return TABS_KEYBOARD_ACTION.NONE;\n }\n}\n\nexport default BXTabs;\n"]}
1
+ {"version":3,"sources":["components/tabs/tabs.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AASH,OAAO,iBAAiB,EAAE,EACxB,oBAAoB,EACrB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EACL,2BAA2B,EAC3B,iBAAiB,EACjB,oBAAoB,EACpB,SAAS,EACV,MAAM,QAAQ,CAAC;AAChB,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,iBAAiB,EACjB,oBAAoB,EACpB,SAAS,GACV,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEF;;;;;;;;GAQG;AACH,cACM,MAAO,SAAQ,WAAoC;IACvD;;OAEG;IACH,OAAO,CAAC,oBAAoB,CAAC,CAAS;IAEtC;;OAEG;IACH,OAAO,CAAC,KAAK,CAAS;IAEtB;;OAEG;IACH,OAAO,CAAC,aAAa,CAAa;IAElC;;OAEG;IACH,OAAO,CAAC,oBAAoB,CAAiC;IAE7D;;OAEG;IACH,OAAO,CAAC,UAAU,CAAa;IAE/B;;OAEG;IAEH,OAAO,CAAC,YAAY,CAAkB;IAEtC;;;;OAIG;IAGH,OAAO,CAAC,eAAe;IAMvB;;;;OAIG;IACH,OAAO,CAAC,0BAA0B;IAwBlC;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;;;;;;;;;OAUG;IACH,SAAS,CAAC,SAAS,CACjB,SAAS,EAAE,MAAM,EACjB,EAAE,SAAS,EAAE,GAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAO;IAqC7C,SAAS,CAAC,YAAY,CAAC,KAAK,EAAE,UAAU;IAexC,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,aAAa;IA0E7C,SAAS,CAAC,mBAAmB,CAAC,YAAY,EAAE,KAAK;IAMjD;;OAEG;IAEH,WAAW,oBAA6B;IAExC;;OAEG;IAEH,2BAA2B,SACkC;IAE7D;;OAEG;IAEH,yBAAyB,SAAuB;IAEhD;;OAEG;IAEH,cAAc,SAAM;IAEpB;;OAEG;IAEH,IAAI,YAAqB;IAEzB,YAAY,CAAC,iBAAiB,KAAA;IAyB9B,MAAM;IA2CN;;OAEG;IACH,MAAM,CAAC,YAAY,cAA2B;IAE9C;;OAEG;IACH,MAAM,KAAK,YAAY,WAEtB;IAED;;OAEG;IACH,MAAM,KAAK,mBAAmB,WAE7B;IAED;;OAEG;IACH,MAAM,KAAK,uBAAuB,WAEjC;IAED;;OAEG;IACH,MAAM,KAAK,oBAAoB,WAE9B;IAED;;;OAGG;IACH,MAAM,KAAK,iBAAiB,WAE3B;IAED;;OAEG;IACH,MAAM,KAAK,WAAW,WAErB;IAED,MAAM,CAAC,MAAM,MAAU;IAEvB;;;;;OAKG;IACH,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAA;KAAE;CAuBvE;AAED,eAAe,MAAM,CAAC","file":"tabs.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit-html/directives/class-map';\nimport { html, property, query } from 'lit-element';\nimport ChevronDown16 from '@carbon/icons/lib/chevron--down/16';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport HostListener from '../../globals/decorators/host-listener';\nimport { find, forEach } from '../../globals/internal/collection-helpers';\nimport BXContentSwitcher, {\n NAVIGATION_DIRECTION,\n} from '../content-switcher/content-switcher';\nimport {\n NAVIGATION_DIRECTION_NARROW,\n TABS_COLOR_SCHEME,\n TABS_KEYBOARD_ACTION,\n TABS_TYPE,\n} from './defs';\nimport BXTab from './tab';\nimport styles from './tabs.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nconst { prefix } = settings;\n\nexport {\n NAVIGATION_DIRECTION,\n NAVIGATION_DIRECTION_NARROW,\n TABS_COLOR_SCHEME,\n TABS_KEYBOARD_ACTION,\n TABS_TYPE,\n};\n\n/**\n * Tabs.\n *\n * @element bx-tabs\n * @fires bx-tabs-beingselected\n * The custom event fired before a tab is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n * @fires bx-tabs-selected - The custom event fired after a a tab is selected upon a user gesture.\n */\n@customElement(`${prefix}-tabs`)\nclass BXTabs extends HostListenerMixin(BXContentSwitcher) {\n /**\n * The latest status of this dropdown, for screen reader to accounce.\n */\n private _assistiveStatusText?: string;\n\n /**\n * `true` if the narrow mode dropdown should be open.\n */\n private _open = false;\n\n /**\n * The currently selected index\n */\n private _currentIndex: number = 0;\n\n /**\n * The content of the selected item, used in the narrow mode.\n */\n private _selectedItemContent: DocumentFragment | null = null;\n\n /**\n * Total number of tabs in the component\n */\n private _totalTabs: number = 0;\n\n /**\n * The DOM element for the trigger button in narrow mode.\n */\n @query('#trigger')\n private _triggerNode!: HTMLDivElement;\n\n /**\n * Handles `blur` event handler on this element.\n *\n * @param event The event.\n */\n @HostListener('focusout')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleFocusOut({ relatedTarget }: FocusEvent) {\n if (!this.contains(relatedTarget as Node)) {\n this._handleUserInitiatedToggle(false);\n }\n }\n\n /**\n * Handles user-initiated toggling the open state.\n *\n * @param [force] If specified, forces the open state to the given one.\n */\n private _handleUserInitiatedToggle(force: boolean = !this._open) {\n this._open = force;\n if (this._open) {\n this._assistiveStatusText = this.selectingItemsAssistiveText;\n } else {\n const {\n selectedItemAssistiveText,\n triggerContent,\n _assistiveStatusText: assistiveStatusText,\n _selectedItemContent: selectedItemContent,\n } = this;\n const selectedItemText =\n (selectedItemContent && selectedItemContent.textContent) ||\n triggerContent;\n if (\n selectedItemText &&\n assistiveStatusText !== selectedItemAssistiveText\n ) {\n this._assistiveStatusText = selectedItemText;\n }\n }\n this.requestUpdate();\n }\n\n /**\n * Clears the selection of tabs.\n */\n private _clearHighlight() {\n forEach(\n this.querySelectorAll((this.constructor as typeof BXTabs).selectorItem),\n (item) => {\n (item as BXTab).highlighted = false;\n }\n );\n }\n\n /**\n * Navigates through tabs.\n *\n * @param direction `-1` to navigate backward, `1` to navigate forward.\n * @param [options] The options.\n * @param [options.immediate]\n * `true` to make it \"immediate selection change\" mode, which does:\n *\n * Starts with the selected item\n * Going prev/next item immediately changes the selection\n */\n protected _navigate(\n direction: number,\n { immediate }: { immediate?: boolean } = {}\n ) {\n const { selectorItem, selectorItemHighlighted, selectorItemSelected } = this\n .constructor as typeof BXTabs;\n const nextItem = this._getNextItem(\n this.querySelector(\n immediate ? selectorItemSelected : selectorItemHighlighted\n ) as BXTab,\n direction\n );\n if (!nextItem) {\n return;\n }\n\n if (immediate) {\n this._handleUserInitiatedSelectItem(nextItem as BXTab);\n } else {\n forEach(this.querySelectorAll(selectorItem), (item) => {\n (item as BXTab)[immediate ? 'selected' : 'highlighted'] =\n nextItem === item;\n });\n }\n\n // Using `{ block: 'nearest' }` to prevent scrolling unless scrolling is absolutely necessary.\n // `scrollIntoViewOptions` seems to work in latest Safari despite of MDN/caniuse table.\n // IE falls back to the old behavior.\n nextItem.scrollIntoView({ block: 'nearest' });\n\n const nextItemText = nextItem.textContent;\n if (nextItemText) {\n this._assistiveStatusText = nextItemText;\n }\n this._currentIndex += direction;\n this.requestUpdate();\n }\n\n @HostListener('click')\n protected _handleClick(event: MouseEvent) {\n const { target } = event;\n if (this === target) {\n this._handleUserInitiatedToggle();\n } else if ((target as BXTab).value === this.value) {\n // Clicking on selected item, simply closes the narrow mode dropdown\n this._handleUserInitiatedToggle(false);\n } else {\n // Trying to select the item\n // If the custom event of the selection is canceled, we don't close the narrow mode dropdown\n super._handleClick(event);\n }\n }\n\n @HostListener('keydown')\n protected _handleKeydown(event: KeyboardEvent) {\n const { _open: open, _triggerNode: triggerNode } = this;\n const { key, target } = event;\n const narrowMode = Boolean(triggerNode.offsetParent);\n const action = (this.constructor as typeof BXTabs).getAction(key, {\n narrowMode,\n });\n if (!open && narrowMode) {\n // Menu closed in narrow mode\n switch (action) {\n case TABS_KEYBOARD_ACTION.NAVIGATING:\n this._handleUserInitiatedToggle(true);\n // If this menu gets open with an arrow key, resets the highlight\n this._clearHighlight();\n break;\n case TABS_KEYBOARD_ACTION.TRIGGERING:\n this._handleUserInitiatedToggle(true);\n break;\n default:\n break;\n }\n } else {\n switch (action) {\n case TABS_KEYBOARD_ACTION.CLOSING:\n this._handleUserInitiatedToggle(false);\n break;\n case TABS_KEYBOARD_ACTION.SELECTING:\n this._handleUserInitiatedSelectItem(target as BXTab);\n break;\n case TABS_KEYBOARD_ACTION.HOME:\n this._navigate(this._currentIndex + this._totalTabs, {\n immediate: !narrowMode,\n });\n break;\n case TABS_KEYBOARD_ACTION.END:\n this._navigate(-this._currentIndex, { immediate: !narrowMode });\n break;\n case TABS_KEYBOARD_ACTION.NAVIGATING:\n {\n const direction = narrowMode\n ? NAVIGATION_DIRECTION_NARROW[key]\n : NAVIGATION_DIRECTION[key];\n if (direction) {\n this._navigate(direction, { immediate: !narrowMode });\n }\n }\n break;\n case TABS_KEYBOARD_ACTION.TRIGGERING:\n {\n const { selectorItemHighlighted } = this\n .constructor as typeof BXTabs;\n const highlightedItem = this.querySelector(\n selectorItemHighlighted\n ) as BXTab;\n if (highlightedItem) {\n if (highlightedItem.value === this.value) {\n // Selecting an already-selected item, simply closes the narrow mode dropdown\n this._handleUserInitiatedToggle(false);\n } else {\n // Trying to select the item\n // If the custom event of the selection is canceled, we don't close the narrow mode dropdown\n this._handleUserInitiatedSelectItem(highlightedItem);\n }\n } else {\n this._handleUserInitiatedToggle();\n }\n }\n break;\n default:\n break;\n }\n }\n }\n\n protected _selectionDidChange(itemToSelect: BXTab) {\n super._selectionDidChange(itemToSelect);\n this._assistiveStatusText = this.selectedItemAssistiveText;\n this._handleUserInitiatedToggle(false);\n }\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TABS_COLOR_SCHEME.REGULAR;\n\n /**\n * An assistive text for screen reader to announce, telling the open state.\n */\n @property({ attribute: 'selecting-items-assistive-text' })\n selectingItemsAssistiveText =\n 'Selecting items. Use up and down arrow keys to navigate.';\n\n /**\n * An assistive text for screen reader to announce, telling that an item is selected.\n */\n @property({ attribute: 'selected-item-assistive-text' })\n selectedItemAssistiveText = 'Selected an item.';\n\n /**\n * The content of the trigger button for narrow mode.\n */\n @property({ attribute: 'trigger-content' })\n triggerContent = '';\n\n /**\n * Tabs type.\n */\n @property({ reflect: true })\n type = TABS_TYPE.REGULAR;\n\n shouldUpdate(changedProperties) {\n super.shouldUpdate(changedProperties);\n const { selectorItem } = this.constructor as typeof BXTabs;\n if (changedProperties.has('type')) {\n forEach(this.querySelectorAll(selectorItem), (elem) => {\n this._totalTabs++;\n (elem as BXTab).type = this.type;\n });\n }\n if (changedProperties.has('value')) {\n const item = find(\n this.querySelectorAll(selectorItem),\n (elem) => (elem as BXTab).value === this.value\n );\n if (item) {\n const range = this.ownerDocument!.createRange();\n range.selectNodeContents(item);\n this._selectedItemContent = range.cloneContents();\n } else {\n this._selectedItemContent = null;\n }\n }\n return true;\n }\n\n render() {\n const {\n triggerContent,\n _assistiveStatusText: assistiveStatusText,\n _open: open,\n _selectedItemContent: selectedItemContent,\n } = this;\n const triggerClasses = classMap({\n [`${prefix}--tabs-trigger`]: true,\n [`${prefix}--tabs-trigger--open`]: open,\n });\n const listClasses = classMap({\n [`${prefix}--tabs__nav`]: true,\n [`${prefix}--tabs__nav--hidden`]: !open,\n });\n return html`\n <div\n id=\"trigger\"\n role=\"button\"\n class=\"${triggerClasses}\"\n aria-labelledby=\"trigger-label\"\n aria-expanded=\"${String(open)}\"\n aria-haspopup=\"listbox\"\n aria-owns=\"tablist\"\n aria-controls=\"tablist\">\n <span id=\"trigger-label\" class=\"${prefix}--tabs-trigger-text\">\n ${selectedItemContent || triggerContent}\n </span>\n ${ChevronDown16({ 'aria-hidden': 'true' })}\n </div>\n <ul id=\"tablist\" role=\"tablist\" class=\"${listClasses}\">\n <slot></slot>\n </ul>\n <div\n class=\"${prefix}--assistive-text\"\n role=\"status\"\n aria-live=\"assertive\"\n aria-relevant=\"additions text\">\n ${assistiveStatusText}\n </div>\n `;\n }\n\n /**\n * Symbols of keys that triggers opening/closing menu and selecting/deselecting menu item.\n */\n static TRIGGER_KEYS = new Set([' ', 'Enter']);\n\n /**\n * A selector that will return tabs.\n */\n static get selectorItem() {\n return `${prefix}-tab`;\n }\n\n /**\n * A selector that will return enabled tabs.\n */\n static get selectorItemEnabled() {\n return `${prefix}-tab:not([disabled])`;\n }\n\n /**\n * A selector that will return highlighted tabs.\n */\n static get selectorItemHighlighted() {\n return `${prefix}-tab[highlighted]`;\n }\n\n /**\n * A selector that will return selected tabs.\n */\n static get selectorItemSelected() {\n return `${prefix}-tab[selected]`;\n }\n\n /**\n * The name of the custom event fired before a tab 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}-tabs-beingselected`;\n }\n\n /**\n * The name of the custom event fired after a a tab is selected upon a user gesture.\n */\n static get eventSelect() {\n return `${prefix}-tabs-selected`;\n }\n\n static styles = styles;\n\n /**\n * @param key The key symbol.\n * @param [options] The options.\n * @param [options.narrowMode] `true` to get the action for narrow mode.\n * @returns A action for dropdown for the given key symbol.\n */\n static getAction(key: string, { narrowMode }: { narrowMode?: boolean }) {\n if (key === 'Escape') {\n return TABS_KEYBOARD_ACTION.CLOSING;\n }\n if (key === 'Enter') {\n return TABS_KEYBOARD_ACTION.SELECTING;\n }\n if (key === 'Home') {\n return TABS_KEYBOARD_ACTION.HOME;\n }\n if (key === 'End') {\n return TABS_KEYBOARD_ACTION.END;\n }\n if (\n key in (narrowMode ? NAVIGATION_DIRECTION_NARROW : NAVIGATION_DIRECTION)\n ) {\n return TABS_KEYBOARD_ACTION.NAVIGATING;\n }\n if (narrowMode && this.TRIGGER_KEYS.has(key)) {\n return TABS_KEYBOARD_ACTION.TRIGGERING;\n }\n return TABS_KEYBOARD_ACTION.NONE;\n }\n}\n\nexport default BXTabs;\n"]}
@@ -6,14 +6,14 @@ let _ = t => t,
6
6
  /**
7
7
  * @license
8
8
  *
9
- * Copyright IBM Corp. 2019, 2022
9
+ * Copyright IBM Corp. 2019, 2023
10
10
  *
11
11
  * This source code is licensed under the Apache-2.0 license found in the
12
12
  * LICENSE file in the root directory of this source tree.
13
13
  */
14
14
 
15
15
  import { classMap } from 'lit-html/directives/class-map';
16
- import { html, property, query, customElement } from 'lit-element';
16
+ import { html, property, query } from 'lit-element';
17
17
  import ChevronDown16 from "../../icons/chevron--down/16";
18
18
  import settings from 'carbon-components/es/globals/js/settings';
19
19
  import HostListenerMixin from '../../globals/mixins/host-listener';
@@ -22,6 +22,7 @@ import { find, forEach } from '../../globals/internal/collection-helpers';
22
22
  import BXContentSwitcher, { NAVIGATION_DIRECTION } from '../content-switcher/content-switcher';
23
23
  import { NAVIGATION_DIRECTION_NARROW, TABS_COLOR_SCHEME, TABS_KEYBOARD_ACTION, TABS_TYPE } from './defs';
24
24
  import styles from "././tabs.css.js";
25
+ import { carbonElement as customElement } from '../../globals/decorators/carbon-element';
25
26
  const {
26
27
  prefix
27
28
  } = settings;
@@ -163,8 +164,8 @@ let BXTabs = _decorate([customElement(`${prefix}-tabs`)], function (_initialize,
163
164
  * @param [options.immediate]
164
165
  * `true` to make it "immediate selection change" mode, which does:
165
166
  *
166
- * * Starts with the selected item
167
- * * Going prev/next item immediately changes the selection
167
+ * Starts with the selected item
168
+ * Going prev/next item immediately changes the selection
168
169
  */
169
170
  }, {
170
171
  kind: "method",
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","names":["classMap","html","property","query","customElement","ChevronDown16","settings","HostListenerMixin","HostListener","find","forEach","BXContentSwitcher","NAVIGATION_DIRECTION","NAVIGATION_DIRECTION_NARROW","TABS_COLOR_SCHEME","TABS_KEYBOARD_ACTION","TABS_TYPE","styles","prefix","BXTabs","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","key","value","decorators","_handleFocusOut","relatedTarget","contains","_handleUserInitiatedToggle","force","_open","_assistiveStatusText","selectingItemsAssistiveText","selectedItemAssistiveText","triggerContent","assistiveStatusText","_selectedItemContent","selectedItemContent","selectedItemText","textContent","requestUpdate","_clearHighlight","querySelectorAll","selectorItem","item","highlighted","_navigate","direction","immediate","selectorItemHighlighted","selectorItemSelected","nextItem","_getNextItem","querySelector","_handleUserInitiatedSelectItem","scrollIntoView","block","nextItemText","_currentIndex","_handleClick","event","target","_get","_getPrototypeOf","prototype","call","_handleKeydown","open","_triggerNode","triggerNode","narrowMode","Boolean","offsetParent","action","getAction","NAVIGATING","TRIGGERING","CLOSING","SELECTING","HOME","_totalTabs","END","highlightedItem","_selectionDidChange","itemToSelect","attribute","reflect","REGULAR","shouldUpdate","changedProperties","has","elem","type","range","ownerDocument","createRange","selectNodeContents","cloneContents","render","triggerClasses","listClasses","_t","_","String","static","Set","selectorItemEnabled","eventBeforeSelect","eventSelect","TRIGGER_KEYS","NONE"],"sources":["components/tabs/tabs.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2022\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit-html/directives/class-map';\nimport { html, property, query, customElement } from 'lit-element';\nimport ChevronDown16 from '@carbon/icons/lib/chevron--down/16';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport HostListener from '../../globals/decorators/host-listener';\nimport { find, forEach } from '../../globals/internal/collection-helpers';\nimport BXContentSwitcher, {\n NAVIGATION_DIRECTION,\n} from '../content-switcher/content-switcher';\nimport {\n NAVIGATION_DIRECTION_NARROW,\n TABS_COLOR_SCHEME,\n TABS_KEYBOARD_ACTION,\n TABS_TYPE,\n} from './defs';\nimport BXTab from './tab';\nimport styles from './tabs.scss';\n\nconst { prefix } = settings;\n\nexport {\n NAVIGATION_DIRECTION,\n NAVIGATION_DIRECTION_NARROW,\n TABS_COLOR_SCHEME,\n TABS_KEYBOARD_ACTION,\n TABS_TYPE,\n};\n\n/**\n * Tabs.\n *\n * @element bx-tabs\n * @fires bx-tabs-beingselected\n * The custom event fired before a tab is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n * @fires bx-tabs-selected - The custom event fired after a a tab is selected upon a user gesture.\n */\n@customElement(`${prefix}-tabs`)\nclass BXTabs extends HostListenerMixin(BXContentSwitcher) {\n /**\n * The latest status of this dropdown, for screen reader to accounce.\n */\n private _assistiveStatusText?: string;\n\n /**\n * `true` if the narrow mode dropdown should be open.\n */\n private _open = false;\n\n /**\n * The currently selected index\n */\n private _currentIndex: number = 0;\n\n /**\n * The content of the selected item, used in the narrow mode.\n */\n private _selectedItemContent: DocumentFragment | null = null;\n\n /**\n * Total number of tabs in the component\n */\n private _totalTabs: number = 0;\n\n /**\n * The DOM element for the trigger button in narrow mode.\n */\n @query('#trigger')\n private _triggerNode!: HTMLDivElement;\n\n /**\n * Handles `blur` event handler on this element.\n *\n * @param event The event.\n */\n @HostListener('focusout')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleFocusOut({ relatedTarget }: FocusEvent) {\n if (!this.contains(relatedTarget as Node)) {\n this._handleUserInitiatedToggle(false);\n }\n }\n\n /**\n * Handles user-initiated toggling the open state.\n *\n * @param [force] If specified, forces the open state to the given one.\n */\n private _handleUserInitiatedToggle(force: boolean = !this._open) {\n this._open = force;\n if (this._open) {\n this._assistiveStatusText = this.selectingItemsAssistiveText;\n } else {\n const {\n selectedItemAssistiveText,\n triggerContent,\n _assistiveStatusText: assistiveStatusText,\n _selectedItemContent: selectedItemContent,\n } = this;\n const selectedItemText =\n (selectedItemContent && selectedItemContent.textContent) ||\n triggerContent;\n if (\n selectedItemText &&\n assistiveStatusText !== selectedItemAssistiveText\n ) {\n this._assistiveStatusText = selectedItemText;\n }\n }\n this.requestUpdate();\n }\n\n /**\n * Clears the selection of tabs.\n */\n private _clearHighlight() {\n forEach(\n this.querySelectorAll((this.constructor as typeof BXTabs).selectorItem),\n (item) => {\n (item as BXTab).highlighted = false;\n }\n );\n }\n\n /**\n * Navigates through tabs.\n *\n * @param direction `-1` to navigate backward, `1` to navigate forward.\n * @param [options] The options.\n * @param [options.immediate]\n * `true` to make it \"immediate selection change\" mode, which does:\n *\n * * Starts with the selected item\n * * Going prev/next item immediately changes the selection\n */\n protected _navigate(\n direction: number,\n { immediate }: { immediate?: boolean } = {}\n ) {\n const { selectorItem, selectorItemHighlighted, selectorItemSelected } = this\n .constructor as typeof BXTabs;\n const nextItem = this._getNextItem(\n this.querySelector(\n immediate ? selectorItemSelected : selectorItemHighlighted\n ) as BXTab,\n direction\n );\n if (!nextItem) {\n return;\n }\n\n if (immediate) {\n this._handleUserInitiatedSelectItem(nextItem as BXTab);\n } else {\n forEach(this.querySelectorAll(selectorItem), (item) => {\n (item as BXTab)[immediate ? 'selected' : 'highlighted'] =\n nextItem === item;\n });\n }\n\n // Using `{ block: 'nearest' }` to prevent scrolling unless scrolling is absolutely necessary.\n // `scrollIntoViewOptions` seems to work in latest Safari despite of MDN/caniuse table.\n // IE falls back to the old behavior.\n nextItem.scrollIntoView({ block: 'nearest' });\n\n const nextItemText = nextItem.textContent;\n if (nextItemText) {\n this._assistiveStatusText = nextItemText;\n }\n this._currentIndex += direction;\n this.requestUpdate();\n }\n\n @HostListener('click')\n protected _handleClick(event: MouseEvent) {\n const { target } = event;\n if (this === target) {\n this._handleUserInitiatedToggle();\n } else if ((target as BXTab).value === this.value) {\n // Clicking on selected item, simply closes the narrow mode dropdown\n this._handleUserInitiatedToggle(false);\n } else {\n // Trying to select the item\n // If the custom event of the selection is canceled, we don't close the narrow mode dropdown\n super._handleClick(event);\n }\n }\n\n @HostListener('keydown')\n protected _handleKeydown(event: KeyboardEvent) {\n const { _open: open, _triggerNode: triggerNode } = this;\n const { key, target } = event;\n const narrowMode = Boolean(triggerNode.offsetParent);\n const action = (this.constructor as typeof BXTabs).getAction(key, {\n narrowMode,\n });\n if (!open && narrowMode) {\n // Menu closed in narrow mode\n switch (action) {\n case TABS_KEYBOARD_ACTION.NAVIGATING:\n this._handleUserInitiatedToggle(true);\n // If this menu gets open with an arrow key, resets the highlight\n this._clearHighlight();\n break;\n case TABS_KEYBOARD_ACTION.TRIGGERING:\n this._handleUserInitiatedToggle(true);\n break;\n default:\n break;\n }\n } else {\n switch (action) {\n case TABS_KEYBOARD_ACTION.CLOSING:\n this._handleUserInitiatedToggle(false);\n break;\n case TABS_KEYBOARD_ACTION.SELECTING:\n this._handleUserInitiatedSelectItem(target as BXTab);\n break;\n case TABS_KEYBOARD_ACTION.HOME:\n this._navigate(this._currentIndex + this._totalTabs, {\n immediate: !narrowMode,\n });\n break;\n case TABS_KEYBOARD_ACTION.END:\n this._navigate(-this._currentIndex, { immediate: !narrowMode });\n break;\n case TABS_KEYBOARD_ACTION.NAVIGATING:\n {\n const direction = narrowMode\n ? NAVIGATION_DIRECTION_NARROW[key]\n : NAVIGATION_DIRECTION[key];\n if (direction) {\n this._navigate(direction, { immediate: !narrowMode });\n }\n }\n break;\n case TABS_KEYBOARD_ACTION.TRIGGERING:\n {\n const { selectorItemHighlighted } = this\n .constructor as typeof BXTabs;\n const highlightedItem = this.querySelector(\n selectorItemHighlighted\n ) as BXTab;\n if (highlightedItem) {\n if (highlightedItem.value === this.value) {\n // Selecting an already-selected item, simply closes the narrow mode dropdown\n this._handleUserInitiatedToggle(false);\n } else {\n // Trying to select the item\n // If the custom event of the selection is canceled, we don't close the narrow mode dropdown\n this._handleUserInitiatedSelectItem(highlightedItem);\n }\n } else {\n this._handleUserInitiatedToggle();\n }\n }\n break;\n default:\n break;\n }\n }\n }\n\n protected _selectionDidChange(itemToSelect: BXTab) {\n super._selectionDidChange(itemToSelect);\n this._assistiveStatusText = this.selectedItemAssistiveText;\n this._handleUserInitiatedToggle(false);\n }\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TABS_COLOR_SCHEME.REGULAR;\n\n /**\n * An assistive text for screen reader to announce, telling the open state.\n */\n @property({ attribute: 'selecting-items-assistive-text' })\n selectingItemsAssistiveText =\n 'Selecting items. Use up and down arrow keys to navigate.';\n\n /**\n * An assistive text for screen reader to announce, telling that an item is selected.\n */\n @property({ attribute: 'selected-item-assistive-text' })\n selectedItemAssistiveText = 'Selected an item.';\n\n /**\n * The content of the trigger button for narrow mode.\n */\n @property({ attribute: 'trigger-content' })\n triggerContent = '';\n\n /**\n * Tabs type.\n */\n @property({ reflect: true })\n type = TABS_TYPE.REGULAR;\n\n shouldUpdate(changedProperties) {\n super.shouldUpdate(changedProperties);\n const { selectorItem } = this.constructor as typeof BXTabs;\n if (changedProperties.has('type')) {\n forEach(this.querySelectorAll(selectorItem), (elem) => {\n this._totalTabs++;\n (elem as BXTab).type = this.type;\n });\n }\n if (changedProperties.has('value')) {\n const item = find(\n this.querySelectorAll(selectorItem),\n (elem) => (elem as BXTab).value === this.value\n );\n if (item) {\n const range = this.ownerDocument!.createRange();\n range.selectNodeContents(item);\n this._selectedItemContent = range.cloneContents();\n } else {\n this._selectedItemContent = null;\n }\n }\n return true;\n }\n\n render() {\n const {\n triggerContent,\n _assistiveStatusText: assistiveStatusText,\n _open: open,\n _selectedItemContent: selectedItemContent,\n } = this;\n const triggerClasses = classMap({\n [`${prefix}--tabs-trigger`]: true,\n [`${prefix}--tabs-trigger--open`]: open,\n });\n const listClasses = classMap({\n [`${prefix}--tabs__nav`]: true,\n [`${prefix}--tabs__nav--hidden`]: !open,\n });\n return html`\n <div\n id=\"trigger\"\n role=\"button\"\n class=\"${triggerClasses}\"\n aria-labelledby=\"trigger-label\"\n aria-expanded=\"${String(open)}\"\n aria-haspopup=\"listbox\"\n aria-owns=\"tablist\"\n aria-controls=\"tablist\">\n <span id=\"trigger-label\" class=\"${prefix}--tabs-trigger-text\">\n ${selectedItemContent || triggerContent}\n </span>\n ${ChevronDown16({ 'aria-hidden': 'true' })}\n </div>\n <ul id=\"tablist\" role=\"tablist\" class=\"${listClasses}\">\n <slot></slot>\n </ul>\n <div\n class=\"${prefix}--assistive-text\"\n role=\"status\"\n aria-live=\"assertive\"\n aria-relevant=\"additions text\">\n ${assistiveStatusText}\n </div>\n `;\n }\n\n /**\n * Symbols of keys that triggers opening/closing menu and selecting/deselecting menu item.\n */\n static TRIGGER_KEYS = new Set([' ', 'Enter']);\n\n /**\n * A selector that will return tabs.\n */\n static get selectorItem() {\n return `${prefix}-tab`;\n }\n\n /**\n * A selector that will return enabled tabs.\n */\n static get selectorItemEnabled() {\n return `${prefix}-tab:not([disabled])`;\n }\n\n /**\n * A selector that will return highlighted tabs.\n */\n static get selectorItemHighlighted() {\n return `${prefix}-tab[highlighted]`;\n }\n\n /**\n * A selector that will return selected tabs.\n */\n static get selectorItemSelected() {\n return `${prefix}-tab[selected]`;\n }\n\n /**\n * The name of the custom event fired before a tab 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}-tabs-beingselected`;\n }\n\n /**\n * The name of the custom event fired after a a tab is selected upon a user gesture.\n */\n static get eventSelect() {\n return `${prefix}-tabs-selected`;\n }\n\n static styles = styles;\n\n /**\n * @param key The key symbol.\n * @param [options] The options.\n * @param [options.narrowMode] `true` to get the action for narrow mode.\n * @returns A action for dropdown for the given key symbol.\n */\n static getAction(key: string, { narrowMode }: { narrowMode?: boolean }) {\n if (key === 'Escape') {\n return TABS_KEYBOARD_ACTION.CLOSING;\n }\n if (key === 'Enter') {\n return TABS_KEYBOARD_ACTION.SELECTING;\n }\n if (key === 'Home') {\n return TABS_KEYBOARD_ACTION.HOME;\n }\n if (key === 'End') {\n return TABS_KEYBOARD_ACTION.END;\n }\n if (\n key in (narrowMode ? NAVIGATION_DIRECTION_NARROW : NAVIGATION_DIRECTION)\n ) {\n return TABS_KEYBOARD_ACTION.NAVIGATING;\n }\n if (narrowMode && this.TRIGGER_KEYS.has(key)) {\n return TABS_KEYBOARD_ACTION.TRIGGERING;\n }\n return TABS_KEYBOARD_ACTION.NONE;\n }\n}\n\nexport default BXTabs;\n"],"mappings":"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"}
1
+ {"version":3,"file":"tabs.js","names":["classMap","html","property","query","ChevronDown16","settings","HostListenerMixin","HostListener","find","forEach","BXContentSwitcher","NAVIGATION_DIRECTION","NAVIGATION_DIRECTION_NARROW","TABS_COLOR_SCHEME","TABS_KEYBOARD_ACTION","TABS_TYPE","styles","carbonElement","customElement","prefix","BXTabs","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","key","value","decorators","_handleFocusOut","relatedTarget","contains","_handleUserInitiatedToggle","force","_open","_assistiveStatusText","selectingItemsAssistiveText","selectedItemAssistiveText","triggerContent","assistiveStatusText","_selectedItemContent","selectedItemContent","selectedItemText","textContent","requestUpdate","_clearHighlight","querySelectorAll","selectorItem","item","highlighted","_navigate","direction","immediate","selectorItemHighlighted","selectorItemSelected","nextItem","_getNextItem","querySelector","_handleUserInitiatedSelectItem","scrollIntoView","block","nextItemText","_currentIndex","_handleClick","event","target","_get","_getPrototypeOf","prototype","call","_handleKeydown","open","_triggerNode","triggerNode","narrowMode","Boolean","offsetParent","action","getAction","NAVIGATING","TRIGGERING","CLOSING","SELECTING","HOME","_totalTabs","END","highlightedItem","_selectionDidChange","itemToSelect","attribute","reflect","REGULAR","shouldUpdate","changedProperties","has","elem","type","range","ownerDocument","createRange","selectNodeContents","cloneContents","render","triggerClasses","listClasses","_t","_","String","static","Set","selectorItemEnabled","eventBeforeSelect","eventSelect","TRIGGER_KEYS","NONE"],"sources":["components/tabs/tabs.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { classMap } from 'lit-html/directives/class-map';\nimport { html, property, query } from 'lit-element';\nimport ChevronDown16 from '@carbon/icons/lib/chevron--down/16';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport HostListener from '../../globals/decorators/host-listener';\nimport { find, forEach } from '../../globals/internal/collection-helpers';\nimport BXContentSwitcher, {\n NAVIGATION_DIRECTION,\n} from '../content-switcher/content-switcher';\nimport {\n NAVIGATION_DIRECTION_NARROW,\n TABS_COLOR_SCHEME,\n TABS_KEYBOARD_ACTION,\n TABS_TYPE,\n} from './defs';\nimport BXTab from './tab';\nimport styles from './tabs.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nconst { prefix } = settings;\n\nexport {\n NAVIGATION_DIRECTION,\n NAVIGATION_DIRECTION_NARROW,\n TABS_COLOR_SCHEME,\n TABS_KEYBOARD_ACTION,\n TABS_TYPE,\n};\n\n/**\n * Tabs.\n *\n * @element bx-tabs\n * @fires bx-tabs-beingselected\n * The custom event fired before a tab is selected upon a user gesture.\n * Cancellation of this event stops changing the user-initiated selection.\n * @fires bx-tabs-selected - The custom event fired after a a tab is selected upon a user gesture.\n */\n@customElement(`${prefix}-tabs`)\nclass BXTabs extends HostListenerMixin(BXContentSwitcher) {\n /**\n * The latest status of this dropdown, for screen reader to accounce.\n */\n private _assistiveStatusText?: string;\n\n /**\n * `true` if the narrow mode dropdown should be open.\n */\n private _open = false;\n\n /**\n * The currently selected index\n */\n private _currentIndex: number = 0;\n\n /**\n * The content of the selected item, used in the narrow mode.\n */\n private _selectedItemContent: DocumentFragment | null = null;\n\n /**\n * Total number of tabs in the component\n */\n private _totalTabs: number = 0;\n\n /**\n * The DOM element for the trigger button in narrow mode.\n */\n @query('#trigger')\n private _triggerNode!: HTMLDivElement;\n\n /**\n * Handles `blur` event handler on this element.\n *\n * @param event The event.\n */\n @HostListener('focusout')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleFocusOut({ relatedTarget }: FocusEvent) {\n if (!this.contains(relatedTarget as Node)) {\n this._handleUserInitiatedToggle(false);\n }\n }\n\n /**\n * Handles user-initiated toggling the open state.\n *\n * @param [force] If specified, forces the open state to the given one.\n */\n private _handleUserInitiatedToggle(force: boolean = !this._open) {\n this._open = force;\n if (this._open) {\n this._assistiveStatusText = this.selectingItemsAssistiveText;\n } else {\n const {\n selectedItemAssistiveText,\n triggerContent,\n _assistiveStatusText: assistiveStatusText,\n _selectedItemContent: selectedItemContent,\n } = this;\n const selectedItemText =\n (selectedItemContent && selectedItemContent.textContent) ||\n triggerContent;\n if (\n selectedItemText &&\n assistiveStatusText !== selectedItemAssistiveText\n ) {\n this._assistiveStatusText = selectedItemText;\n }\n }\n this.requestUpdate();\n }\n\n /**\n * Clears the selection of tabs.\n */\n private _clearHighlight() {\n forEach(\n this.querySelectorAll((this.constructor as typeof BXTabs).selectorItem),\n (item) => {\n (item as BXTab).highlighted = false;\n }\n );\n }\n\n /**\n * Navigates through tabs.\n *\n * @param direction `-1` to navigate backward, `1` to navigate forward.\n * @param [options] The options.\n * @param [options.immediate]\n * `true` to make it \"immediate selection change\" mode, which does:\n *\n * Starts with the selected item\n * Going prev/next item immediately changes the selection\n */\n protected _navigate(\n direction: number,\n { immediate }: { immediate?: boolean } = {}\n ) {\n const { selectorItem, selectorItemHighlighted, selectorItemSelected } = this\n .constructor as typeof BXTabs;\n const nextItem = this._getNextItem(\n this.querySelector(\n immediate ? selectorItemSelected : selectorItemHighlighted\n ) as BXTab,\n direction\n );\n if (!nextItem) {\n return;\n }\n\n if (immediate) {\n this._handleUserInitiatedSelectItem(nextItem as BXTab);\n } else {\n forEach(this.querySelectorAll(selectorItem), (item) => {\n (item as BXTab)[immediate ? 'selected' : 'highlighted'] =\n nextItem === item;\n });\n }\n\n // Using `{ block: 'nearest' }` to prevent scrolling unless scrolling is absolutely necessary.\n // `scrollIntoViewOptions` seems to work in latest Safari despite of MDN/caniuse table.\n // IE falls back to the old behavior.\n nextItem.scrollIntoView({ block: 'nearest' });\n\n const nextItemText = nextItem.textContent;\n if (nextItemText) {\n this._assistiveStatusText = nextItemText;\n }\n this._currentIndex += direction;\n this.requestUpdate();\n }\n\n @HostListener('click')\n protected _handleClick(event: MouseEvent) {\n const { target } = event;\n if (this === target) {\n this._handleUserInitiatedToggle();\n } else if ((target as BXTab).value === this.value) {\n // Clicking on selected item, simply closes the narrow mode dropdown\n this._handleUserInitiatedToggle(false);\n } else {\n // Trying to select the item\n // If the custom event of the selection is canceled, we don't close the narrow mode dropdown\n super._handleClick(event);\n }\n }\n\n @HostListener('keydown')\n protected _handleKeydown(event: KeyboardEvent) {\n const { _open: open, _triggerNode: triggerNode } = this;\n const { key, target } = event;\n const narrowMode = Boolean(triggerNode.offsetParent);\n const action = (this.constructor as typeof BXTabs).getAction(key, {\n narrowMode,\n });\n if (!open && narrowMode) {\n // Menu closed in narrow mode\n switch (action) {\n case TABS_KEYBOARD_ACTION.NAVIGATING:\n this._handleUserInitiatedToggle(true);\n // If this menu gets open with an arrow key, resets the highlight\n this._clearHighlight();\n break;\n case TABS_KEYBOARD_ACTION.TRIGGERING:\n this._handleUserInitiatedToggle(true);\n break;\n default:\n break;\n }\n } else {\n switch (action) {\n case TABS_KEYBOARD_ACTION.CLOSING:\n this._handleUserInitiatedToggle(false);\n break;\n case TABS_KEYBOARD_ACTION.SELECTING:\n this._handleUserInitiatedSelectItem(target as BXTab);\n break;\n case TABS_KEYBOARD_ACTION.HOME:\n this._navigate(this._currentIndex + this._totalTabs, {\n immediate: !narrowMode,\n });\n break;\n case TABS_KEYBOARD_ACTION.END:\n this._navigate(-this._currentIndex, { immediate: !narrowMode });\n break;\n case TABS_KEYBOARD_ACTION.NAVIGATING:\n {\n const direction = narrowMode\n ? NAVIGATION_DIRECTION_NARROW[key]\n : NAVIGATION_DIRECTION[key];\n if (direction) {\n this._navigate(direction, { immediate: !narrowMode });\n }\n }\n break;\n case TABS_KEYBOARD_ACTION.TRIGGERING:\n {\n const { selectorItemHighlighted } = this\n .constructor as typeof BXTabs;\n const highlightedItem = this.querySelector(\n selectorItemHighlighted\n ) as BXTab;\n if (highlightedItem) {\n if (highlightedItem.value === this.value) {\n // Selecting an already-selected item, simply closes the narrow mode dropdown\n this._handleUserInitiatedToggle(false);\n } else {\n // Trying to select the item\n // If the custom event of the selection is canceled, we don't close the narrow mode dropdown\n this._handleUserInitiatedSelectItem(highlightedItem);\n }\n } else {\n this._handleUserInitiatedToggle();\n }\n }\n break;\n default:\n break;\n }\n }\n }\n\n protected _selectionDidChange(itemToSelect: BXTab) {\n super._selectionDidChange(itemToSelect);\n this._assistiveStatusText = this.selectedItemAssistiveText;\n this._handleUserInitiatedToggle(false);\n }\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TABS_COLOR_SCHEME.REGULAR;\n\n /**\n * An assistive text for screen reader to announce, telling the open state.\n */\n @property({ attribute: 'selecting-items-assistive-text' })\n selectingItemsAssistiveText =\n 'Selecting items. Use up and down arrow keys to navigate.';\n\n /**\n * An assistive text for screen reader to announce, telling that an item is selected.\n */\n @property({ attribute: 'selected-item-assistive-text' })\n selectedItemAssistiveText = 'Selected an item.';\n\n /**\n * The content of the trigger button for narrow mode.\n */\n @property({ attribute: 'trigger-content' })\n triggerContent = '';\n\n /**\n * Tabs type.\n */\n @property({ reflect: true })\n type = TABS_TYPE.REGULAR;\n\n shouldUpdate(changedProperties) {\n super.shouldUpdate(changedProperties);\n const { selectorItem } = this.constructor as typeof BXTabs;\n if (changedProperties.has('type')) {\n forEach(this.querySelectorAll(selectorItem), (elem) => {\n this._totalTabs++;\n (elem as BXTab).type = this.type;\n });\n }\n if (changedProperties.has('value')) {\n const item = find(\n this.querySelectorAll(selectorItem),\n (elem) => (elem as BXTab).value === this.value\n );\n if (item) {\n const range = this.ownerDocument!.createRange();\n range.selectNodeContents(item);\n this._selectedItemContent = range.cloneContents();\n } else {\n this._selectedItemContent = null;\n }\n }\n return true;\n }\n\n render() {\n const {\n triggerContent,\n _assistiveStatusText: assistiveStatusText,\n _open: open,\n _selectedItemContent: selectedItemContent,\n } = this;\n const triggerClasses = classMap({\n [`${prefix}--tabs-trigger`]: true,\n [`${prefix}--tabs-trigger--open`]: open,\n });\n const listClasses = classMap({\n [`${prefix}--tabs__nav`]: true,\n [`${prefix}--tabs__nav--hidden`]: !open,\n });\n return html`\n <div\n id=\"trigger\"\n role=\"button\"\n class=\"${triggerClasses}\"\n aria-labelledby=\"trigger-label\"\n aria-expanded=\"${String(open)}\"\n aria-haspopup=\"listbox\"\n aria-owns=\"tablist\"\n aria-controls=\"tablist\">\n <span id=\"trigger-label\" class=\"${prefix}--tabs-trigger-text\">\n ${selectedItemContent || triggerContent}\n </span>\n ${ChevronDown16({ 'aria-hidden': 'true' })}\n </div>\n <ul id=\"tablist\" role=\"tablist\" class=\"${listClasses}\">\n <slot></slot>\n </ul>\n <div\n class=\"${prefix}--assistive-text\"\n role=\"status\"\n aria-live=\"assertive\"\n aria-relevant=\"additions text\">\n ${assistiveStatusText}\n </div>\n `;\n }\n\n /**\n * Symbols of keys that triggers opening/closing menu and selecting/deselecting menu item.\n */\n static TRIGGER_KEYS = new Set([' ', 'Enter']);\n\n /**\n * A selector that will return tabs.\n */\n static get selectorItem() {\n return `${prefix}-tab`;\n }\n\n /**\n * A selector that will return enabled tabs.\n */\n static get selectorItemEnabled() {\n return `${prefix}-tab:not([disabled])`;\n }\n\n /**\n * A selector that will return highlighted tabs.\n */\n static get selectorItemHighlighted() {\n return `${prefix}-tab[highlighted]`;\n }\n\n /**\n * A selector that will return selected tabs.\n */\n static get selectorItemSelected() {\n return `${prefix}-tab[selected]`;\n }\n\n /**\n * The name of the custom event fired before a tab 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}-tabs-beingselected`;\n }\n\n /**\n * The name of the custom event fired after a a tab is selected upon a user gesture.\n */\n static get eventSelect() {\n return `${prefix}-tabs-selected`;\n }\n\n static styles = styles;\n\n /**\n * @param key The key symbol.\n * @param [options] The options.\n * @param [options.narrowMode] `true` to get the action for narrow mode.\n * @returns A action for dropdown for the given key symbol.\n */\n static getAction(key: string, { narrowMode }: { narrowMode?: boolean }) {\n if (key === 'Escape') {\n return TABS_KEYBOARD_ACTION.CLOSING;\n }\n if (key === 'Enter') {\n return TABS_KEYBOARD_ACTION.SELECTING;\n }\n if (key === 'Home') {\n return TABS_KEYBOARD_ACTION.HOME;\n }\n if (key === 'End') {\n return TABS_KEYBOARD_ACTION.END;\n }\n if (\n key in (narrowMode ? NAVIGATION_DIRECTION_NARROW : NAVIGATION_DIRECTION)\n ) {\n return TABS_KEYBOARD_ACTION.NAVIGATING;\n }\n if (narrowMode && this.TRIGGER_KEYS.has(key)) {\n return TABS_KEYBOARD_ACTION.TRIGGERING;\n }\n return TABS_KEYBOARD_ACTION.NONE;\n }\n}\n\nexport default BXTabs;\n"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *
4
- * Copyright IBM Corp. 2019, 2022
4
+ * Copyright IBM Corp. 2019, 2023
5
5
  *
6
6
  * This source code is licensed under the Apache-2.0 license found in the
7
7
  * LICENSE file in the root directory of this source tree.
@@ -320,7 +320,10 @@ declare const BXFilterTag_base: {
320
320
  _hostListeners: {
321
321
  [listenerName: string]: {
322
322
  [type: string]: {
323
- options?: boolean | AddEventListenerOptions | undefined;
323
+ options?: boolean | AddEventListenerOptions | undefined; /**
324
+ * The name of the custom event fired before this tag is being closed upon a user gesture.
325
+ * Cancellation of this event stops the user-initiated action of closing this tag.
326
+ */
324
327
  };
325
328
  };
326
329
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["components/tag/filter-tag.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAwC,UAAU,EAAE,MAAM,aAAa,CAAC;AAM/E,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAG5C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAI9B;;;;GAIG;AAEH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,gBAExC;IAEC,SAAS,CAAC,WAAW,EAAG,iBAAiB,CAAC;IAE1C;;;;OAIG;IAGH,OAAO,CAAC,YAAY,CA+BlB;IAEF;;OAEG;IAEH,KAAK,SAAkB;IAEvB;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,IAAI,UAAQ;IAEZ;;OAEG;IAEH,IAAI,WAAoB;IAExB;;OAEG;IAEH,IAAI,WAAgB;IAEpB,MAAM;IAUN;;;OAGG;IACH,MAAM,KAAK,gBAAgB,WAE1B;IAED;;OAEG;IACH,MAAM,KAAK,UAAU,WAEpB;IAED,MAAM,CAAC,MAAM,MAAU;CACxB","file":"filter-tag.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2022\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, property, query, customElement, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport Close16 from '@carbon/icons/lib/close/16';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TAG_SIZE, TAG_TYPE } from './defs';\nimport styles from './tag.scss';\n\nexport { TAG_SIZE, TAG_TYPE };\n\nconst { prefix } = settings;\n\n/**\n * Filter tag.\n *\n * @element bx-filter-tag\n */\n@customElement(`${prefix}-filter-tag`)\nexport default class BXFilterTag extends HostListenerMixin(\n FocusMixin(LitElement)\n) {\n @query('button')\n protected _buttonNode!: HTMLButtonElement;\n\n /**\n * Handles `click` event on this element.\n *\n * @param event The event.\n */\n @HostListener('shadowRoot:click')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = (event: MouseEvent) => {\n if (event.composedPath().indexOf(this._buttonNode!) >= 0) {\n if (this.disabled) {\n event.stopPropagation();\n } else if (this.open) {\n const init = {\n bubbles: true,\n cancelable: true,\n composed: true,\n detail: {\n triggeredBy: event.target,\n },\n };\n if (\n this.dispatchEvent(\n new CustomEvent(\n (this.constructor as typeof BXFilterTag).eventBeforeClose,\n init\n )\n )\n ) {\n this.open = false;\n this.dispatchEvent(\n new CustomEvent(\n (this.constructor as typeof BXFilterTag).eventClose,\n init\n )\n );\n }\n }\n }\n };\n\n /**\n * Text to show on filter tag \"clear\" buttons. Corresponds to the attribute with the same name\n */\n @property({ type: String, reflect: true })\n title = 'Clear filter';\n\n /**\n * `true` if the tag should be disabled\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * `true` if the tag should be open.\n */\n @property({ type: Boolean, reflect: true })\n open = true;\n\n /**\n * The size of the tag.\n */\n @property({ reflect: true })\n size = TAG_SIZE.REGULAR;\n\n /**\n * The type of the tag.\n */\n @property({ reflect: true })\n type = TAG_TYPE.RED;\n\n render() {\n const { disabled } = this;\n return html`\n <slot></slot>\n <button class=\"${prefix}--tag__close-icon\" ?disabled=${disabled}>\n ${Close16({ 'aria-label': this.title })}\n </button>\n `;\n }\n\n /**\n * The name of the custom event fired before this tag is being closed upon a user gesture.\n * Cancellation of this event stops the user-initiated action of closing this tag.\n */\n static get eventBeforeClose() {\n return `${prefix}-filter-tag-beingclosed`;\n }\n\n /**\n * The name of the custom event fired after this tag is closed upon a user gesture.\n */\n static get eventClose() {\n return `${prefix}-filter-tag-closed`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n"]}
1
+ {"version":3,"sources":["components/tag/filter-tag.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAyB,UAAU,EAAE,MAAM,aAAa,CAAC;AAMhE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAI5C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yEAgG5B;;;mBAGG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA/FL;;;;GAIG;AAEH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,gBAExC;IAEC,SAAS,CAAC,WAAW,EAAG,iBAAiB,CAAC;IAE1C;;;;OAIG;IAGH,OAAO,CAAC,YAAY,CA+BlB;IAEF;;OAEG;IAEH,KAAK,SAAkB;IAEvB;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,IAAI,UAAQ;IAEZ;;OAEG;IAEH,IAAI,WAAoB;IAExB;;OAEG;IAEH,IAAI,WAAgB;IAEpB,MAAM;IAUN;;;OAGG;IACH,MAAM,KAAK,gBAAgB,WAE1B;IAED;;OAEG;IACH,MAAM,KAAK,UAAU,WAEpB;IAED,MAAM,CAAC,MAAM,MAAU;CACxB","file":"filter-tag.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, property, query, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport Close16 from '@carbon/icons/lib/close/16';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TAG_SIZE, TAG_TYPE } from './defs';\nimport styles from './tag.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nexport { TAG_SIZE, TAG_TYPE };\n\nconst { prefix } = settings;\n\n/**\n * Filter tag.\n *\n * @element bx-filter-tag\n */\n@customElement(`${prefix}-filter-tag`)\nexport default class BXFilterTag extends HostListenerMixin(\n FocusMixin(LitElement)\n) {\n @query('button')\n protected _buttonNode!: HTMLButtonElement;\n\n /**\n * Handles `click` event on this element.\n *\n * @param event The event.\n */\n @HostListener('shadowRoot:click')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = (event: MouseEvent) => {\n if (event.composedPath().indexOf(this._buttonNode!) >= 0) {\n if (this.disabled) {\n event.stopPropagation();\n } else if (this.open) {\n const init = {\n bubbles: true,\n cancelable: true,\n composed: true,\n detail: {\n triggeredBy: event.target,\n },\n };\n if (\n this.dispatchEvent(\n new CustomEvent(\n (this.constructor as typeof BXFilterTag).eventBeforeClose,\n init\n )\n )\n ) {\n this.open = false;\n this.dispatchEvent(\n new CustomEvent(\n (this.constructor as typeof BXFilterTag).eventClose,\n init\n )\n );\n }\n }\n }\n };\n\n /**\n * Text to show on filter tag \"clear\" buttons. Corresponds to the attribute with the same name\n */\n @property({ type: String, reflect: true })\n title = 'Clear filter';\n\n /**\n * `true` if the tag should be disabled\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * `true` if the tag should be open.\n */\n @property({ type: Boolean, reflect: true })\n open = true;\n\n /**\n * The size of the tag.\n */\n @property({ reflect: true })\n size = TAG_SIZE.REGULAR;\n\n /**\n * The type of the tag.\n */\n @property({ reflect: true })\n type = TAG_TYPE.RED;\n\n render() {\n const { disabled } = this;\n return html`\n <slot></slot>\n <button class=\"${prefix}--tag__close-icon\" ?disabled=${disabled}>\n ${Close16({ 'aria-label': this.title })}\n </button>\n `;\n }\n\n /**\n * The name of the custom event fired before this tag is being closed upon a user gesture.\n * Cancellation of this event stops the user-initiated action of closing this tag.\n */\n static get eventBeforeClose() {\n return `${prefix}-filter-tag-beingclosed`;\n }\n\n /**\n * The name of the custom event fired after this tag is closed upon a user gesture.\n */\n static get eventClose() {\n return `${prefix}-filter-tag-closed`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n"]}
@@ -4,13 +4,13 @@ let _ = t => t,
4
4
  /**
5
5
  * @license
6
6
  *
7
- * Copyright IBM Corp. 2019, 2022
7
+ * Copyright IBM Corp. 2019, 2023
8
8
  *
9
9
  * This source code is licensed under the Apache-2.0 license found in the
10
10
  * LICENSE file in the root directory of this source tree.
11
11
  */
12
12
 
13
- import { html, property, query, customElement, LitElement } from 'lit-element';
13
+ import { html, property, query, LitElement } from 'lit-element';
14
14
  import settings from 'carbon-components/es/globals/js/settings';
15
15
  import Close16 from "../../icons/close/16";
16
16
  import FocusMixin from '../../globals/mixins/focus';
@@ -18,6 +18,7 @@ import HostListener from '../../globals/decorators/host-listener';
18
18
  import HostListenerMixin from '../../globals/mixins/host-listener';
19
19
  import { TAG_SIZE, TAG_TYPE } from './defs';
20
20
  import styles from "././tag.css.js";
21
+ import { carbonElement as customElement } from '../../globals/decorators/carbon-element';
21
22
  export { TAG_SIZE, TAG_TYPE };
22
23
  const {
23
24
  prefix
@@ -1 +1 @@
1
- {"version":3,"file":"filter-tag.js","names":["html","property","query","customElement","LitElement","settings","Close16","FocusMixin","HostListener","HostListenerMixin","TAG_SIZE","TAG_TYPE","styles","prefix","BXFilterTag","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","decorators","key","value","event","composedPath","indexOf","_buttonNode","disabled","stopPropagation","open","init","bubbles","cancelable","composed","detail","triggeredBy","target","dispatchEvent","CustomEvent","eventBeforeClose","eventClose","type","String","reflect","Boolean","REGULAR","RED","render","_t","_","title","static","default"],"sources":["components/tag/filter-tag.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2022\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, property, query, customElement, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport Close16 from '@carbon/icons/lib/close/16';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TAG_SIZE, TAG_TYPE } from './defs';\nimport styles from './tag.scss';\n\nexport { TAG_SIZE, TAG_TYPE };\n\nconst { prefix } = settings;\n\n/**\n * Filter tag.\n *\n * @element bx-filter-tag\n */\n@customElement(`${prefix}-filter-tag`)\nexport default class BXFilterTag extends HostListenerMixin(\n FocusMixin(LitElement)\n) {\n @query('button')\n protected _buttonNode!: HTMLButtonElement;\n\n /**\n * Handles `click` event on this element.\n *\n * @param event The event.\n */\n @HostListener('shadowRoot:click')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = (event: MouseEvent) => {\n if (event.composedPath().indexOf(this._buttonNode!) >= 0) {\n if (this.disabled) {\n event.stopPropagation();\n } else if (this.open) {\n const init = {\n bubbles: true,\n cancelable: true,\n composed: true,\n detail: {\n triggeredBy: event.target,\n },\n };\n if (\n this.dispatchEvent(\n new CustomEvent(\n (this.constructor as typeof BXFilterTag).eventBeforeClose,\n init\n )\n )\n ) {\n this.open = false;\n this.dispatchEvent(\n new CustomEvent(\n (this.constructor as typeof BXFilterTag).eventClose,\n init\n )\n );\n }\n }\n }\n };\n\n /**\n * Text to show on filter tag \"clear\" buttons. Corresponds to the attribute with the same name\n */\n @property({ type: String, reflect: true })\n title = 'Clear filter';\n\n /**\n * `true` if the tag should be disabled\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * `true` if the tag should be open.\n */\n @property({ type: Boolean, reflect: true })\n open = true;\n\n /**\n * The size of the tag.\n */\n @property({ reflect: true })\n size = TAG_SIZE.REGULAR;\n\n /**\n * The type of the tag.\n */\n @property({ reflect: true })\n type = TAG_TYPE.RED;\n\n render() {\n const { disabled } = this;\n return html`\n <slot></slot>\n <button class=\"${prefix}--tag__close-icon\" ?disabled=${disabled}>\n ${Close16({ 'aria-label': this.title })}\n </button>\n `;\n }\n\n /**\n * The name of the custom event fired before this tag is being closed upon a user gesture.\n * Cancellation of this event stops the user-initiated action of closing this tag.\n */\n static get eventBeforeClose() {\n return `${prefix}-filter-tag-beingclosed`;\n }\n\n /**\n * The name of the custom event fired after this tag is closed upon a user gesture.\n */\n static get eventClose() {\n return `${prefix}-filter-tag-closed`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"filter-tag.js","names":["html","property","query","LitElement","settings","Close16","FocusMixin","HostListener","HostListenerMixin","TAG_SIZE","TAG_TYPE","styles","carbonElement","customElement","prefix","BXFilterTag","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","decorators","key","value","event","composedPath","indexOf","_buttonNode","disabled","stopPropagation","open","init","bubbles","cancelable","composed","detail","triggeredBy","target","dispatchEvent","CustomEvent","eventBeforeClose","eventClose","type","String","reflect","Boolean","REGULAR","RED","render","_t","_","title","static","default"],"sources":["components/tag/filter-tag.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, property, query, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport Close16 from '@carbon/icons/lib/close/16';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TAG_SIZE, TAG_TYPE } from './defs';\nimport styles from './tag.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nexport { TAG_SIZE, TAG_TYPE };\n\nconst { prefix } = settings;\n\n/**\n * Filter tag.\n *\n * @element bx-filter-tag\n */\n@customElement(`${prefix}-filter-tag`)\nexport default class BXFilterTag extends HostListenerMixin(\n FocusMixin(LitElement)\n) {\n @query('button')\n protected _buttonNode!: HTMLButtonElement;\n\n /**\n * Handles `click` event on this element.\n *\n * @param event The event.\n */\n @HostListener('shadowRoot:click')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = (event: MouseEvent) => {\n if (event.composedPath().indexOf(this._buttonNode!) >= 0) {\n if (this.disabled) {\n event.stopPropagation();\n } else if (this.open) {\n const init = {\n bubbles: true,\n cancelable: true,\n composed: true,\n detail: {\n triggeredBy: event.target,\n },\n };\n if (\n this.dispatchEvent(\n new CustomEvent(\n (this.constructor as typeof BXFilterTag).eventBeforeClose,\n init\n )\n )\n ) {\n this.open = false;\n this.dispatchEvent(\n new CustomEvent(\n (this.constructor as typeof BXFilterTag).eventClose,\n init\n )\n );\n }\n }\n }\n };\n\n /**\n * Text to show on filter tag \"clear\" buttons. Corresponds to the attribute with the same name\n */\n @property({ type: String, reflect: true })\n title = 'Clear filter';\n\n /**\n * `true` if the tag should be disabled\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * `true` if the tag should be open.\n */\n @property({ type: Boolean, reflect: true })\n open = true;\n\n /**\n * The size of the tag.\n */\n @property({ reflect: true })\n size = TAG_SIZE.REGULAR;\n\n /**\n * The type of the tag.\n */\n @property({ reflect: true })\n type = TAG_TYPE.RED;\n\n render() {\n const { disabled } = this;\n return html`\n <slot></slot>\n <button class=\"${prefix}--tag__close-icon\" ?disabled=${disabled}>\n ${Close16({ 'aria-label': this.title })}\n </button>\n `;\n }\n\n /**\n * The name of the custom event fired before this tag is being closed upon a user gesture.\n * Cancellation of this event stops the user-initiated action of closing this tag.\n */\n static get eventBeforeClose() {\n return `${prefix}-filter-tag-beingclosed`;\n }\n\n /**\n * The name of the custom event fired after this tag is closed upon a user gesture.\n */\n static get eventClose() {\n return `${prefix}-filter-tag-closed`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,IAAI,EAAEC,QAAQ,EAAEC,KAAK,EAAEC,UAAU,QAAQ,aAAa;AAC/D,OAAOC,QAAQ,MAAM,0CAA0C;AAC/D,OAAOC,OAAO,MAAM,sBAA4B;AAChD,OAAOC,UAAU,MAAM,4BAA4B;AACnD,OAAOC,YAAY,MAAM,wCAAwC;AACjE,OAAOC,iBAAiB,MAAM,oCAAoC;AAClE,SAASC,QAAQ,EAAEC,QAAQ,QAAQ,QAAQ;AAC3C,OAAOC,MAAM,MAAM,gBAAY;AAC/B,SAASC,aAAa,IAAIC,aAAa,QAAQ,yCAAyC;AAExF,SAASJ,QAAQ,EAAEC,QAAQ;AAE3B,MAAM;EAAEI;AAAO,CAAC,GAAGV,QAAQ;;AAE3B;AACA;AACA;AACA;AACA;AAJA,IAMqBW,WAAW,GAAAC,SAAA,EAD/BH,aAAa,CAAE,GAAEC,MAAO,aAAY,CAAC,aAAAG,WAAA,EAAAC,kBAAA;EAAtC,MACqBH,WAAW,SAAAG,kBAAA,CAE9B;IAAAC,YAAA,GAAAC,IAAA;MAAA,SAAAA,IAAA;MAAAH,WAAA;IAAA;EAoGF;EAAC;IAAAI,CAAA,EAtGoBN,WAAW;IAAAO,CAAA;MAAAC,IAAA;MAAAC,UAAA,GAG7BtB,KAAK,CAAC,QAAQ,CAAC;MAAAuB,GAAA;MAAAC,KAAA;IAAA;MAAAH,IAAA;MAAAC,UAAA,GAQfjB,YAAY,CAAC,kBAAkB,CAAC;MAAAkB,GAAA;MAAAC,MAAA;QAAA,OAETC,KAAiB,IAAK;UAC5C,IAAIA,KAAK,CAACC,YAAY,EAAE,CAACC,OAAO,CAAC,IAAI,CAACC,WAAW,CAAE,IAAI,CAAC,EAAE;YACxD,IAAI,IAAI,CAACC,QAAQ,EAAE;cACjBJ,KAAK,CAACK,eAAe,EAAE;YACzB,CAAC,MAAM,IAAI,IAAI,CAACC,IAAI,EAAE;cACpB,MAAMC,IAAI,GAAG;gBACXC,OAAO,EAAE,IAAI;gBACbC,UAAU,EAAE,IAAI;gBAChBC,QAAQ,EAAE,IAAI;gBACdC,MAAM,EAAE;kBACNC,WAAW,EAAEZ,KAAK,CAACa;gBACrB;cACF,CAAC;cACD,IACE,IAAI,CAACC,aAAa,CAChB,IAAIC,WAAW,CACZ,IAAI,CAACvB,WAAW,CAAwBwB,gBAAgB,EACzDT,IAAI,CACL,CACF,EACD;gBACA,IAAI,CAACD,IAAI,GAAG,KAAK;gBACjB,IAAI,CAACQ,aAAa,CAChB,IAAIC,WAAW,CACZ,IAAI,CAACvB,WAAW,CAAwByB,UAAU,EACnDV,IAAI,CACL,CACF;cACH;YACF;UACF;QACF,CAAC;MAAA;IAAA;MAAAX,IAAA;MAAAC,UAAA,GAKAvB,QAAQ,CAAC;QAAE4C,IAAI,EAAEC,MAAM;QAAEC,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAtB,GAAA;MAAAC,MAAA;QAAA,OAClC,cAAc;MAAA;IAAA;MAAAH,IAAA;MAAAC,UAAA,GAKrBvB,QAAQ,CAAC;QAAE4C,IAAI,EAAEG,OAAO;QAAED,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAtB,GAAA;MAAAC,MAAA;QAAA,OAChC,KAAK;MAAA;IAAA;MAAAH,IAAA;MAAAC,UAAA,GAKfvB,QAAQ,CAAC;QAAE4C,IAAI,EAAEG,OAAO;QAAED,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAtB,GAAA;MAAAC,MAAA;QAAA,OACpC,IAAI;MAAA;IAAA;MAAAH,IAAA;MAAAC,UAAA,GAKVvB,QAAQ,CAAC;QAAE8C,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAtB,GAAA;MAAAC,MAAA;QAAA,OACrBjB,QAAQ,CAACwC,OAAO;MAAA;IAAA;MAAA1B,IAAA;MAAAC,UAAA,GAKtBvB,QAAQ,CAAC;QAAE8C,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAtB,GAAA;MAAAC,MAAA;QAAA,OACrBhB,QAAQ,CAACwC,GAAG;MAAA;IAAA;MAAA3B,IAAA;MAAAE,GAAA;MAAAC,KAAA;MApEnB;AACF;AACA;AACA;AACA;;MAoCE;AACF;AACA;;MAIE;AACF;AACA;;MAIE;AACF;AACA;;MAIE;AACF;AACA;;MAIE;AACF;AACA;;MAIE,SAAAyB,OAAA,EAAS;QACP,MAAM;UAAEpB;QAAS,CAAC,GAAG,IAAI;QACzB,OAAO/B,IAAI,CAAAoD,EAAA,KAAAA,EAAA,GAAAC,CAAA,2FAEQvC,MAAM,EAAgCiB,QAAQ,EAC3D1B,OAAO,CAAC;UAAE,YAAY,EAAE,IAAI,CAACiD;QAAM,CAAC,CAAC;MAG7C;;MAEA;AACF;AACA;AACA;IAHE;MAAA/B,IAAA;MAAAgC,MAAA;MAAA9B,GAAA;MAAAC,KAAA,EAIA,SAAAiB,iBAAA,EAA8B;QAC5B,OAAQ,GAAE7B,MAAO,yBAAwB;MAC3C;;MAEA;AACF;AACA;IAFE;MAAAS,IAAA;MAAAgC,MAAA;MAAA9B,GAAA;MAAAC,KAAA,EAGA,SAAAkB,WAAA,EAAwB;QACtB,OAAQ,GAAE9B,MAAO,oBAAmB;MACtC;IAAC;MAAAS,IAAA;MAAAgC,MAAA;MAAA9B,GAAA;MAAAC,MAAA;QAAA,OAEef,MAAM;MAAA;IAAA;EAAA;AAAA,GArGiBH,iBAAiB,CACxDF,UAAU,CAACH,UAAU,CAAC,CACvB;AAAA,SAFoBY,WAAW,IAAAyC,OAAA"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *
4
- * Copyright IBM Corp. 2019, 2022
4
+ * Copyright IBM Corp. 2019, 2023
5
5
  *
6
6
  * This source code is licensed under the Apache-2.0 license found in the
7
7
  * LICENSE file in the root directory of this source tree.
@@ -1 +1 @@
1
- {"version":3,"sources":["components/tag/tag.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAiC,UAAU,EAAE,MAAM,aAAa,CAAC;AAExE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAG5C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AAI9B;;;;GAIG;AAEH,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,UAAU;IAC3C;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,IAAI,WAAoB;IAExB;;OAEG;IAEH,IAAI,WAAiB;IAErB,MAAM;IAIN,MAAM,CAAC,MAAM,MAAU;CACxB","file":"tag.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2022\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, property, customElement, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport { TAG_SIZE, TAG_TYPE } from './defs';\nimport styles from './tag.scss';\n\nexport { TAG_SIZE, TAG_TYPE };\n\nconst { prefix } = settings;\n\n/**\n * Tag.\n *\n * @element bx-tag\n */\n@customElement(`${prefix}-tag`)\nexport default class BXTag extends LitElement {\n /**\n * `true` if the tag should be disabled\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * The size of the tag.\n */\n @property({ reflect: true })\n size = TAG_SIZE.REGULAR;\n\n /**\n * The type of the tag.\n */\n @property({ reflect: true })\n type = TAG_TYPE.GRAY;\n\n render() {\n return html` <slot></slot> `;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n"]}
1
+ {"version":3,"sources":["components/tag/tag.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAkB,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzD,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAI5C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AAI9B;;;;GAIG;AAEH,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,UAAU;IAC3C;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,IAAI,WAAoB;IAExB;;OAEG;IAEH,IAAI,WAAiB;IAErB,MAAM;IAIN,MAAM,CAAC,MAAM,MAAU;CACxB","file":"tag.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, property, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport { TAG_SIZE, TAG_TYPE } from './defs';\nimport styles from './tag.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nexport { TAG_SIZE, TAG_TYPE };\n\nconst { prefix } = settings;\n\n/**\n * Tag.\n *\n * @element bx-tag\n */\n@customElement(`${prefix}-tag`)\nexport default class BXTag extends LitElement {\n /**\n * `true` if the tag should be disabled\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * The size of the tag.\n */\n @property({ reflect: true })\n size = TAG_SIZE.REGULAR;\n\n /**\n * The type of the tag.\n */\n @property({ reflect: true })\n type = TAG_TYPE.GRAY;\n\n render() {\n return html` <slot></slot> `;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n"]}
@@ -4,16 +4,17 @@ let _ = t => t,
4
4
  /**
5
5
  * @license
6
6
  *
7
- * Copyright IBM Corp. 2019, 2022
7
+ * Copyright IBM Corp. 2019, 2023
8
8
  *
9
9
  * This source code is licensed under the Apache-2.0 license found in the
10
10
  * LICENSE file in the root directory of this source tree.
11
11
  */
12
12
 
13
- import { html, property, customElement, LitElement } from 'lit-element';
13
+ import { html, property, LitElement } from 'lit-element';
14
14
  import settings from 'carbon-components/es/globals/js/settings';
15
15
  import { TAG_SIZE, TAG_TYPE } from './defs';
16
16
  import styles from "././tag.css.js";
17
+ import { carbonElement as customElement } from '../../globals/decorators/carbon-element';
17
18
  export { TAG_SIZE, TAG_TYPE };
18
19
  const {
19
20
  prefix
@@ -1 +1 @@
1
- {"version":3,"file":"tag.js","names":["html","property","customElement","LitElement","settings","TAG_SIZE","TAG_TYPE","styles","prefix","BXTag","_decorate","_initialize","_LitElement","constructor","args","F","d","kind","decorators","type","Boolean","reflect","key","value","REGULAR","GRAY","render","_t","_","static","default"],"sources":["components/tag/tag.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2022\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, property, customElement, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport { TAG_SIZE, TAG_TYPE } from './defs';\nimport styles from './tag.scss';\n\nexport { TAG_SIZE, TAG_TYPE };\n\nconst { prefix } = settings;\n\n/**\n * Tag.\n *\n * @element bx-tag\n */\n@customElement(`${prefix}-tag`)\nexport default class BXTag extends LitElement {\n /**\n * `true` if the tag should be disabled\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * The size of the tag.\n */\n @property({ reflect: true })\n size = TAG_SIZE.REGULAR;\n\n /**\n * The type of the tag.\n */\n @property({ reflect: true })\n type = TAG_TYPE.GRAY;\n\n render() {\n return html` <slot></slot> `;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,IAAI,EAAEC,QAAQ,EAAEC,aAAa,EAAEC,UAAU,QAAQ,aAAa;AACvE,OAAOC,QAAQ,MAAM,0CAA0C;AAC/D,SAASC,QAAQ,EAAEC,QAAQ,QAAQ,QAAQ;AAC3C,OAAOC,MAAM,MAAM,gBAAY;AAE/B,SAASF,QAAQ,EAAEC,QAAQ;AAE3B,MAAM;EAAEE;AAAO,CAAC,GAAGJ,QAAQ;;AAE3B;AACA;AACA;AACA;AACA;AAJA,IAMqBK,KAAK,GAAAC,SAAA,EADzBR,aAAa,CAAE,GAAEM,MAAO,MAAK,CAAC,aAAAG,WAAA,EAAAC,WAAA;EAA/B,MACqBH,KAAK,SAAAG,WAAA,CAAoB;IAAAC,YAAA,GAAAC,IAAA;MAAA,SAAAA,IAAA;MAAAH,WAAA;IAAA;EAwB9C;EAAC;IAAAI,CAAA,EAxBoBN,KAAK;IAAAO,CAAA;MAAAC,IAAA;MAAAC,UAAA,GAIvBjB,QAAQ,CAAC;QAAEkB,IAAI,EAAEC,OAAO;QAAEC,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAC,GAAA;MAAAC,MAAA;QAAA,OAChC,KAAK;MAAA;IAAA;MAAAN,IAAA;MAAAC,UAAA,GAKfjB,QAAQ,CAAC;QAAEoB,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAC,GAAA;MAAAC,MAAA;QAAA,OACrBlB,QAAQ,CAACmB,OAAO;MAAA;IAAA;MAAAP,IAAA;MAAAC,UAAA,GAKtBjB,QAAQ,CAAC;QAAEoB,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAC,GAAA;MAAAC,MAAA;QAAA,OACrBjB,QAAQ,CAACmB,IAAI;MAAA;IAAA;MAAAR,IAAA;MAAAK,GAAA;MAAAC,KAAA;MAhBpB;AACF;AACA;;MAIE;AACF;AACA;;MAIE;AACF;AACA;;MAIE,SAAAG,OAAA,EAAS;QACP,OAAO1B,IAAI,CAAA2B,EAAA,KAAAA,EAAA,GAAAC,CAAA;MACb;IAAC;MAAAX,IAAA;MAAAY,MAAA;MAAAP,GAAA;MAAAC,MAAA;QAAA,OAEehB,MAAM;MAAA;IAAA;EAAA;AAAA,GAvBWJ,UAAU;AAAA,SAAxBM,KAAK,IAAAqB,OAAA"}
1
+ {"version":3,"file":"tag.js","names":["html","property","LitElement","settings","TAG_SIZE","TAG_TYPE","styles","carbonElement","customElement","prefix","BXTag","_decorate","_initialize","_LitElement","constructor","args","F","d","kind","decorators","type","Boolean","reflect","key","value","REGULAR","GRAY","render","_t","_","static","default"],"sources":["components/tag/tag.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, property, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport { TAG_SIZE, TAG_TYPE } from './defs';\nimport styles from './tag.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nexport { TAG_SIZE, TAG_TYPE };\n\nconst { prefix } = settings;\n\n/**\n * Tag.\n *\n * @element bx-tag\n */\n@customElement(`${prefix}-tag`)\nexport default class BXTag extends LitElement {\n /**\n * `true` if the tag should be disabled\n */\n @property({ type: Boolean, reflect: true })\n disabled = false;\n\n /**\n * The size of the tag.\n */\n @property({ reflect: true })\n size = TAG_SIZE.REGULAR;\n\n /**\n * The type of the tag.\n */\n @property({ reflect: true })\n type = TAG_TYPE.GRAY;\n\n render() {\n return html` <slot></slot> `;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,IAAI,EAAEC,QAAQ,EAAEC,UAAU,QAAQ,aAAa;AACxD,OAAOC,QAAQ,MAAM,0CAA0C;AAC/D,SAASC,QAAQ,EAAEC,QAAQ,QAAQ,QAAQ;AAC3C,OAAOC,MAAM,MAAM,gBAAY;AAC/B,SAASC,aAAa,IAAIC,aAAa,QAAQ,yCAAyC;AAExF,SAASJ,QAAQ,EAAEC,QAAQ;AAE3B,MAAM;EAAEI;AAAO,CAAC,GAAGN,QAAQ;;AAE3B;AACA;AACA;AACA;AACA;AAJA,IAMqBO,KAAK,GAAAC,SAAA,EADzBH,aAAa,CAAE,GAAEC,MAAO,MAAK,CAAC,aAAAG,WAAA,EAAAC,WAAA;EAA/B,MACqBH,KAAK,SAAAG,WAAA,CAAoB;IAAAC,YAAA,GAAAC,IAAA;MAAA,SAAAA,IAAA;MAAAH,WAAA;IAAA;EAwB9C;EAAC;IAAAI,CAAA,EAxBoBN,KAAK;IAAAO,CAAA;MAAAC,IAAA;MAAAC,UAAA,GAIvBlB,QAAQ,CAAC;QAAEmB,IAAI,EAAEC,OAAO;QAAEC,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAC,GAAA;MAAAC,MAAA;QAAA,OAChC,KAAK;MAAA;IAAA;MAAAN,IAAA;MAAAC,UAAA,GAKflB,QAAQ,CAAC;QAAEqB,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAC,GAAA;MAAAC,MAAA;QAAA,OACrBpB,QAAQ,CAACqB,OAAO;MAAA;IAAA;MAAAP,IAAA;MAAAC,UAAA,GAKtBlB,QAAQ,CAAC;QAAEqB,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAC,GAAA;MAAAC,MAAA;QAAA,OACrBnB,QAAQ,CAACqB,IAAI;MAAA;IAAA;MAAAR,IAAA;MAAAK,GAAA;MAAAC,KAAA;MAhBpB;AACF;AACA;;MAIE;AACF;AACA;;MAIE;AACF;AACA;;MAIE,SAAAG,OAAA,EAAS;QACP,OAAO3B,IAAI,CAAA4B,EAAA,KAAAA,EAAA,GAAAC,CAAA;MACb;IAAC;MAAAX,IAAA;MAAAY,MAAA;MAAAP,GAAA;MAAAC,MAAA;QAAA,OAEelB,MAAM;MAAA;IAAA;EAAA;AAAA,GAvBWJ,UAAU;AAAA,SAAxBQ,KAAK,IAAAqB,OAAA"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *
4
- * Copyright IBM Corp. 2019
4
+ * Copyright IBM Corp. 2019, 2023
5
5
  *
6
6
  * This source code is licensed under the Apache-2.0 license found in the
7
7
  * LICENSE file in the root directory of this source tree.
@@ -1 +1 @@
1
- {"version":3,"sources":["components/textarea/textarea-skeleton.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAuB,UAAU,EAAE,MAAM,aAAa,CAAC;AAM9D;;GAEG;AACH,cACM,kBAAmB,SAAQ,UAAU;IACzC,MAAM;IAON,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,kBAAkB,CAAC","file":"textarea-skeleton.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019\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, customElement, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport styles from './textarea.scss';\n\nconst { prefix } = settings;\n\n/**\n * Skeleton of text area.\n */\n@customElement(`${prefix}-textarea-skeleton`)\nclass BXTextareaSkeleton extends LitElement {\n render() {\n return html`\n <span class=\"${prefix}--label ${prefix}--skeleton\"></span>\n <div class=\"${prefix}--skeleton ${prefix}--text-area\"></div>\n `;\n }\n\n static styles = styles;\n}\n\nexport default BXTextareaSkeleton;\n"]}
1
+ {"version":3,"sources":["components/textarea/textarea-skeleton.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAQ,UAAU,EAAE,MAAM,aAAa,CAAC;AAO/C;;GAEG;AACH,cACM,kBAAmB,SAAQ,UAAU;IACzC,MAAM;IAON,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,kBAAkB,CAAC","file":"textarea-skeleton.d.ts","sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport styles from './textarea.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nconst { prefix } = settings;\n\n/**\n * Skeleton of text area.\n */\n@customElement(`${prefix}-textarea-skeleton`)\nclass BXTextareaSkeleton extends LitElement {\n render() {\n return html`\n <span class=\"${prefix}--label ${prefix}--skeleton\"></span>\n <div class=\"${prefix}--skeleton ${prefix}--text-area\"></div>\n `;\n }\n\n static styles = styles;\n}\n\nexport default BXTextareaSkeleton;\n"]}
@@ -4,15 +4,16 @@ let _ = t => t,
4
4
  /**
5
5
  * @license
6
6
  *
7
- * Copyright IBM Corp. 2019
7
+ * Copyright IBM Corp. 2019, 2023
8
8
  *
9
9
  * This source code is licensed under the Apache-2.0 license found in the
10
10
  * LICENSE file in the root directory of this source tree.
11
11
  */
12
12
 
13
- import { html, customElement, LitElement } from 'lit-element';
13
+ import { html, LitElement } from 'lit-element';
14
14
  import settings from 'carbon-components/es/globals/js/settings';
15
15
  import styles from "././textarea.css.js";
16
+ import { carbonElement as customElement } from '../../globals/decorators/carbon-element';
16
17
  const {
17
18
  prefix
18
19
  } = settings;
@@ -1 +1 @@
1
- {"version":3,"file":"textarea-skeleton.js","names":["html","customElement","LitElement","settings","styles","prefix","BXTextareaSkeleton","_decorate","_initialize","_LitElement","constructor","args","F","d","kind","key","value","render","_t","_","static"],"sources":["components/textarea/textarea-skeleton.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019\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, customElement, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport styles from './textarea.scss';\n\nconst { prefix } = settings;\n\n/**\n * Skeleton of text area.\n */\n@customElement(`${prefix}-textarea-skeleton`)\nclass BXTextareaSkeleton extends LitElement {\n render() {\n return html`\n <span class=\"${prefix}--label ${prefix}--skeleton\"></span>\n <div class=\"${prefix}--skeleton ${prefix}--text-area\"></div>\n `;\n }\n\n static styles = styles;\n}\n\nexport default BXTextareaSkeleton;\n"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,IAAI,EAAEC,aAAa,EAAEC,UAAU,QAAQ,aAAa;AAC7D,OAAOC,QAAQ,MAAM,0CAA0C;AAC/D,OAAOC,MAAM,MAAM,qBAAiB;AAEpC,MAAM;EAAEC;AAAO,CAAC,GAAGF,QAAQ;;AAE3B;AACA;AACA;AAFA,IAIMG,kBAAkB,GAAAC,SAAA,EADvBN,aAAa,CAAE,GAAEI,MAAO,oBAAmB,CAAC,aAAAG,WAAA,EAAAC,WAAA;EAA7C,MACMH,kBAAkB,SAAAG,WAAA,CAAoB;IAAAC,YAAA,GAAAC,IAAA;MAAA,SAAAA,IAAA;MAAAH,WAAA;IAAA;EAS5C;EAAC;IAAAI,CAAA,EATKN,kBAAkB;IAAAO,CAAA;MAAAC,IAAA;MAAAC,GAAA;MAAAC,KAAA,EACtB,SAAAC,OAAA,EAAS;QACP,OAAOjB,IAAI,CAAAkB,EAAA,KAAAA,EAAA,GAAAC,CAAA,0GACMd,MAAM,EAAWA,MAAM,EACxBA,MAAM,EAAcA,MAAM;MAE5C;IAAC;MAAAS,IAAA;MAAAM,MAAA;MAAAL,GAAA;MAAAC,MAAA;QAAA,OAEeZ,MAAM;MAAA;IAAA;EAAA;AAAA,GARSF,UAAU;AAW3C,eAAeI,kBAAkB"}
1
+ {"version":3,"file":"textarea-skeleton.js","names":["html","LitElement","settings","styles","carbonElement","customElement","prefix","BXTextareaSkeleton","_decorate","_initialize","_LitElement","constructor","args","F","d","kind","key","value","render","_t","_","static"],"sources":["components/textarea/textarea-skeleton.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2019, 2023\n *\n * This source code is licensed under the Apache-2.0 license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { html, LitElement } from 'lit-element';\nimport settings from 'carbon-components/es/globals/js/settings';\nimport styles from './textarea.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\nconst { prefix } = settings;\n\n/**\n * Skeleton of text area.\n */\n@customElement(`${prefix}-textarea-skeleton`)\nclass BXTextareaSkeleton extends LitElement {\n render() {\n return html`\n <span class=\"${prefix}--label ${prefix}--skeleton\"></span>\n <div class=\"${prefix}--skeleton ${prefix}--text-area\"></div>\n `;\n }\n\n static styles = styles;\n}\n\nexport default BXTextareaSkeleton;\n"],"mappings":";;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,IAAI,EAAEC,UAAU,QAAQ,aAAa;AAC9C,OAAOC,QAAQ,MAAM,0CAA0C;AAC/D,OAAOC,MAAM,MAAM,qBAAiB;AACpC,SAASC,aAAa,IAAIC,aAAa,QAAQ,yCAAyC;AAExF,MAAM;EAAEC;AAAO,CAAC,GAAGJ,QAAQ;;AAE3B;AACA;AACA;AAFA,IAIMK,kBAAkB,GAAAC,SAAA,EADvBH,aAAa,CAAE,GAAEC,MAAO,oBAAmB,CAAC,aAAAG,WAAA,EAAAC,WAAA;EAA7C,MACMH,kBAAkB,SAAAG,WAAA,CAAoB;IAAAC,YAAA,GAAAC,IAAA;MAAA,SAAAA,IAAA;MAAAH,WAAA;IAAA;EAS5C;EAAC;IAAAI,CAAA,EATKN,kBAAkB;IAAAO,CAAA;MAAAC,IAAA;MAAAC,GAAA;MAAAC,KAAA,EACtB,SAAAC,OAAA,EAAS;QACP,OAAOlB,IAAI,CAAAmB,EAAA,KAAAA,EAAA,GAAAC,CAAA,0GACMd,MAAM,EAAWA,MAAM,EACxBA,MAAM,EAAcA,MAAM;MAE5C;IAAC;MAAAS,IAAA;MAAAM,MAAA;MAAAL,GAAA;MAAAC,MAAA;QAAA,OAEed,MAAM;MAAA;IAAA;EAAA;AAAA,GARSF,UAAU;AAW3C,eAAeM,kBAAkB"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * @license
3
3
  *
4
- * Copyright IBM Corp. 2019, 2022
4
+ * Copyright IBM Corp. 2019, 2023
5
5
  *
6
6
  * This source code is licensed under the Apache-2.0 license found in the
7
7
  * LICENSE file in the root directory of this source tree.