@carbon/web-components 2.0.0-rc.1 → 2.0.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 (723) hide show
  1. package/custom-elements.json +307 -79
  2. package/es/components/accordion/accordion-item.d.ts.map +1 -1
  3. package/es/components/accordion/accordion-item.js +3 -2
  4. package/es/components/accordion/accordion-item.js.map +1 -1
  5. package/es/components/accordion/accordion-skeleton.js.map +1 -1
  6. package/es/components/accordion/accordion.css.js +1 -1
  7. package/es/components/accordion/accordion.d.ts.map +1 -1
  8. package/es/components/accordion/accordion.js +2 -1
  9. package/es/components/accordion/accordion.js.map +1 -1
  10. package/es/components/accordion/accordion.rtl.css.js +1 -1
  11. package/es/components/accordion/defs.d.ts +1 -1
  12. package/es/components/accordion/defs.d.ts.map +1 -1
  13. package/es/components/accordion/defs.js +1 -1
  14. package/es/components/accordion/defs.js.map +1 -1
  15. package/es/components/accordion/index.d.ts +1 -1
  16. package/es/components/accordion/index.d.ts.map +1 -1
  17. package/es/components/accordion/index.js +1 -1
  18. package/es/components/accordion/index.js.map +1 -1
  19. package/es/components/breadcrumb/breadcrumb-item.d.ts.map +1 -1
  20. package/es/components/breadcrumb/breadcrumb-item.js +2 -6
  21. package/es/components/breadcrumb/breadcrumb-item.js.map +1 -1
  22. package/es/components/breadcrumb/breadcrumb-link.d.ts.map +1 -1
  23. package/es/components/breadcrumb/breadcrumb-link.js +2 -6
  24. package/es/components/breadcrumb/breadcrumb-link.js.map +1 -1
  25. package/es/components/breadcrumb/breadcrumb-overflow-menu.d.ts.map +1 -1
  26. package/es/components/breadcrumb/breadcrumb-overflow-menu.js +2 -6
  27. package/es/components/breadcrumb/breadcrumb-overflow-menu.js.map +1 -1
  28. package/es/components/breadcrumb/breadcrumb-skeleton.js.map +1 -1
  29. package/es/components/breadcrumb/breadcrumb.css.js +1 -1
  30. package/es/components/breadcrumb/breadcrumb.d.ts.map +1 -1
  31. package/es/components/breadcrumb/breadcrumb.js +3 -6
  32. package/es/components/breadcrumb/breadcrumb.js.map +1 -1
  33. package/es/components/breadcrumb/breadcrumb.rtl.css.js +1 -1
  34. package/es/components/breadcrumb/index.d.ts +1 -1
  35. package/es/components/breadcrumb/index.d.ts.map +1 -1
  36. package/es/components/breadcrumb/index.js +1 -1
  37. package/es/components/breadcrumb/index.js.map +1 -1
  38. package/es/components/button/button-set.js.map +1 -1
  39. package/es/components/button/button-skeleton.d.ts.map +1 -1
  40. package/es/components/button/button-skeleton.js +2 -4
  41. package/es/components/button/button-skeleton.js.map +1 -1
  42. package/es/components/button/button.css.js +1 -1
  43. package/es/components/button/button.d.ts +1 -1
  44. package/es/components/button/button.d.ts.map +1 -1
  45. package/es/components/button/button.js +12 -9
  46. package/es/components/button/button.js.map +1 -1
  47. package/es/components/button/button.rtl.css.js +1 -1
  48. package/es/components/button/defs.d.ts +1 -1
  49. package/es/components/button/defs.d.ts.map +1 -1
  50. package/es/components/button/defs.js +1 -1
  51. package/es/components/button/defs.js.map +1 -1
  52. package/es/components/button/index.d.ts +1 -1
  53. package/es/components/button/index.d.ts.map +1 -1
  54. package/es/components/button/index.js +1 -1
  55. package/es/components/button/index.js.map +1 -1
  56. package/es/components/checkbox/checkbox.css.js +1 -1
  57. package/es/components/checkbox/checkbox.d.ts.map +1 -1
  58. package/es/components/checkbox/checkbox.js +3 -9
  59. package/es/components/checkbox/checkbox.js.map +1 -1
  60. package/es/components/checkbox/checkbox.rtl.css.js +1 -1
  61. package/es/components/checkbox/index.d.ts +1 -1
  62. package/es/components/checkbox/index.d.ts.map +1 -1
  63. package/es/components/checkbox/index.js +1 -1
  64. package/es/components/checkbox/index.js.map +1 -1
  65. package/es/components/code-snippet/code-snippet-skeleton.d.ts.map +1 -1
  66. package/es/components/code-snippet/code-snippet-skeleton.js +3 -4
  67. package/es/components/code-snippet/code-snippet-skeleton.js.map +1 -1
  68. package/es/components/code-snippet/code-snippet.css.js +1 -1
  69. package/es/components/code-snippet/code-snippet.d.ts +4 -0
  70. package/es/components/code-snippet/code-snippet.d.ts.map +1 -1
  71. package/es/components/code-snippet/code-snippet.js +20 -9
  72. package/es/components/code-snippet/code-snippet.js.map +1 -1
  73. package/es/components/code-snippet/code-snippet.rtl.css.js +1 -1
  74. package/es/components/code-snippet/defs.d.ts +1 -1
  75. package/es/components/code-snippet/defs.d.ts.map +1 -1
  76. package/es/components/code-snippet/defs.js +1 -1
  77. package/es/components/code-snippet/defs.js.map +1 -1
  78. package/es/components/code-snippet/index.d.ts +1 -1
  79. package/es/components/code-snippet/index.d.ts.map +1 -1
  80. package/es/components/code-snippet/index.js +1 -1
  81. package/es/components/code-snippet/index.js.map +1 -1
  82. package/es/components/combo-box/combo-box-item.d.ts.map +1 -1
  83. package/es/components/combo-box/combo-box-item.js +2 -6
  84. package/es/components/combo-box/combo-box-item.js.map +1 -1
  85. package/es/components/combo-box/combo-box.css.js +1 -1
  86. package/es/components/combo-box/combo-box.d.ts.map +1 -1
  87. package/es/components/combo-box/combo-box.js +2 -1
  88. package/es/components/combo-box/combo-box.js.map +1 -1
  89. package/es/components/combo-box/combo-box.rtl.css.js +1 -1
  90. package/es/components/combo-box/index.d.ts +1 -1
  91. package/es/components/combo-box/index.d.ts.map +1 -1
  92. package/es/components/combo-box/index.js +1 -1
  93. package/es/components/combo-box/index.js.map +1 -1
  94. package/es/components/content-switcher/content-switcher-item.d.ts.map +1 -1
  95. package/es/components/content-switcher/content-switcher-item.js +3 -6
  96. package/es/components/content-switcher/content-switcher-item.js.map +1 -1
  97. package/es/components/content-switcher/content-switcher.css.js +1 -1
  98. package/es/components/content-switcher/content-switcher.d.ts.map +1 -1
  99. package/es/components/content-switcher/content-switcher.js +2 -1
  100. package/es/components/content-switcher/content-switcher.js.map +1 -1
  101. package/es/components/content-switcher/content-switcher.rtl.css.js +1 -1
  102. package/es/components/content-switcher/defs.d.ts +1 -1
  103. package/es/components/content-switcher/defs.d.ts.map +1 -1
  104. package/es/components/content-switcher/defs.js +1 -1
  105. package/es/components/content-switcher/defs.js.map +1 -1
  106. package/es/components/content-switcher/index.d.ts +1 -1
  107. package/es/components/content-switcher/index.d.ts.map +1 -1
  108. package/es/components/content-switcher/index.js +1 -1
  109. package/es/components/content-switcher/index.js.map +1 -1
  110. package/es/components/copy/copy.d.ts.map +1 -1
  111. package/es/components/copy/copy.js +3 -1
  112. package/es/components/copy/copy.js.map +1 -1
  113. package/es/components/copy-button/copy-button.css.js +1 -1
  114. package/es/components/copy-button/copy-button.d.ts +1 -1
  115. package/es/components/copy-button/copy-button.d.ts.map +1 -1
  116. package/es/components/copy-button/copy-button.js +7 -7
  117. package/es/components/copy-button/copy-button.js.map +1 -1
  118. package/es/components/copy-button/copy-button.rtl.css.js +1 -1
  119. package/es/components/copy-button/index.d.ts +1 -1
  120. package/es/components/copy-button/index.d.ts.map +1 -1
  121. package/es/components/copy-button/index.js +1 -1
  122. package/es/components/copy-button/index.js.map +1 -1
  123. package/es/components/data-table/data-table.css.js +1 -1
  124. package/es/components/data-table/data-table.rtl.css.js +1 -1
  125. package/es/components/data-table/index.d.ts +1 -1
  126. package/es/components/data-table/index.d.ts.map +1 -1
  127. package/es/components/data-table/index.js +1 -1
  128. package/es/components/data-table/index.js.map +1 -1
  129. package/es/components/data-table/table-batch-actions.d.ts.map +1 -1
  130. package/es/components/data-table/table-batch-actions.js +3 -7
  131. package/es/components/data-table/table-batch-actions.js.map +1 -1
  132. package/es/components/data-table/table-body.d.ts.map +1 -1
  133. package/es/components/data-table/table-body.js +3 -6
  134. package/es/components/data-table/table-body.js.map +1 -1
  135. package/es/components/data-table/table-cell.d.ts.map +1 -1
  136. package/es/components/data-table/table-cell.js +3 -7
  137. package/es/components/data-table/table-cell.js.map +1 -1
  138. package/es/components/data-table/table-expanded-row.d.ts.map +1 -1
  139. package/es/components/data-table/table-expanded-row.js +2 -1
  140. package/es/components/data-table/table-expanded-row.js.map +1 -1
  141. package/es/components/data-table/table-head.d.ts.map +1 -1
  142. package/es/components/data-table/table-head.js +2 -6
  143. package/es/components/data-table/table-head.js.map +1 -1
  144. package/es/components/data-table/table-header-cell.d.ts.map +1 -1
  145. package/es/components/data-table/table-header-cell.js +2 -1
  146. package/es/components/data-table/table-header-cell.js.map +1 -1
  147. package/es/components/data-table/table-header-row.d.ts.map +1 -1
  148. package/es/components/data-table/table-header-row.js +1 -1
  149. package/es/components/data-table/table-header-row.js.map +1 -1
  150. package/es/components/data-table/table-row.d.ts.map +1 -1
  151. package/es/components/data-table/table-row.js +3 -2
  152. package/es/components/data-table/table-row.js.map +1 -1
  153. package/es/components/data-table/table-skeleton.js.map +1 -1
  154. package/es/components/data-table/table-toolbar-content.d.ts.map +1 -1
  155. package/es/components/data-table/table-toolbar-content.js +4 -7
  156. package/es/components/data-table/table-toolbar-content.js.map +1 -1
  157. package/es/components/data-table/table-toolbar-search.d.ts.map +1 -1
  158. package/es/components/data-table/table-toolbar-search.js +3 -7
  159. package/es/components/data-table/table-toolbar-search.js.map +1 -1
  160. package/es/components/data-table/table-toolbar.d.ts +0 -8
  161. package/es/components/data-table/table-toolbar.d.ts.map +1 -1
  162. package/es/components/data-table/table-toolbar.js +3 -30
  163. package/es/components/data-table/table-toolbar.js.map +1 -1
  164. package/es/components/data-table/table.d.ts.map +1 -1
  165. package/es/components/data-table/table.js +3 -3
  166. package/es/components/data-table/table.js.map +1 -1
  167. package/es/components/date-picker/append-to-plugin.js.map +1 -1
  168. package/es/components/date-picker/css-class-plugin.js.map +1 -1
  169. package/es/components/date-picker/date-picker-input-skeleton.d.ts.map +1 -1
  170. package/es/components/date-picker/date-picker-input-skeleton.js +3 -4
  171. package/es/components/date-picker/date-picker-input-skeleton.js.map +1 -1
  172. package/es/components/date-picker/date-picker-input.d.ts.map +1 -1
  173. package/es/components/date-picker/date-picker-input.js +2 -1
  174. package/es/components/date-picker/date-picker-input.js.map +1 -1
  175. package/es/components/date-picker/date-picker.css.js +1 -1
  176. package/es/components/date-picker/date-picker.d.ts.map +1 -1
  177. package/es/components/date-picker/date-picker.js +7 -4
  178. package/es/components/date-picker/date-picker.js.map +1 -1
  179. package/es/components/date-picker/date-picker.rtl.css.js +1 -1
  180. package/es/components/date-picker/defs.d.ts +1 -1
  181. package/es/components/date-picker/defs.d.ts.map +1 -1
  182. package/es/components/date-picker/defs.js +1 -1
  183. package/es/components/date-picker/defs.js.map +1 -1
  184. package/es/components/date-picker/fix-events-plugin.js +9 -0
  185. package/es/components/date-picker/fix-events-plugin.js.map +1 -1
  186. package/es/components/date-picker/focus-plugin.d.ts.map +1 -1
  187. package/es/components/date-picker/focus-plugin.js +14 -4
  188. package/es/components/date-picker/focus-plugin.js.map +1 -1
  189. package/es/components/date-picker/icon-plugin.js.map +1 -1
  190. package/es/components/date-picker/index.d.ts +1 -1
  191. package/es/components/date-picker/index.d.ts.map +1 -1
  192. package/es/components/date-picker/index.js +1 -1
  193. package/es/components/date-picker/index.js.map +1 -1
  194. package/es/components/date-picker/iso-date.js.map +1 -1
  195. package/es/components/date-picker/month-select-plugin.js.map +1 -1
  196. package/es/components/date-picker/range-plugin.d.ts +21 -6
  197. package/es/components/date-picker/range-plugin.d.ts.map +1 -1
  198. package/es/components/date-picker/range-plugin.js +51 -17
  199. package/es/components/date-picker/range-plugin.js.map +1 -1
  200. package/es/components/date-picker/shadow-dom-events-plugin.js.map +1 -1
  201. package/es/components/date-picker/state-handshake-plugin.js.map +1 -1
  202. package/es/components/dropdown/defs.d.ts +1 -1
  203. package/es/components/dropdown/defs.d.ts.map +1 -1
  204. package/es/components/dropdown/defs.js +1 -1
  205. package/es/components/dropdown/defs.js.map +1 -1
  206. package/es/components/dropdown/dropdown-item.d.ts.map +1 -1
  207. package/es/components/dropdown/dropdown-item.js +3 -7
  208. package/es/components/dropdown/dropdown-item.js.map +1 -1
  209. package/es/components/dropdown/dropdown-skeleton.d.ts.map +1 -1
  210. package/es/components/dropdown/dropdown-skeleton.js +2 -4
  211. package/es/components/dropdown/dropdown-skeleton.js.map +1 -1
  212. package/es/components/dropdown/dropdown.css.js +1 -1
  213. package/es/components/dropdown/dropdown.d.ts +1 -3
  214. package/es/components/dropdown/dropdown.d.ts.map +1 -1
  215. package/es/components/dropdown/dropdown.js +2 -1
  216. package/es/components/dropdown/dropdown.js.map +1 -1
  217. package/es/components/dropdown/dropdown.rtl.css.js +1 -1
  218. package/es/components/dropdown/index.d.ts +1 -1
  219. package/es/components/dropdown/index.d.ts.map +1 -1
  220. package/es/components/dropdown/index.js +1 -1
  221. package/es/components/dropdown/index.js.map +1 -1
  222. package/es/components/file-uploader/defs.d.ts +1 -1
  223. package/es/components/file-uploader/defs.d.ts.map +1 -1
  224. package/es/components/file-uploader/defs.js +1 -1
  225. package/es/components/file-uploader/defs.js.map +1 -1
  226. package/es/components/file-uploader/demo-file-uploader.js.map +1 -1
  227. package/es/components/file-uploader/file-uploader-button.d.ts.map +1 -1
  228. package/es/components/file-uploader/file-uploader-button.js +1 -0
  229. package/es/components/file-uploader/file-uploader-button.js.map +1 -1
  230. package/es/components/file-uploader/file-uploader-drop-container.d.ts.map +1 -1
  231. package/es/components/file-uploader/file-uploader-drop-container.js +2 -1
  232. package/es/components/file-uploader/file-uploader-drop-container.js.map +1 -1
  233. package/es/components/file-uploader/file-uploader-item.d.ts.map +1 -1
  234. package/es/components/file-uploader/file-uploader-item.js +2 -1
  235. package/es/components/file-uploader/file-uploader-item.js.map +1 -1
  236. package/es/components/file-uploader/file-uploader.css.js +1 -1
  237. package/es/components/file-uploader/file-uploader.d.ts.map +1 -1
  238. package/es/components/file-uploader/file-uploader.js +3 -8
  239. package/es/components/file-uploader/file-uploader.js.map +1 -1
  240. package/es/components/file-uploader/file-uploader.rtl.css.js +1 -1
  241. package/es/components/file-uploader/index.d.ts +1 -1
  242. package/es/components/file-uploader/index.d.ts.map +1 -1
  243. package/es/components/file-uploader/index.js +1 -1
  244. package/es/components/file-uploader/index.js.map +1 -1
  245. package/es/components/floating-menu/defs.d.ts +1 -1
  246. package/es/components/floating-menu/defs.d.ts.map +1 -1
  247. package/es/components/floating-menu/defs.js +1 -1
  248. package/es/components/floating-menu/defs.js.map +1 -1
  249. package/es/components/floating-menu/floating-menu-trigger.d.ts +1 -1
  250. package/es/components/floating-menu/floating-menu-trigger.d.ts.map +1 -1
  251. package/es/components/floating-menu/floating-menu.js +9 -2
  252. package/es/components/floating-menu/floating-menu.js.map +1 -1
  253. package/es/components/floating-menu/index.d.ts +1 -1
  254. package/es/components/floating-menu/index.d.ts.map +1 -1
  255. package/es/components/floating-menu/index.js +1 -1
  256. package/es/components/floating-menu/index.js.map +1 -1
  257. package/es/components/form/form-item.css.js +1 -1
  258. package/es/components/form/form-item.d.ts.map +1 -1
  259. package/es/components/form/form-item.js +2 -6
  260. package/es/components/form/form-item.js.map +1 -1
  261. package/es/components/form/form-item.rtl.css.js +1 -1
  262. package/es/components/form/index.d.ts +1 -1
  263. package/es/components/form/index.d.ts.map +1 -1
  264. package/es/components/form/index.js +1 -1
  265. package/es/components/form/index.js.map +1 -1
  266. package/es/components/form-group/form-group.css.js +1 -1
  267. package/es/components/form-group/form-group.rtl.css.js +1 -1
  268. package/es/components/icon-button/icon-button.css.js +1 -1
  269. package/es/components/icon-button/icon-button.d.ts.map +1 -1
  270. package/es/components/icon-button/icon-button.js +3 -1
  271. package/es/components/icon-button/icon-button.js.map +1 -1
  272. package/es/components/icon-button/icon-button.rtl.css.js +1 -1
  273. package/es/components/inline-loading/defs.d.ts +1 -1
  274. package/es/components/inline-loading/defs.d.ts.map +1 -1
  275. package/es/components/inline-loading/defs.js +1 -1
  276. package/es/components/inline-loading/defs.js.map +1 -1
  277. package/es/components/inline-loading/index.d.ts +1 -1
  278. package/es/components/inline-loading/index.d.ts.map +1 -1
  279. package/es/components/inline-loading/index.js +1 -1
  280. package/es/components/inline-loading/index.js.map +1 -1
  281. package/es/components/inline-loading/inline-loading.css.js +1 -1
  282. package/es/components/inline-loading/inline-loading.d.ts.map +1 -1
  283. package/es/components/inline-loading/inline-loading.js +2 -1
  284. package/es/components/inline-loading/inline-loading.js.map +1 -1
  285. package/es/components/inline-loading/inline-loading.rtl.css.js +1 -1
  286. package/es/components/layer/layer.js.map +1 -1
  287. package/es/components/link/index.d.ts +1 -1
  288. package/es/components/link/index.d.ts.map +1 -1
  289. package/es/components/link/index.js +1 -1
  290. package/es/components/link/index.js.map +1 -1
  291. package/es/components/link/link.d.ts.map +1 -1
  292. package/es/components/link/link.js +3 -4
  293. package/es/components/link/link.js.map +1 -1
  294. package/es/components/list/index.d.ts +1 -1
  295. package/es/components/list/index.d.ts.map +1 -1
  296. package/es/components/list/index.js +1 -1
  297. package/es/components/list/index.js.map +1 -1
  298. package/es/components/list/list-item.d.ts.map +1 -1
  299. package/es/components/list/list-item.js +3 -7
  300. package/es/components/list/list-item.js.map +1 -1
  301. package/es/components/list/ordered-list.d.ts.map +1 -1
  302. package/es/components/list/ordered-list.js +2 -1
  303. package/es/components/list/ordered-list.js.map +1 -1
  304. package/es/components/list/unordered-list.d.ts.map +1 -1
  305. package/es/components/list/unordered-list.js +3 -4
  306. package/es/components/list/unordered-list.js.map +1 -1
  307. package/es/components/loading/defs.d.ts +1 -1
  308. package/es/components/loading/defs.d.ts.map +1 -1
  309. package/es/components/loading/defs.js +1 -1
  310. package/es/components/loading/defs.js.map +1 -1
  311. package/es/components/loading/index.d.ts +1 -1
  312. package/es/components/loading/index.d.ts.map +1 -1
  313. package/es/components/loading/index.js +1 -1
  314. package/es/components/loading/index.js.map +1 -1
  315. package/es/components/loading/loading.css.js +1 -1
  316. package/es/components/loading/loading.d.ts.map +1 -1
  317. package/es/components/loading/loading.js +3 -6
  318. package/es/components/loading/loading.js.map +1 -1
  319. package/es/components/loading/loading.rtl.css.js +1 -1
  320. package/es/components/loading/types.d.ts +1 -1
  321. package/es/components/loading/types.d.ts.map +1 -1
  322. package/es/components/loading/types.js +1 -1
  323. package/es/components/loading/types.js.map +1 -1
  324. package/es/components/modal/defs.d.ts +1 -1
  325. package/es/components/modal/defs.d.ts.map +1 -1
  326. package/es/components/modal/defs.js +1 -1
  327. package/es/components/modal/defs.js.map +1 -1
  328. package/es/components/modal/index.d.ts +1 -1
  329. package/es/components/modal/index.d.ts.map +1 -1
  330. package/es/components/modal/index.js +1 -1
  331. package/es/components/modal/index.js.map +1 -1
  332. package/es/components/modal/modal-body.d.ts.map +1 -1
  333. package/es/components/modal/modal-body.js +2 -6
  334. package/es/components/modal/modal-body.js.map +1 -1
  335. package/es/components/modal/modal-close-button.d.ts.map +1 -1
  336. package/es/components/modal/modal-close-button.js +3 -8
  337. package/es/components/modal/modal-close-button.js.map +1 -1
  338. package/es/components/modal/modal-footer-button.d.ts.map +1 -1
  339. package/es/components/modal/modal-footer-button.js +2 -6
  340. package/es/components/modal/modal-footer-button.js.map +1 -1
  341. package/es/components/modal/modal-footer.d.ts.map +1 -1
  342. package/es/components/modal/modal-footer.js +3 -6
  343. package/es/components/modal/modal-footer.js.map +1 -1
  344. package/es/components/modal/modal-header.d.ts.map +1 -1
  345. package/es/components/modal/modal-header.js +2 -6
  346. package/es/components/modal/modal-header.js.map +1 -1
  347. package/es/components/modal/modal-heading.d.ts.map +1 -1
  348. package/es/components/modal/modal-heading.js +2 -6
  349. package/es/components/modal/modal-heading.js.map +1 -1
  350. package/es/components/modal/modal-label.d.ts.map +1 -1
  351. package/es/components/modal/modal-label.js +2 -6
  352. package/es/components/modal/modal-label.js.map +1 -1
  353. package/es/components/modal/modal.css.js +1 -1
  354. package/es/components/modal/modal.d.ts.map +1 -1
  355. package/es/components/modal/modal.js +2 -1
  356. package/es/components/modal/modal.js.map +1 -1
  357. package/es/components/modal/modal.rtl.css.js +1 -1
  358. package/es/components/multi-select/multi-select-item.d.ts.map +1 -1
  359. package/es/components/multi-select/multi-select-item.js +3 -6
  360. package/es/components/multi-select/multi-select-item.js.map +1 -1
  361. package/es/components/multi-select/multi-select.css.js +1 -1
  362. package/es/components/multi-select/multi-select.d.ts.map +1 -1
  363. package/es/components/multi-select/multi-select.js +2 -1
  364. package/es/components/multi-select/multi-select.js.map +1 -1
  365. package/es/components/multi-select/multi-select.rtl.css.js +1 -1
  366. package/es/components/notification/actionable-notification-button.js.map +1 -1
  367. package/es/components/notification/actionable-notification.css.js +1 -1
  368. package/es/components/notification/actionable-notification.js.map +1 -1
  369. package/es/components/notification/actionable-notification.rtl.css.js +1 -1
  370. package/es/components/notification/inline-notification.css.js +1 -1
  371. package/es/components/notification/inline-notification.d.ts.map +1 -1
  372. package/es/components/notification/inline-notification.js +2 -1
  373. package/es/components/notification/inline-notification.js.map +1 -1
  374. package/es/components/notification/inline-notification.rtl.css.js +1 -1
  375. package/es/components/notification/toast-notification.css.js +1 -1
  376. package/es/components/notification/toast-notification.d.ts.map +1 -1
  377. package/es/components/notification/toast-notification.js +2 -1
  378. package/es/components/notification/toast-notification.js.map +1 -1
  379. package/es/components/notification/toast-notification.rtl.css.js +1 -1
  380. package/es/components/number-input/number-input-skeleton.d.ts.map +1 -1
  381. package/es/components/number-input/number-input-skeleton.js +3 -4
  382. package/es/components/number-input/number-input-skeleton.js.map +1 -1
  383. package/es/components/number-input/number-input.css.js +1 -1
  384. package/es/components/number-input/number-input.d.ts.map +1 -1
  385. package/es/components/number-input/number-input.js +2 -1
  386. package/es/components/number-input/number-input.js.map +1 -1
  387. package/es/components/number-input/number-input.rtl.css.js +1 -1
  388. package/es/components/overflow-menu/overflow-menu-body.d.ts.map +1 -1
  389. package/es/components/overflow-menu/overflow-menu-body.js +2 -1
  390. package/es/components/overflow-menu/overflow-menu-body.js.map +1 -1
  391. package/es/components/overflow-menu/overflow-menu-item.d.ts.map +1 -1
  392. package/es/components/overflow-menu/overflow-menu-item.js +2 -1
  393. package/es/components/overflow-menu/overflow-menu-item.js.map +1 -1
  394. package/es/components/overflow-menu/overflow-menu.css.js +1 -1
  395. package/es/components/overflow-menu/overflow-menu.d.ts.map +1 -1
  396. package/es/components/overflow-menu/overflow-menu.js +6 -8
  397. package/es/components/overflow-menu/overflow-menu.js.map +1 -1
  398. package/es/components/overflow-menu/overflow-menu.rtl.css.js +1 -1
  399. package/es/components/pagination/pagination.css.js +1 -1
  400. package/es/components/pagination/pagination.d.ts.map +1 -1
  401. package/es/components/pagination/pagination.js +14 -8
  402. package/es/components/pagination/pagination.js.map +1 -1
  403. package/es/components/pagination/pagination.rtl.css.js +1 -1
  404. package/es/components/popover/popover.css.js +1 -1
  405. package/es/components/popover/popover.js.map +1 -1
  406. package/es/components/popover/popover.rtl.css.js +1 -1
  407. package/es/components/progress-bar/progress-bar.css.js +1 -1
  408. package/es/components/progress-bar/progress-bar.js.map +1 -1
  409. package/es/components/progress-bar/progress-bar.rtl.css.js +1 -1
  410. package/es/components/progress-indicator/progress-indicator-skeleton.d.ts.map +1 -1
  411. package/es/components/progress-indicator/progress-indicator-skeleton.js +3 -4
  412. package/es/components/progress-indicator/progress-indicator-skeleton.js.map +1 -1
  413. package/es/components/progress-indicator/progress-indicator.css.js +1 -1
  414. package/es/components/progress-indicator/progress-indicator.d.ts.map +1 -1
  415. package/es/components/progress-indicator/progress-indicator.js +3 -6
  416. package/es/components/progress-indicator/progress-indicator.js.map +1 -1
  417. package/es/components/progress-indicator/progress-indicator.rtl.css.js +1 -1
  418. package/es/components/progress-indicator/progress-step-skeleton.d.ts.map +1 -1
  419. package/es/components/progress-indicator/progress-step-skeleton.js +3 -2
  420. package/es/components/progress-indicator/progress-step-skeleton.js.map +1 -1
  421. package/es/components/progress-indicator/progress-step.d.ts.map +1 -1
  422. package/es/components/progress-indicator/progress-step.js +2 -1
  423. package/es/components/progress-indicator/progress-step.js.map +1 -1
  424. package/es/components/radio-button/radio-button-group.d.ts +23 -1
  425. package/es/components/radio-button/radio-button-group.d.ts.map +1 -1
  426. package/es/components/radio-button/radio-button-group.js +111 -11
  427. package/es/components/radio-button/radio-button-group.js.map +1 -1
  428. package/es/components/radio-button/radio-button-skeleton.d.ts.map +1 -1
  429. package/es/components/radio-button/radio-button-skeleton.js +2 -4
  430. package/es/components/radio-button/radio-button-skeleton.js.map +1 -1
  431. package/es/components/radio-button/radio-button.css.js +1 -1
  432. package/es/components/radio-button/radio-button.d.ts +4 -0
  433. package/es/components/radio-button/radio-button.d.ts.map +1 -1
  434. package/es/components/radio-button/radio-button.js +20 -1
  435. package/es/components/radio-button/radio-button.js.map +1 -1
  436. package/es/components/radio-button/radio-button.rtl.css.js +1 -1
  437. package/es/components/search/search-skeleton.d.ts.map +1 -1
  438. package/es/components/search/search-skeleton.js +3 -4
  439. package/es/components/search/search-skeleton.js.map +1 -1
  440. package/es/components/search/search.css.js +1 -1
  441. package/es/components/search/search.d.ts.map +1 -1
  442. package/es/components/search/search.js +3 -12
  443. package/es/components/search/search.js.map +1 -1
  444. package/es/components/search/search.rtl.css.js +1 -1
  445. package/es/components/select/select-item-group.d.ts.map +1 -1
  446. package/es/components/select/select-item-group.js +2 -1
  447. package/es/components/select/select-item-group.js.map +1 -1
  448. package/es/components/select/select-item.d.ts.map +1 -1
  449. package/es/components/select/select-item.js +2 -1
  450. package/es/components/select/select-item.js.map +1 -1
  451. package/es/components/select/select.css.js +1 -1
  452. package/es/components/select/select.d.ts.map +1 -1
  453. package/es/components/select/select.js +3 -9
  454. package/es/components/select/select.js.map +1 -1
  455. package/es/components/select/select.rtl.css.js +1 -1
  456. package/es/components/skeleton-placeholder/skeleton-placeholder.d.ts.map +1 -1
  457. package/es/components/skeleton-placeholder/skeleton-placeholder.js +2 -6
  458. package/es/components/skeleton-placeholder/skeleton-placeholder.js.map +1 -1
  459. package/es/components/skeleton-text/skeleton-text.d.ts.map +1 -1
  460. package/es/components/skeleton-text/skeleton-text.js +2 -1
  461. package/es/components/skeleton-text/skeleton-text.js.map +1 -1
  462. package/es/components/skip-to-content/skip-to-content.css.js +1 -1
  463. package/es/components/skip-to-content/skip-to-content.d.ts.map +1 -1
  464. package/es/components/skip-to-content/skip-to-content.js +3 -6
  465. package/es/components/skip-to-content/skip-to-content.js.map +1 -1
  466. package/es/components/skip-to-content/skip-to-content.rtl.css.js +1 -1
  467. package/es/components/slider/slider-input.d.ts +4 -0
  468. package/es/components/slider/slider-input.d.ts.map +1 -1
  469. package/es/components/slider/slider-input.js +35 -15
  470. package/es/components/slider/slider-input.js.map +1 -1
  471. package/es/components/slider/slider-skeleton.d.ts.map +1 -1
  472. package/es/components/slider/slider-skeleton.js +2 -4
  473. package/es/components/slider/slider-skeleton.js.map +1 -1
  474. package/es/components/slider/slider.css.js +1 -1
  475. package/es/components/slider/slider.d.ts +17 -0
  476. package/es/components/slider/slider.d.ts.map +1 -1
  477. package/es/components/slider/slider.js +94 -7
  478. package/es/components/slider/slider.js.map +1 -1
  479. package/es/components/slider/slider.rtl.css.js +1 -1
  480. package/es/components/stack/defs.js.map +1 -1
  481. package/es/components/structured-list/structured-list-body.d.ts.map +1 -1
  482. package/es/components/structured-list/structured-list-body.js +1 -1
  483. package/es/components/structured-list/structured-list-body.js.map +1 -1
  484. package/es/components/structured-list/structured-list-cell.d.ts.map +1 -1
  485. package/es/components/structured-list/structured-list-cell.js +2 -6
  486. package/es/components/structured-list/structured-list-cell.js.map +1 -1
  487. package/es/components/structured-list/structured-list-head.d.ts.map +1 -1
  488. package/es/components/structured-list/structured-list-head.js +1 -1
  489. package/es/components/structured-list/structured-list-head.js.map +1 -1
  490. package/es/components/structured-list/structured-list-header-cell-skeleton.d.ts.map +1 -1
  491. package/es/components/structured-list/structured-list-header-cell-skeleton.js +2 -4
  492. package/es/components/structured-list/structured-list-header-cell-skeleton.js.map +1 -1
  493. package/es/components/structured-list/structured-list-header-cell.d.ts.map +1 -1
  494. package/es/components/structured-list/structured-list-header-cell.js +2 -6
  495. package/es/components/structured-list/structured-list-header-cell.js.map +1 -1
  496. package/es/components/structured-list/structured-list-header-row.d.ts.map +1 -1
  497. package/es/components/structured-list/structured-list-header-row.js +2 -1
  498. package/es/components/structured-list/structured-list-header-row.js.map +1 -1
  499. package/es/components/structured-list/structured-list-row.d.ts +0 -3
  500. package/es/components/structured-list/structured-list-row.d.ts.map +1 -1
  501. package/es/components/structured-list/structured-list-row.js +3 -4
  502. package/es/components/structured-list/structured-list-row.js.map +1 -1
  503. package/es/components/structured-list/structured-list.css.js +1 -1
  504. package/es/components/structured-list/structured-list.d.ts.map +1 -1
  505. package/es/components/structured-list/structured-list.js +3 -6
  506. package/es/components/structured-list/structured-list.js.map +1 -1
  507. package/es/components/structured-list/structured-list.rtl.css.js +1 -1
  508. package/es/components/tabs/tab-skeleton.d.ts.map +1 -1
  509. package/es/components/tabs/tab-skeleton.js +2 -4
  510. package/es/components/tabs/tab-skeleton.js.map +1 -1
  511. package/es/components/tabs/tab.d.ts.map +1 -1
  512. package/es/components/tabs/tab.js +3 -6
  513. package/es/components/tabs/tab.js.map +1 -1
  514. package/es/components/tabs/tabs-skeleton.d.ts.map +1 -1
  515. package/es/components/tabs/tabs-skeleton.js +2 -4
  516. package/es/components/tabs/tabs-skeleton.js.map +1 -1
  517. package/es/components/tabs/tabs.css.js +1 -1
  518. package/es/components/tabs/tabs.d.ts.map +1 -1
  519. package/es/components/tabs/tabs.js +3 -8
  520. package/es/components/tabs/tabs.js.map +1 -1
  521. package/es/components/tabs/tabs.rtl.css.js +1 -1
  522. package/es/components/tag/tag.css.js +1 -1
  523. package/es/components/tag/tag.d.ts.map +1 -1
  524. package/es/components/tag/tag.js +2 -1
  525. package/es/components/tag/tag.js.map +1 -1
  526. package/es/components/tag/tag.rtl.css.js +1 -1
  527. package/es/components/text-input/text-input.css.js +1 -1
  528. package/es/components/text-input/text-input.d.ts +4 -4
  529. package/es/components/text-input/text-input.d.ts.map +1 -1
  530. package/es/components/text-input/text-input.js +13 -12
  531. package/es/components/text-input/text-input.js.map +1 -1
  532. package/es/components/text-input/text-input.rtl.css.js +1 -1
  533. package/es/components/textarea/textarea-skeleton.d.ts.map +1 -1
  534. package/es/components/textarea/textarea-skeleton.js +2 -4
  535. package/es/components/textarea/textarea-skeleton.js.map +1 -1
  536. package/es/components/textarea/textarea.css.js +1 -1
  537. package/es/components/textarea/textarea.d.ts.map +1 -1
  538. package/es/components/textarea/textarea.js +12 -14
  539. package/es/components/textarea/textarea.js.map +1 -1
  540. package/es/components/textarea/textarea.rtl.css.js +1 -1
  541. package/es/components/tile/clickable-tile.d.ts.map +1 -1
  542. package/es/components/tile/clickable-tile.js +3 -6
  543. package/es/components/tile/clickable-tile.js.map +1 -1
  544. package/es/components/tile/expandable-tile.d.ts.map +1 -1
  545. package/es/components/tile/expandable-tile.js +2 -1
  546. package/es/components/tile/expandable-tile.js.map +1 -1
  547. package/es/components/tile/radio-tile.d.ts.map +1 -1
  548. package/es/components/tile/radio-tile.js +2 -6
  549. package/es/components/tile/radio-tile.js.map +1 -1
  550. package/es/components/tile/selectable-tile.d.ts +3 -1
  551. package/es/components/tile/selectable-tile.d.ts.map +1 -1
  552. package/es/components/tile/selectable-tile.js +2 -1
  553. package/es/components/tile/selectable-tile.js.map +1 -1
  554. package/es/components/tile/tile-group.d.ts +1 -1
  555. package/es/components/tile/tile-group.d.ts.map +1 -1
  556. package/es/components/tile/tile-group.js +7 -8
  557. package/es/components/tile/tile-group.js.map +1 -1
  558. package/es/components/tile/tile.css.js +1 -1
  559. package/es/components/tile/tile.d.ts.map +1 -1
  560. package/es/components/tile/tile.js +2 -1
  561. package/es/components/tile/tile.js.map +1 -1
  562. package/es/components/tile/tile.rtl.css.js +1 -1
  563. package/es/components/toggle/toggle.css.js +1 -1
  564. package/es/components/toggle/toggle.d.ts.map +1 -1
  565. package/es/components/toggle/toggle.js +2 -1
  566. package/es/components/toggle/toggle.js.map +1 -1
  567. package/es/components/toggle/toggle.rtl.css.js +1 -1
  568. package/es/components/toggle-tip/toggletip.css.js +1 -1
  569. package/es/components/toggle-tip/toggletip.js.map +1 -1
  570. package/es/components/toggle-tip/toggletip.rtl.css.js +1 -1
  571. package/es/components/tooltip/tooltip.css.js +1 -1
  572. package/es/components/tooltip/tooltip.d.ts +0 -1
  573. package/es/components/tooltip/tooltip.d.ts.map +1 -1
  574. package/es/components/tooltip/tooltip.js +3 -3
  575. package/es/components/tooltip/tooltip.js.map +1 -1
  576. package/es/components/tooltip/tooltip.rtl.css.js +1 -1
  577. package/es/components/ui-shell/header-global-action.d.ts +16 -1
  578. package/es/components/ui-shell/header-global-action.d.ts.map +1 -1
  579. package/es/components/ui-shell/header-global-action.js +92 -8
  580. package/es/components/ui-shell/header-global-action.js.map +1 -1
  581. package/es/components/ui-shell/header-menu-button.d.ts.map +1 -1
  582. package/es/components/ui-shell/header-menu-button.js +3 -9
  583. package/es/components/ui-shell/header-menu-button.js.map +1 -1
  584. package/es/components/ui-shell/header-menu-item.d.ts.map +1 -1
  585. package/es/components/ui-shell/header-menu-item.js +1 -1
  586. package/es/components/ui-shell/header-menu-item.js.map +1 -1
  587. package/es/components/ui-shell/header-menu.d.ts +1 -1
  588. package/es/components/ui-shell/header-menu.d.ts.map +1 -1
  589. package/es/components/ui-shell/header-menu.js +11 -17
  590. package/es/components/ui-shell/header-menu.js.map +1 -1
  591. package/es/components/ui-shell/header-name.d.ts.map +1 -1
  592. package/es/components/ui-shell/header-name.js +3 -8
  593. package/es/components/ui-shell/header-name.js.map +1 -1
  594. package/es/components/ui-shell/header-nav-item.d.ts +8 -0
  595. package/es/components/ui-shell/header-nav-item.d.ts.map +1 -1
  596. package/es/components/ui-shell/header-nav-item.js +32 -11
  597. package/es/components/ui-shell/header-nav-item.js.map +1 -1
  598. package/es/components/ui-shell/header-nav.d.ts.map +1 -1
  599. package/es/components/ui-shell/header-nav.js +2 -1
  600. package/es/components/ui-shell/header-nav.js.map +1 -1
  601. package/es/components/ui-shell/header.css.js +1 -1
  602. package/es/components/ui-shell/header.d.ts.map +1 -1
  603. package/es/components/ui-shell/header.js +1 -1
  604. package/es/components/ui-shell/header.js.map +1 -1
  605. package/es/components/ui-shell/header.rtl.css.js +1 -1
  606. package/es/components/ui-shell/index.d.ts +12 -11
  607. package/es/components/ui-shell/index.d.ts.map +1 -1
  608. package/es/components/ui-shell/index.js +12 -11
  609. package/es/components/ui-shell/index.js.map +1 -1
  610. package/es/components/ui-shell/side-nav-divider.d.ts.map +1 -1
  611. package/es/components/ui-shell/side-nav-divider.js +1 -1
  612. package/es/components/ui-shell/side-nav-divider.js.map +1 -1
  613. package/es/components/ui-shell/side-nav-items.d.ts.map +1 -1
  614. package/es/components/ui-shell/side-nav-items.js +1 -1
  615. package/es/components/ui-shell/side-nav-items.js.map +1 -1
  616. package/es/components/ui-shell/side-nav-link.d.ts +8 -0
  617. package/es/components/ui-shell/side-nav-link.d.ts.map +1 -1
  618. package/es/components/ui-shell/side-nav-link.js +33 -11
  619. package/es/components/ui-shell/side-nav-link.js.map +1 -1
  620. package/es/components/ui-shell/side-nav-menu-item.d.ts.map +1 -1
  621. package/es/components/ui-shell/side-nav-menu-item.js +3 -8
  622. package/es/components/ui-shell/side-nav-menu-item.js.map +1 -1
  623. package/es/components/ui-shell/side-nav-menu.d.ts.map +1 -1
  624. package/es/components/ui-shell/side-nav-menu.js +3 -13
  625. package/es/components/ui-shell/side-nav-menu.js.map +1 -1
  626. package/es/components/ui-shell/side-nav.css.js +1 -1
  627. package/es/components/ui-shell/side-nav.d.ts +5 -0
  628. package/es/components/ui-shell/side-nav.d.ts.map +1 -1
  629. package/es/components/ui-shell/side-nav.js +29 -6
  630. package/es/components/ui-shell/side-nav.js.map +1 -1
  631. package/es/components/ui-shell/side-nav.rtl.css.js +1 -1
  632. package/es/components/ui-shell/switcher-item.js.map +1 -1
  633. package/es/globals/decorators/carbon-element.d.ts +235 -0
  634. package/es/globals/decorators/carbon-element.d.ts.map +1 -0
  635. package/es/globals/decorators/carbon-element.js +429 -0
  636. package/es/globals/decorators/carbon-element.js.map +1 -0
  637. package/es/globals/decorators/host-listener.js.map +1 -1
  638. package/es/globals/directives/spread.d.ts +1 -1
  639. package/es/globals/directives/spread.d.ts.map +1 -1
  640. package/es/globals/directives/spread.js +1 -1
  641. package/es/globals/directives/spread.js.map +1 -1
  642. package/es/globals/internal/radio-group-manager.js +3 -4
  643. package/es/globals/internal/radio-group-manager.js.map +1 -1
  644. package/es/globals/internal/storybook-cdn.d.ts +1 -1
  645. package/es/globals/internal/storybook-cdn.d.ts.map +1 -1
  646. package/es/globals/internal/storybook-cdn.js +3 -3
  647. package/es/globals/internal/storybook-cdn.js.map +1 -1
  648. package/es/globals/mixins/focus.js.map +1 -1
  649. package/es/globals/mixins/form.js +6 -1
  650. package/es/globals/mixins/form.js.map +1 -1
  651. package/es/globals/mixins/host-listener.js.map +1 -1
  652. package/es/globals/mixins/temp-layout.css.js +12 -0
  653. package/es/globals/mixins/temp-layout.rtl.css.js +12 -0
  654. package/es/globals/mixins/validity.js +16 -0
  655. package/es/globals/mixins/validity.js.map +1 -1
  656. package/es/globals/wrappers/createReactCustomElementType.js +17 -0
  657. package/es/globals/wrappers/createReactCustomElementType.js.map +1 -1
  658. package/es/polyfills/toggle-class.js.map +1 -1
  659. package/lib/components/accordion/defs.js +1 -1
  660. package/lib/components/accordion/defs.js.map +1 -1
  661. package/lib/components/button/defs.js +1 -1
  662. package/lib/components/button/defs.js.map +1 -1
  663. package/lib/components/code-snippet/defs.js +1 -1
  664. package/lib/components/code-snippet/defs.js.map +1 -1
  665. package/lib/components/content-switcher/defs.js +1 -1
  666. package/lib/components/content-switcher/defs.js.map +1 -1
  667. package/lib/components/date-picker/defs.js +1 -1
  668. package/lib/components/date-picker/defs.js.map +1 -1
  669. package/lib/components/dropdown/defs.js +1 -1
  670. package/lib/components/dropdown/defs.js.map +1 -1
  671. package/lib/components/file-uploader/defs.js +1 -1
  672. package/lib/components/file-uploader/defs.js.map +1 -1
  673. package/lib/components/floating-menu/defs.js +1 -1
  674. package/lib/components/floating-menu/defs.js.map +1 -1
  675. package/lib/components/inline-loading/defs.js +1 -1
  676. package/lib/components/inline-loading/defs.js.map +1 -1
  677. package/lib/components/loading/defs.js +1 -1
  678. package/lib/components/loading/defs.js.map +1 -1
  679. package/lib/components/modal/defs.js +1 -1
  680. package/lib/components/modal/defs.js.map +1 -1
  681. package/lib/components/stack/defs.js.map +1 -1
  682. package/lib/globals/wrappers/createReactCustomElementType.js +16 -0
  683. package/lib/globals/wrappers/createReactCustomElementType.js.map +1 -1
  684. package/package.json +17 -16
  685. package/scss/components/accordion/accordion.scss +10 -5
  686. package/scss/components/breadcrumb/breadcrumb.scss +12 -0
  687. package/scss/components/button/button.scss +16 -2
  688. package/scss/components/code-snippet/code-snippet.scss +6 -8
  689. package/scss/components/combo-box/combo-box.scss +0 -10
  690. package/scss/components/content-switcher/content-switcher.scss +8 -21
  691. package/scss/components/copy-button/copy-button.scss +3 -3
  692. package/scss/components/data-table/_table-action.scss +4 -0
  693. package/scss/components/data-table/_table-core.scss +0 -2
  694. package/scss/components/data-table/data-table.scss +0 -1
  695. package/scss/components/date-picker/date-picker.scss +0 -3
  696. package/scss/components/dropdown/dropdown.scss +1 -2
  697. package/scss/components/file-uploader/file-uploader.scss +3 -5
  698. package/scss/components/icon-button/icon-button.scss +5 -0
  699. package/scss/components/inline-loading/inline-loading.scss +0 -3
  700. package/scss/components/modal/modal.scss +1 -4
  701. package/scss/components/multi-select/multi-select.scss +0 -3
  702. package/scss/components/notification/actionable-notification.scss +69 -24
  703. package/scss/components/notification/inline-notification.scss +76 -25
  704. package/scss/components/notification/toast-notification.scss +43 -27
  705. package/scss/components/number-input/number-input.scss +0 -3
  706. package/scss/components/overflow-menu/overflow-menu.scss +8 -3
  707. package/scss/components/pagination/pagination.scss +8 -3
  708. package/scss/components/popover/popover.scss +4 -2
  709. package/scss/components/progress-bar/progress-bar.scss +0 -5
  710. package/scss/components/progress-indicator/progress-indicator.scss +0 -3
  711. package/scss/components/radio-button/radio-button.scss +24 -1
  712. package/scss/components/search/search.scss +33 -3
  713. package/scss/components/select/select.scss +0 -3
  714. package/scss/components/slider/slider.scss +2 -3
  715. package/scss/components/structured-list/structured-list.scss +0 -5
  716. package/scss/components/tag/tag.scss +10 -5
  717. package/scss/components/text-input/text-input.scss +2 -2
  718. package/scss/components/textarea/textarea.scss +0 -3
  719. package/scss/components/tile/tile.scss +7 -8
  720. package/scss/components/tooltip/tooltip.scss +4 -4
  721. package/scss/components/ui-shell/header.scss +13 -3
  722. package/scss/components/ui-shell/side-nav.scss +0 -5
  723. package/scss/globals/mixins/temp-layout.scss +36 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["components/tile/expandable-tile.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAQ,MAAM,KAAK,CAAC;AAQvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAI3C;;;;;;;;GAQG;AACH,cACM,iBAAkB,SAAQ,sBAAyC;IACvE;;OAEG;IACH,OAAO,CAAC,sBAAsB,CAAK;IAEnC;;;;OAIG;IACH,OAAO,CAAC,oCAAoC;IAiB5C,OAAO,CAAC,aAAa;IAwBrB,OAAO,CAAC,YAAY,CAIlB;IAEF;;OAEG;IAEH,WAAW,oBAA6B;IAExC;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,eAAe,UAAS;IAExB,MAAM;IAqCN;;;OAGG;IACH,MAAM,KAAK,iBAAiB,WAE3B;IAED;;OAEG;IACH,MAAM,KAAK,WAAW,WAErB;IAED,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,iBAAiB,CAAC","file":"expandable-tile.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 { LitElement, html } from 'lit';\nimport { property, customElement } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport ChevronDown16 from '@carbon/icons/lib/chevron--down/16';\nimport { prefix } from '../../globals/settings';\nimport HostListener from '../../globals/decorators/host-listener';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss';\nimport { classMap } from 'lit/directives/class-map.js';\n\n/**\n * Expandable tile.\n *\n * @element cds-expandable-tile\n * @fires cds-expandable-tile-beingtoggled\n * The custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n * @fires cds-expandable-tile-toggled - The custom event fired after a the expanded state is changed upon a user gesture.\n */\n@customElement(`${prefix}-expandable-tile`)\nclass CDSExpandableTile extends HostListenerMixin(FocusMixin(LitElement)) {\n /**\n * The computed height of the below-the-fold content.\n */\n private _belowTheContentHeight = 0;\n\n /**\n * Handles `slotchange` event on the below-the-fold content.\n *\n * @param event The event.\n */\n private _handleSlotChangeBelowTheFoldContent(event: Event) {\n this._belowTheContentHeight = (event.target as HTMLSlotElement)\n .assignedNodes()\n .reduce(\n (acc, item) => acc + ((item as HTMLElement).offsetHeight ?? 0),\n 0\n );\n\n if (!this._belowTheContentHeight) {\n const element = getComputedStyle(\n this.querySelector('cds-tile-below-the-fold-content') as any\n );\n this._belowTheContentHeight = parseInt(element.height, 10);\n }\n this.requestUpdate();\n }\n\n private _handleExpand() {\n const expanded = !this.expanded;\n this.focus();\n const init = {\n bubbles: true,\n composed: true,\n detail: {\n expanded,\n },\n };\n const constructor = this.constructor as typeof CDSExpandableTile;\n const beforeChangeEvent = new CustomEvent(constructor.eventBeforeToggle, {\n ...init,\n cancelable: true,\n });\n if (this.dispatchEvent(beforeChangeEvent)) {\n this.expanded = expanded;\n const afterChangeEvent = new CustomEvent(constructor.eventToggle, init);\n this.dispatchEvent(afterChangeEvent);\n }\n }\n\n @HostListener('click')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = () => {\n if (!this.withInteractive) {\n this._handleExpand();\n }\n };\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true })\n expanded = false;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true, attribute: 'with-interactive' })\n withInteractive = false;\n\n render() {\n const {\n expanded,\n withInteractive,\n _belowTheContentHeight: belowTheContentHeight,\n _handleSlotChangeBelowTheFoldContent: handleSlotChangeBelowTheFoldContent,\n } = this;\n\n const classes = classMap({\n [`${prefix}--tile__chevron`]: true,\n [`${prefix}--tile__chevron--interactive`]: withInteractive,\n });\n return html`\n <button\n class=\"${classes}\"\n aria-labelledby=\"above-the-fold-content\"\n aria-controls=\"below-the-fold-content\"\n tabindex=\"0\"\n @click=\"${withInteractive ? this._handleExpand : ''}\"\n aria-expanded=\"${String(Boolean(expanded))}\">\n ${ChevronDown16({\n id: 'icon',\n })}\n </button>\n <div id=\"content\" class=\"${prefix}--tile-content\">\n <div><slot name=\"above-the-fold-content\"></slot></div>\n <div\n class=\"${prefix}-ce--expandable-tile--below-the-fold-content\"\n style=\"${ifDefined(\n !expanded ? undefined : `max-height: ${belowTheContentHeight}px`\n )}\">\n <slot @slotchange=\"${handleSlotChangeBelowTheFoldContent}\"></slot>\n </div>\n </div>\n `;\n }\n\n /**\n * The name of the custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n */\n static get eventBeforeToggle() {\n return `${prefix}-expandable-tile-beingtoggled`;\n }\n\n /**\n * The name of the custom event fired after a the expanded state is changed upon a user gesture.\n */\n static get eventToggle() {\n return `${prefix}-expandable-tile-toggled`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default CDSExpandableTile;\n"]}
1
+ {"version":3,"sources":["components/tile/expandable-tile.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAQ,MAAM,KAAK,CAAC;AAQvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAK3C;;;;;;;;GAQG;AACH,cACM,iBAAkB,SAAQ,sBAAyC;IACvE;;OAEG;IACH,OAAO,CAAC,sBAAsB,CAAK;IAEnC;;;;OAIG;IACH,OAAO,CAAC,oCAAoC;IAiB5C,OAAO,CAAC,aAAa;IAwBrB,OAAO,CAAC,YAAY,CAIlB;IAEF;;OAEG;IAEH,WAAW,oBAA6B;IAExC;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,eAAe,UAAS;IAExB,MAAM;IAqCN;;;OAGG;IACH,MAAM,KAAK,iBAAiB,WAE3B;IAED;;OAEG;IACH,MAAM,KAAK,WAAW,WAErB;IAED,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,iBAAiB,CAAC","file":"expandable-tile.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 { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport ChevronDown16 from '@carbon/icons/lib/chevron--down/16';\nimport { prefix } from '../../globals/settings';\nimport HostListener from '../../globals/decorators/host-listener';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Expandable tile.\n *\n * @element cds-expandable-tile\n * @fires cds-expandable-tile-beingtoggled\n * The custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n * @fires cds-expandable-tile-toggled - The custom event fired after a the expanded state is changed upon a user gesture.\n */\n@customElement(`${prefix}-expandable-tile`)\nclass CDSExpandableTile extends HostListenerMixin(FocusMixin(LitElement)) {\n /**\n * The computed height of the below-the-fold content.\n */\n private _belowTheContentHeight = 0;\n\n /**\n * Handles `slotchange` event on the below-the-fold content.\n *\n * @param event The event.\n */\n private _handleSlotChangeBelowTheFoldContent(event: Event) {\n this._belowTheContentHeight = (event.target as HTMLSlotElement)\n .assignedNodes()\n .reduce(\n (acc, item) => acc + ((item as HTMLElement).offsetHeight ?? 0),\n 0\n );\n\n if (!this._belowTheContentHeight) {\n const element = getComputedStyle(\n this.querySelector('cds-tile-below-the-fold-content') as any\n );\n this._belowTheContentHeight = parseInt(element.height, 10);\n }\n this.requestUpdate();\n }\n\n private _handleExpand() {\n const expanded = !this.expanded;\n this.focus();\n const init = {\n bubbles: true,\n composed: true,\n detail: {\n expanded,\n },\n };\n const constructor = this.constructor as typeof CDSExpandableTile;\n const beforeChangeEvent = new CustomEvent(constructor.eventBeforeToggle, {\n ...init,\n cancelable: true,\n });\n if (this.dispatchEvent(beforeChangeEvent)) {\n this.expanded = expanded;\n const afterChangeEvent = new CustomEvent(constructor.eventToggle, init);\n this.dispatchEvent(afterChangeEvent);\n }\n }\n\n @HostListener('click')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = () => {\n if (!this.withInteractive) {\n this._handleExpand();\n }\n };\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true })\n expanded = false;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true, attribute: 'with-interactive' })\n withInteractive = false;\n\n render() {\n const {\n expanded,\n withInteractive,\n _belowTheContentHeight: belowTheContentHeight,\n _handleSlotChangeBelowTheFoldContent: handleSlotChangeBelowTheFoldContent,\n } = this;\n\n const classes = classMap({\n [`${prefix}--tile__chevron`]: true,\n [`${prefix}--tile__chevron--interactive`]: withInteractive,\n });\n return html`\n <button\n class=\"${classes}\"\n aria-labelledby=\"above-the-fold-content\"\n aria-controls=\"below-the-fold-content\"\n tabindex=\"0\"\n @click=\"${withInteractive ? this._handleExpand : ''}\"\n aria-expanded=\"${String(Boolean(expanded))}\">\n ${ChevronDown16({\n id: 'icon',\n })}\n </button>\n <div id=\"content\" class=\"${prefix}--tile-content\">\n <div><slot name=\"above-the-fold-content\"></slot></div>\n <div\n class=\"${prefix}-ce--expandable-tile--below-the-fold-content\"\n style=\"${ifDefined(\n !expanded ? undefined : `max-height: ${belowTheContentHeight}px`\n )}\">\n <slot @slotchange=\"${handleSlotChangeBelowTheFoldContent}\"></slot>\n </div>\n </div>\n `;\n }\n\n /**\n * The name of the custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n */\n static get eventBeforeToggle() {\n return `${prefix}-expandable-tile-beingtoggled`;\n }\n\n /**\n * The name of the custom event fired after a the expanded state is changed upon a user gesture.\n */\n static get eventToggle() {\n return `${prefix}-expandable-tile-toggled`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default CDSExpandableTile;\n"]}
@@ -12,7 +12,7 @@ let _ = t => t,
12
12
  */
13
13
 
14
14
  import { LitElement, html } from 'lit';
15
- import { property, customElement } from 'lit/decorators.js';
15
+ import { property } from 'lit/decorators.js';
16
16
  import { ifDefined } from 'lit/directives/if-defined.js';
17
17
  import ChevronDown16 from "../../icons/chevron--down/16";
18
18
  import { prefix } from '../../globals/settings';
@@ -22,6 +22,7 @@ import HostListenerMixin from '../../globals/mixins/host-listener';
22
22
  import { TILE_COLOR_SCHEME } from './defs';
23
23
  import styles from "././tile.css.js";
24
24
  import { classMap } from 'lit/directives/class-map.js';
25
+ import { carbonElement as customElement } from '../../globals/decorators/carbon-element';
25
26
 
26
27
  /**
27
28
  * Expandable tile.
@@ -1 +1 @@
1
- {"version":3,"file":"expandable-tile.js","names":["LitElement","html","property","customElement","ifDefined","ChevronDown16","prefix","HostListener","FocusMixin","HostListenerMixin","TILE_COLOR_SCHEME","styles","classMap","CDSExpandableTile","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","key","value","_handleSlotChangeBelowTheFoldContent","event","_belowTheContentHeight","target","assignedNodes","reduce","acc","item","_offsetHeight","offsetHeight","element","getComputedStyle","querySelector","parseInt","height","requestUpdate","_handleExpand","expanded","focus","init","bubbles","composed","detail","beforeChangeEvent","CustomEvent","eventBeforeToggle","_objectSpread","cancelable","dispatchEvent","afterChangeEvent","eventToggle","decorators","withInteractive","attribute","reflect","REGULAR","type","Boolean","render","belowTheContentHeight","handleSlotChangeBelowTheFoldContent","classes","_t","_","String","id","undefined","static"],"sources":["components/tile/expandable-tile.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 { LitElement, html } from 'lit';\nimport { property, customElement } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport ChevronDown16 from '@carbon/icons/lib/chevron--down/16';\nimport { prefix } from '../../globals/settings';\nimport HostListener from '../../globals/decorators/host-listener';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss';\nimport { classMap } from 'lit/directives/class-map.js';\n\n/**\n * Expandable tile.\n *\n * @element cds-expandable-tile\n * @fires cds-expandable-tile-beingtoggled\n * The custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n * @fires cds-expandable-tile-toggled - The custom event fired after a the expanded state is changed upon a user gesture.\n */\n@customElement(`${prefix}-expandable-tile`)\nclass CDSExpandableTile extends HostListenerMixin(FocusMixin(LitElement)) {\n /**\n * The computed height of the below-the-fold content.\n */\n private _belowTheContentHeight = 0;\n\n /**\n * Handles `slotchange` event on the below-the-fold content.\n *\n * @param event The event.\n */\n private _handleSlotChangeBelowTheFoldContent(event: Event) {\n this._belowTheContentHeight = (event.target as HTMLSlotElement)\n .assignedNodes()\n .reduce(\n (acc, item) => acc + ((item as HTMLElement).offsetHeight ?? 0),\n 0\n );\n\n if (!this._belowTheContentHeight) {\n const element = getComputedStyle(\n this.querySelector('cds-tile-below-the-fold-content') as any\n );\n this._belowTheContentHeight = parseInt(element.height, 10);\n }\n this.requestUpdate();\n }\n\n private _handleExpand() {\n const expanded = !this.expanded;\n this.focus();\n const init = {\n bubbles: true,\n composed: true,\n detail: {\n expanded,\n },\n };\n const constructor = this.constructor as typeof CDSExpandableTile;\n const beforeChangeEvent = new CustomEvent(constructor.eventBeforeToggle, {\n ...init,\n cancelable: true,\n });\n if (this.dispatchEvent(beforeChangeEvent)) {\n this.expanded = expanded;\n const afterChangeEvent = new CustomEvent(constructor.eventToggle, init);\n this.dispatchEvent(afterChangeEvent);\n }\n }\n\n @HostListener('click')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = () => {\n if (!this.withInteractive) {\n this._handleExpand();\n }\n };\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true })\n expanded = false;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true, attribute: 'with-interactive' })\n withInteractive = false;\n\n render() {\n const {\n expanded,\n withInteractive,\n _belowTheContentHeight: belowTheContentHeight,\n _handleSlotChangeBelowTheFoldContent: handleSlotChangeBelowTheFoldContent,\n } = this;\n\n const classes = classMap({\n [`${prefix}--tile__chevron`]: true,\n [`${prefix}--tile__chevron--interactive`]: withInteractive,\n });\n return html`\n <button\n class=\"${classes}\"\n aria-labelledby=\"above-the-fold-content\"\n aria-controls=\"below-the-fold-content\"\n tabindex=\"0\"\n @click=\"${withInteractive ? this._handleExpand : ''}\"\n aria-expanded=\"${String(Boolean(expanded))}\">\n ${ChevronDown16({\n id: 'icon',\n })}\n </button>\n <div id=\"content\" class=\"${prefix}--tile-content\">\n <div><slot name=\"above-the-fold-content\"></slot></div>\n <div\n class=\"${prefix}-ce--expandable-tile--below-the-fold-content\"\n style=\"${ifDefined(\n !expanded ? undefined : `max-height: ${belowTheContentHeight}px`\n )}\">\n <slot @slotchange=\"${handleSlotChangeBelowTheFoldContent}\"></slot>\n </div>\n </div>\n `;\n }\n\n /**\n * The name of the custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n */\n static get eventBeforeToggle() {\n return `${prefix}-expandable-tile-beingtoggled`;\n }\n\n /**\n * The name of the custom event fired after a the expanded state is changed upon a user gesture.\n */\n static get eventToggle() {\n return `${prefix}-expandable-tile-toggled`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default CDSExpandableTile;\n"],"mappings":"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"}
1
+ {"version":3,"file":"expandable-tile.js","names":["LitElement","html","property","ifDefined","ChevronDown16","prefix","HostListener","FocusMixin","HostListenerMixin","TILE_COLOR_SCHEME","styles","classMap","carbonElement","customElement","CDSExpandableTile","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","key","value","_handleSlotChangeBelowTheFoldContent","event","_belowTheContentHeight","target","assignedNodes","reduce","acc","item","_offsetHeight","offsetHeight","element","getComputedStyle","querySelector","parseInt","height","requestUpdate","_handleExpand","expanded","focus","init","bubbles","composed","detail","beforeChangeEvent","CustomEvent","eventBeforeToggle","_objectSpread","cancelable","dispatchEvent","afterChangeEvent","eventToggle","decorators","withInteractive","attribute","reflect","REGULAR","type","Boolean","render","belowTheContentHeight","handleSlotChangeBelowTheFoldContent","classes","_t","_","String","id","undefined","static"],"sources":["components/tile/expandable-tile.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 { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport ChevronDown16 from '@carbon/icons/lib/chevron--down/16';\nimport { prefix } from '../../globals/settings';\nimport HostListener from '../../globals/decorators/host-listener';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Expandable tile.\n *\n * @element cds-expandable-tile\n * @fires cds-expandable-tile-beingtoggled\n * The custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n * @fires cds-expandable-tile-toggled - The custom event fired after a the expanded state is changed upon a user gesture.\n */\n@customElement(`${prefix}-expandable-tile`)\nclass CDSExpandableTile extends HostListenerMixin(FocusMixin(LitElement)) {\n /**\n * The computed height of the below-the-fold content.\n */\n private _belowTheContentHeight = 0;\n\n /**\n * Handles `slotchange` event on the below-the-fold content.\n *\n * @param event The event.\n */\n private _handleSlotChangeBelowTheFoldContent(event: Event) {\n this._belowTheContentHeight = (event.target as HTMLSlotElement)\n .assignedNodes()\n .reduce(\n (acc, item) => acc + ((item as HTMLElement).offsetHeight ?? 0),\n 0\n );\n\n if (!this._belowTheContentHeight) {\n const element = getComputedStyle(\n this.querySelector('cds-tile-below-the-fold-content') as any\n );\n this._belowTheContentHeight = parseInt(element.height, 10);\n }\n this.requestUpdate();\n }\n\n private _handleExpand() {\n const expanded = !this.expanded;\n this.focus();\n const init = {\n bubbles: true,\n composed: true,\n detail: {\n expanded,\n },\n };\n const constructor = this.constructor as typeof CDSExpandableTile;\n const beforeChangeEvent = new CustomEvent(constructor.eventBeforeToggle, {\n ...init,\n cancelable: true,\n });\n if (this.dispatchEvent(beforeChangeEvent)) {\n this.expanded = expanded;\n const afterChangeEvent = new CustomEvent(constructor.eventToggle, init);\n this.dispatchEvent(afterChangeEvent);\n }\n }\n\n @HostListener('click')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleClick = () => {\n if (!this.withInteractive) {\n this._handleExpand();\n }\n };\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true })\n expanded = false;\n\n /**\n * `true` to expand this expandable tile.\n */\n @property({ type: Boolean, reflect: true, attribute: 'with-interactive' })\n withInteractive = false;\n\n render() {\n const {\n expanded,\n withInteractive,\n _belowTheContentHeight: belowTheContentHeight,\n _handleSlotChangeBelowTheFoldContent: handleSlotChangeBelowTheFoldContent,\n } = this;\n\n const classes = classMap({\n [`${prefix}--tile__chevron`]: true,\n [`${prefix}--tile__chevron--interactive`]: withInteractive,\n });\n return html`\n <button\n class=\"${classes}\"\n aria-labelledby=\"above-the-fold-content\"\n aria-controls=\"below-the-fold-content\"\n tabindex=\"0\"\n @click=\"${withInteractive ? this._handleExpand : ''}\"\n aria-expanded=\"${String(Boolean(expanded))}\">\n ${ChevronDown16({\n id: 'icon',\n })}\n </button>\n <div id=\"content\" class=\"${prefix}--tile-content\">\n <div><slot name=\"above-the-fold-content\"></slot></div>\n <div\n class=\"${prefix}-ce--expandable-tile--below-the-fold-content\"\n style=\"${ifDefined(\n !expanded ? undefined : `max-height: ${belowTheContentHeight}px`\n )}\">\n <slot @slotchange=\"${handleSlotChangeBelowTheFoldContent}\"></slot>\n </div>\n </div>\n `;\n }\n\n /**\n * The name of the custom event fired before the expanded state is changed upon a user gesture.\n * Cancellation of this event stops changing the user-initiated change in expanded state.\n */\n static get eventBeforeToggle() {\n return `${prefix}-expandable-tile-beingtoggled`;\n }\n\n /**\n * The name of the custom event fired after a the expanded state is changed upon a user gesture.\n */\n static get eventToggle() {\n return `${prefix}-expandable-tile-toggled`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default CDSExpandableTile;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["components/tile/radio-tile.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAOH,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAG/C;;;;GAIG;AACH,cACM,YAAa,SAAQ,cAAc;IACvC;;OAEG;IACH,SAAS,CAAC,UAAU,SAAW;IAE/B;;OAEG;IACH,SAAS,CAAC,aAAa;IAgBvB,MAAM;IAuCN;;OAEG;IACH,MAAM,KAAK,gBAAgB,WAE1B;CACF;AAED,eAAe,YAAY,CAAC","file":"radio-tile.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, svg } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { customElement } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport SelectableTile from './selectable-tile';\nimport CheckmarkFilled16 from '@carbon/icons/lib/checkmark--filled/16';\n\n/**\n * Single-selectable tile.\n *\n * @element cds-radio-tile\n */\n@customElement(`${prefix}-radio-tile`)\nclass CDSRadioTile extends SelectableTile {\n /**\n * The `type` attribute of the `<input>`.\n */\n protected _inputType = 'radio';\n\n /**\n * Handles `change` event on the `<input>` in the shadow DOM.\n */\n protected _handleChange() {\n this.selected = true;\n const { selected, name } = this;\n const { eventRadioChange } = this.constructor as typeof CDSRadioTile;\n this.dispatchEvent(\n new CustomEvent(eventRadioChange, {\n bubbles: true,\n composed: true,\n detail: {\n selected,\n name,\n },\n })\n );\n }\n\n render() {\n const {\n colorScheme,\n checkmarkLabel,\n name,\n selected,\n value,\n _inputType: inputType,\n _handleChange: handleChange,\n } = this;\n const classes = classMap({\n [`${prefix}--tile`]: true,\n [`${prefix}--tile--selectable`]: true,\n [`${prefix}--tile--is-selected`]: selected,\n [`${prefix}--tile--${colorScheme}`]: colorScheme,\n });\n return html`\n <input\n type=\"${inputType}\"\n id=\"input\"\n class=\"${prefix}--tile-input\"\n tabindex=\"-1\"\n name=\"${ifDefined(name)}\"\n value=\"${ifDefined(value)}\"\n .checked=${selected}\n @change=${handleChange} />\n <label for=\"input\" class=\"${classes}\" tabindex=\"0\">\n <div class=\"${prefix}--tile__checkmark\">\n ${CheckmarkFilled16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })}\n </div>\n <div class=\"${prefix}--tile-content\"><slot></slot></div>\n </label>\n `;\n }\n\n /**\n * The name of the custom event fired after this selectable tile changes its selected state.\n */\n static get eventRadioChange() {\n return `${prefix}-radio-tile-selected`;\n }\n}\n\nexport default CDSRadioTile;\n"]}
1
+ {"version":3,"sources":["components/tile/radio-tile.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAI/C;;;;GAIG;AACH,cACM,YAAa,SAAQ,cAAc;IACvC;;OAEG;IACH,SAAS,CAAC,UAAU,SAAW;IAE/B;;OAEG;IACH,SAAS,CAAC,aAAa;IAgBvB,MAAM;IAuCN;;OAEG;IACH,MAAM,KAAK,gBAAgB,WAE1B;CACF;AAED,eAAe,YAAY,CAAC","file":"radio-tile.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, svg } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { prefix } from '../../globals/settings';\nimport SelectableTile from './selectable-tile';\nimport CheckmarkFilled16 from '@carbon/icons/lib/checkmark--filled/16';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Single-selectable tile.\n *\n * @element cds-radio-tile\n */\n@customElement(`${prefix}-radio-tile`)\nclass CDSRadioTile extends SelectableTile {\n /**\n * The `type` attribute of the `<input>`.\n */\n protected _inputType = 'radio';\n\n /**\n * Handles `change` event on the `<input>` in the shadow DOM.\n */\n protected _handleChange() {\n this.selected = true;\n const { selected, name } = this;\n const { eventRadioChange } = this.constructor as typeof CDSRadioTile;\n this.dispatchEvent(\n new CustomEvent(eventRadioChange, {\n bubbles: true,\n composed: true,\n detail: {\n selected,\n name,\n },\n })\n );\n }\n\n render() {\n const {\n colorScheme,\n checkmarkLabel,\n name,\n selected,\n value,\n _inputType: inputType,\n _handleChange: handleChange,\n } = this;\n const classes = classMap({\n [`${prefix}--tile`]: true,\n [`${prefix}--tile--selectable`]: true,\n [`${prefix}--tile--is-selected`]: selected,\n [`${prefix}--tile--${colorScheme}`]: colorScheme,\n });\n return html`\n <input\n type=\"${inputType}\"\n id=\"input\"\n class=\"${prefix}--tile-input\"\n tabindex=\"-1\"\n name=\"${ifDefined(name)}\"\n value=\"${ifDefined(value)}\"\n .checked=${selected}\n @change=${handleChange} />\n <label for=\"input\" class=\"${classes}\" tabindex=\"0\">\n <div class=\"${prefix}--tile__checkmark\">\n ${CheckmarkFilled16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })}\n </div>\n <div class=\"${prefix}--tile-content\"><slot></slot></div>\n </label>\n `;\n }\n\n /**\n * The name of the custom event fired after this selectable tile changes its selected state.\n */\n static get eventRadioChange() {\n return `${prefix}-radio-tile-selected`;\n }\n}\n\nexport default CDSRadioTile;\n"]}
@@ -14,20 +14,16 @@ let _ = t => t,
14
14
  import { html, svg } from 'lit';
15
15
  import { classMap } from 'lit/directives/class-map.js';
16
16
  import { ifDefined } from 'lit/directives/if-defined.js';
17
- import { customElement } from 'lit/decorators.js';
18
17
  import { prefix } from '../../globals/settings';
19
18
  import SelectableTile from './selectable-tile';
20
19
  import CheckmarkFilled16 from "../../icons/checkmark--filled/16";
20
+ import { carbonElement as customElement } from '../../globals/decorators/carbon-element';
21
21
 
22
22
  /**
23
23
  * Single-selectable tile.
24
24
  *
25
25
  * @element cds-radio-tile
26
- */ /**
27
- * Single-selectable tile.
28
- *
29
- * @element cds-radio-tile
30
- */
26
+ */
31
27
  let CDSRadioTile = _decorate([customElement(`${prefix}-radio-tile`)], function (_initialize, _SelectableTile) {
32
28
  class CDSRadioTile extends _SelectableTile {
33
29
  constructor(...args) {
@@ -1 +1 @@
1
- {"version":3,"file":"radio-tile.js","names":["html","svg","classMap","ifDefined","customElement","prefix","SelectableTile","CheckmarkFilled16","CDSRadioTile","_decorate","_initialize","_SelectableTile","constructor","args","F","d","kind","key","value","_handleChange","selected","name","eventRadioChange","dispatchEvent","CustomEvent","bubbles","composed","detail","render","colorScheme","checkmarkLabel","_inputType","inputType","handleChange","classes","_t","_","children","undefined","_t2","static"],"sources":["components/tile/radio-tile.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, svg } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { customElement } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport SelectableTile from './selectable-tile';\nimport CheckmarkFilled16 from '@carbon/icons/lib/checkmark--filled/16';\n\n/**\n * Single-selectable tile.\n *\n * @element cds-radio-tile\n */\n@customElement(`${prefix}-radio-tile`)\nclass CDSRadioTile extends SelectableTile {\n /**\n * The `type` attribute of the `<input>`.\n */\n protected _inputType = 'radio';\n\n /**\n * Handles `change` event on the `<input>` in the shadow DOM.\n */\n protected _handleChange() {\n this.selected = true;\n const { selected, name } = this;\n const { eventRadioChange } = this.constructor as typeof CDSRadioTile;\n this.dispatchEvent(\n new CustomEvent(eventRadioChange, {\n bubbles: true,\n composed: true,\n detail: {\n selected,\n name,\n },\n })\n );\n }\n\n render() {\n const {\n colorScheme,\n checkmarkLabel,\n name,\n selected,\n value,\n _inputType: inputType,\n _handleChange: handleChange,\n } = this;\n const classes = classMap({\n [`${prefix}--tile`]: true,\n [`${prefix}--tile--selectable`]: true,\n [`${prefix}--tile--is-selected`]: selected,\n [`${prefix}--tile--${colorScheme}`]: colorScheme,\n });\n return html`\n <input\n type=\"${inputType}\"\n id=\"input\"\n class=\"${prefix}--tile-input\"\n tabindex=\"-1\"\n name=\"${ifDefined(name)}\"\n value=\"${ifDefined(value)}\"\n .checked=${selected}\n @change=${handleChange} />\n <label for=\"input\" class=\"${classes}\" tabindex=\"0\">\n <div class=\"${prefix}--tile__checkmark\">\n ${CheckmarkFilled16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })}\n </div>\n <div class=\"${prefix}--tile-content\"><slot></slot></div>\n </label>\n `;\n }\n\n /**\n * The name of the custom event fired after this selectable tile changes its selected state.\n */\n static get eventRadioChange() {\n return `${prefix}-radio-tile-selected`;\n }\n}\n\nexport default CDSRadioTile;\n"],"mappings":"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"}
1
+ {"version":3,"file":"radio-tile.js","names":["html","svg","classMap","ifDefined","prefix","SelectableTile","CheckmarkFilled16","carbonElement","customElement","CDSRadioTile","_decorate","_initialize","_SelectableTile","constructor","args","F","d","kind","key","value","_handleChange","selected","name","eventRadioChange","dispatchEvent","CustomEvent","bubbles","composed","detail","render","colorScheme","checkmarkLabel","_inputType","inputType","handleChange","classes","_t","_","children","undefined","_t2","static"],"sources":["components/tile/radio-tile.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, svg } from 'lit';\nimport { classMap } from 'lit/directives/class-map.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport { prefix } from '../../globals/settings';\nimport SelectableTile from './selectable-tile';\nimport CheckmarkFilled16 from '@carbon/icons/lib/checkmark--filled/16';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Single-selectable tile.\n *\n * @element cds-radio-tile\n */\n@customElement(`${prefix}-radio-tile`)\nclass CDSRadioTile extends SelectableTile {\n /**\n * The `type` attribute of the `<input>`.\n */\n protected _inputType = 'radio';\n\n /**\n * Handles `change` event on the `<input>` in the shadow DOM.\n */\n protected _handleChange() {\n this.selected = true;\n const { selected, name } = this;\n const { eventRadioChange } = this.constructor as typeof CDSRadioTile;\n this.dispatchEvent(\n new CustomEvent(eventRadioChange, {\n bubbles: true,\n composed: true,\n detail: {\n selected,\n name,\n },\n })\n );\n }\n\n render() {\n const {\n colorScheme,\n checkmarkLabel,\n name,\n selected,\n value,\n _inputType: inputType,\n _handleChange: handleChange,\n } = this;\n const classes = classMap({\n [`${prefix}--tile`]: true,\n [`${prefix}--tile--selectable`]: true,\n [`${prefix}--tile--is-selected`]: selected,\n [`${prefix}--tile--${colorScheme}`]: colorScheme,\n });\n return html`\n <input\n type=\"${inputType}\"\n id=\"input\"\n class=\"${prefix}--tile-input\"\n tabindex=\"-1\"\n name=\"${ifDefined(name)}\"\n value=\"${ifDefined(value)}\"\n .checked=${selected}\n @change=${handleChange} />\n <label for=\"input\" class=\"${classes}\" tabindex=\"0\">\n <div class=\"${prefix}--tile__checkmark\">\n ${CheckmarkFilled16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })}\n </div>\n <div class=\"${prefix}--tile-content\"><slot></slot></div>\n </label>\n `;\n }\n\n /**\n * The name of the custom event fired after this selectable tile changes its selected state.\n */\n static get eventRadioChange() {\n return `${prefix}-radio-tile-selected`;\n }\n}\n\nexport default CDSRadioTile;\n"],"mappings":"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"}
@@ -319,7 +319,9 @@ declare const CDSSelectableTile_base: {
319
319
  _hostListeners: {
320
320
  [listenerName: string]: {
321
321
  [type: string]: {
322
- options?: boolean | AddEventListenerOptions | undefined;
322
+ options?: boolean | AddEventListenerOptions | undefined; /**
323
+ * The color scheme.
324
+ */
323
325
  };
324
326
  };
325
327
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["components/tile/selectable-tile.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAQ5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAI3C;;;;;GAKG;AACH,cACM,iBAAkB,SAAQ,sBAAyC;IAEvE,SAAS,CAAC,UAAU,EAAG,gBAAgB,CAAC;IAExC;;OAEG;IACH,SAAS,CAAC,UAAU,SAAc;IAElC;;OAEG;IACH,SAAS,CAAC,aAAa;IAgBvB;;OAEG;IACH,SAAS,CAAC,WAAW;IAgBrB;;;;OAIG;IAGH,OAAO,CAAC,cAAc,CAMpB;IAEF;;OAEG;IAEH,cAAc,EAAG,MAAM,CAAC;IAExB;;OAEG;IAEH,WAAW,oBAA6B;IAExC;;OAEG;IAEH,IAAI,EAAG,MAAM,CAAC;IAEd;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,KAAK,EAAG,MAAM,CAAC;IAEf,MAAM;IAmCN;;OAEG;IACH,MAAM,KAAK,WAAW,WAErB;IAED,MAAM,CAAC,iBAAiB;;;;MAGtB;IAEF,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,iBAAiB,CAAC","file":"selectable-tile.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/directives/class-map.js';\nimport { LitElement, html, svg } from 'lit';\nimport { property, customElement, query } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport Checkbox16 from '@carbon/icons/lib/checkbox/16';\nimport CheckboxCheckedFilled16 from '@carbon/icons/lib/checkbox--checked--filled/16';\nimport { prefix } from '../../globals/settings';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss';\nimport HostListener from '../../globals/decorators/host-listener';\n\n/**\n * Multi-selectable tile.\n *\n * @element cds-selectable-tile\n * @fires cds-selectable-tile-changed - The custom event fired after this selectable tile changes its selected state.\n */\n@customElement(`${prefix}-selectable-tile`)\nclass CDSSelectableTile extends HostListenerMixin(FocusMixin(LitElement)) {\n @query('input')\n protected _inputNode!: HTMLInputElement;\n\n /**\n * The `type` attribute of the `<input>`.\n */\n protected _inputType = 'checkbox';\n\n /**\n * Handles `change` event on the `<input>` in the shadow DOM.\n */\n protected _handleChange() {\n this.selected = this._inputNode.checked;\n\n const selected = this.selected;\n const { eventChange } = this.constructor as typeof CDSSelectableTile;\n this.dispatchEvent(\n new CustomEvent(eventChange, {\n bubbles: true,\n composed: true,\n detail: {\n selected,\n },\n })\n );\n }\n\n /**\n * Handles the rendering of the icon.\n */\n protected _renderIcon() {\n const { selected, checkmarkLabel } = this;\n\n return html` ${selected\n ? CheckboxCheckedFilled16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })\n : Checkbox16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })}`;\n }\n\n /**\n * Listener function for keyboard interaction.\n *\n * @param event to get the key pressed\n */\n @HostListener('keydown')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeydown = (event: KeyboardEvent) => {\n const { key } = event;\n\n if (key === ' ' || key === 'Enter') {\n this.selected = !this.selected;\n }\n };\n\n /**\n * The a11y text for the checkmark icon of the selected state.\n */\n @property({ attribute: 'checkmark-label' })\n checkmarkLabel!: string;\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * The form name.\n */\n @property()\n name!: string;\n\n /**\n * `true` to show the selected state.\n */\n @property({ type: Boolean, reflect: true })\n selected = false;\n\n /**\n * The form value.\n */\n @property()\n value!: string;\n\n render() {\n const {\n colorScheme,\n name,\n selected,\n value,\n _inputType: inputType,\n _handleChange: handleChange,\n } = this;\n const classes = classMap({\n [`${prefix}--tile`]: true,\n [`${prefix}--tile--selectable`]: true,\n [`${prefix}--tile--is-selected`]: selected,\n [`${prefix}--tile--${colorScheme}`]: colorScheme,\n });\n return html`\n <input\n type=\"${inputType}\"\n id=\"input\"\n class=\"${prefix}--tile-input\"\n tabindex=\"-1\"\n name=\"${ifDefined(name)}\"\n value=\"${ifDefined(value)}\"\n .checked=${selected}\n @change=${handleChange} />\n <label for=\"input\" class=\"${classes}\" tabindex=\"0\">\n <div\n class=\"${prefix}--tile__checkmark ${prefix}--tile__checkmark--persistent\">\n ${this._renderIcon()}\n </div>\n <div class=\"${prefix}--tile-content\"><slot></slot></div>\n </label>\n `;\n }\n\n /**\n * The name of the custom event fired after this selectable tile changes its selected state.\n */\n static get eventChange() {\n return `${prefix}-selectable-tile-changed`;\n }\n\n static shadowRootOptions = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n };\n\n static styles = styles;\n}\n\nexport default CDSSelectableTile;\n"]}
1
+ {"version":3,"sources":["components/tile/selectable-tile.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EAAE,UAAU,EAAa,MAAM,KAAK,CAAC;AAQ5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yEAgFzC;;mBAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA7EL;;;;;GAKG;AACH,cACM,iBAAkB,SAAQ,sBAAyC;IAEvE,SAAS,CAAC,UAAU,EAAG,gBAAgB,CAAC;IAExC;;OAEG;IACH,SAAS,CAAC,UAAU,SAAc;IAElC;;OAEG;IACH,SAAS,CAAC,aAAa;IAgBvB;;OAEG;IACH,SAAS,CAAC,WAAW;IAgBrB;;;;OAIG;IAGH,OAAO,CAAC,cAAc,CAMpB;IAEF;;OAEG;IAEH,cAAc,EAAG,MAAM,CAAC;IAExB;;OAEG;IAEH,WAAW,oBAA6B;IAExC;;OAEG;IAEH,IAAI,EAAG,MAAM,CAAC;IAEd;;OAEG;IAEH,QAAQ,UAAS;IAEjB;;OAEG;IAEH,KAAK,EAAG,MAAM,CAAC;IAEf,MAAM;IAmCN;;OAEG;IACH,MAAM,KAAK,WAAW,WAErB;IAED,MAAM,CAAC,iBAAiB;;;;MAGtB;IAEF,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,iBAAiB,CAAC","file":"selectable-tile.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/directives/class-map.js';\nimport { LitElement, html, svg } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport Checkbox16 from '@carbon/icons/lib/checkbox/16';\nimport CheckboxCheckedFilled16 from '@carbon/icons/lib/checkbox--checked--filled/16';\nimport { prefix } from '../../globals/settings';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss';\nimport HostListener from '../../globals/decorators/host-listener';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Multi-selectable tile.\n *\n * @element cds-selectable-tile\n * @fires cds-selectable-tile-changed - The custom event fired after this selectable tile changes its selected state.\n */\n@customElement(`${prefix}-selectable-tile`)\nclass CDSSelectableTile extends HostListenerMixin(FocusMixin(LitElement)) {\n @query('input')\n protected _inputNode!: HTMLInputElement;\n\n /**\n * The `type` attribute of the `<input>`.\n */\n protected _inputType = 'checkbox';\n\n /**\n * Handles `change` event on the `<input>` in the shadow DOM.\n */\n protected _handleChange() {\n this.selected = this._inputNode.checked;\n\n const selected = this.selected;\n const { eventChange } = this.constructor as typeof CDSSelectableTile;\n this.dispatchEvent(\n new CustomEvent(eventChange, {\n bubbles: true,\n composed: true,\n detail: {\n selected,\n },\n })\n );\n }\n\n /**\n * Handles the rendering of the icon.\n */\n protected _renderIcon() {\n const { selected, checkmarkLabel } = this;\n\n return html` ${selected\n ? CheckboxCheckedFilled16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })\n : Checkbox16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })}`;\n }\n\n /**\n * Listener function for keyboard interaction.\n *\n * @param event to get the key pressed\n */\n @HostListener('keydown')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeydown = (event: KeyboardEvent) => {\n const { key } = event;\n\n if (key === ' ' || key === 'Enter') {\n this.selected = !this.selected;\n }\n };\n\n /**\n * The a11y text for the checkmark icon of the selected state.\n */\n @property({ attribute: 'checkmark-label' })\n checkmarkLabel!: string;\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * The form name.\n */\n @property()\n name!: string;\n\n /**\n * `true` to show the selected state.\n */\n @property({ type: Boolean, reflect: true })\n selected = false;\n\n /**\n * The form value.\n */\n @property()\n value!: string;\n\n render() {\n const {\n colorScheme,\n name,\n selected,\n value,\n _inputType: inputType,\n _handleChange: handleChange,\n } = this;\n const classes = classMap({\n [`${prefix}--tile`]: true,\n [`${prefix}--tile--selectable`]: true,\n [`${prefix}--tile--is-selected`]: selected,\n [`${prefix}--tile--${colorScheme}`]: colorScheme,\n });\n return html`\n <input\n type=\"${inputType}\"\n id=\"input\"\n class=\"${prefix}--tile-input\"\n tabindex=\"-1\"\n name=\"${ifDefined(name)}\"\n value=\"${ifDefined(value)}\"\n .checked=${selected}\n @change=${handleChange} />\n <label for=\"input\" class=\"${classes}\" tabindex=\"0\">\n <div\n class=\"${prefix}--tile__checkmark ${prefix}--tile__checkmark--persistent\">\n ${this._renderIcon()}\n </div>\n <div class=\"${prefix}--tile-content\"><slot></slot></div>\n </label>\n `;\n }\n\n /**\n * The name of the custom event fired after this selectable tile changes its selected state.\n */\n static get eventChange() {\n return `${prefix}-selectable-tile-changed`;\n }\n\n static shadowRootOptions = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n };\n\n static styles = styles;\n}\n\nexport default CDSSelectableTile;\n"]}
@@ -16,7 +16,7 @@ let _ = t => t,
16
16
 
17
17
  import { classMap } from 'lit/directives/class-map.js';
18
18
  import { LitElement, html, svg } from 'lit';
19
- import { property, customElement, query } from 'lit/decorators.js';
19
+ import { property, query } from 'lit/decorators.js';
20
20
  import { ifDefined } from 'lit/directives/if-defined.js';
21
21
  import Checkbox16 from "../../icons/checkbox/16";
22
22
  import CheckboxCheckedFilled16 from "../../icons/checkbox--checked--filled/16";
@@ -26,6 +26,7 @@ import HostListenerMixin from '../../globals/mixins/host-listener';
26
26
  import { TILE_COLOR_SCHEME } from './defs';
27
27
  import styles from "././tile.css.js";
28
28
  import HostListener from '../../globals/decorators/host-listener';
29
+ import { carbonElement as customElement } from '../../globals/decorators/carbon-element';
29
30
 
30
31
  /**
31
32
  * Multi-selectable tile.
@@ -1 +1 @@
1
- {"version":3,"file":"selectable-tile.js","names":["classMap","LitElement","html","svg","property","customElement","query","ifDefined","Checkbox16","CheckboxCheckedFilled16","prefix","FocusMixin","HostListenerMixin","TILE_COLOR_SCHEME","styles","HostListener","CDSSelectableTile","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","decorators","key","value","_handleChange","selected","_inputNode","checked","eventChange","dispatchEvent","CustomEvent","bubbles","composed","detail","_renderIcon","checkmarkLabel","_t","_","children","undefined","_t2","_t3","event","attribute","reflect","REGULAR","type","Boolean","render","colorScheme","name","_inputType","inputType","handleChange","classes","_t4","static","_objectSpread","shadowRootOptions","delegatesFocus"],"sources":["components/tile/selectable-tile.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/directives/class-map.js';\nimport { LitElement, html, svg } from 'lit';\nimport { property, customElement, query } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport Checkbox16 from '@carbon/icons/lib/checkbox/16';\nimport CheckboxCheckedFilled16 from '@carbon/icons/lib/checkbox--checked--filled/16';\nimport { prefix } from '../../globals/settings';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss';\nimport HostListener from '../../globals/decorators/host-listener';\n\n/**\n * Multi-selectable tile.\n *\n * @element cds-selectable-tile\n * @fires cds-selectable-tile-changed - The custom event fired after this selectable tile changes its selected state.\n */\n@customElement(`${prefix}-selectable-tile`)\nclass CDSSelectableTile extends HostListenerMixin(FocusMixin(LitElement)) {\n @query('input')\n protected _inputNode!: HTMLInputElement;\n\n /**\n * The `type` attribute of the `<input>`.\n */\n protected _inputType = 'checkbox';\n\n /**\n * Handles `change` event on the `<input>` in the shadow DOM.\n */\n protected _handleChange() {\n this.selected = this._inputNode.checked;\n\n const selected = this.selected;\n const { eventChange } = this.constructor as typeof CDSSelectableTile;\n this.dispatchEvent(\n new CustomEvent(eventChange, {\n bubbles: true,\n composed: true,\n detail: {\n selected,\n },\n })\n );\n }\n\n /**\n * Handles the rendering of the icon.\n */\n protected _renderIcon() {\n const { selected, checkmarkLabel } = this;\n\n return html` ${selected\n ? CheckboxCheckedFilled16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })\n : Checkbox16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })}`;\n }\n\n /**\n * Listener function for keyboard interaction.\n *\n * @param event to get the key pressed\n */\n @HostListener('keydown')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeydown = (event: KeyboardEvent) => {\n const { key } = event;\n\n if (key === ' ' || key === 'Enter') {\n this.selected = !this.selected;\n }\n };\n\n /**\n * The a11y text for the checkmark icon of the selected state.\n */\n @property({ attribute: 'checkmark-label' })\n checkmarkLabel!: string;\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * The form name.\n */\n @property()\n name!: string;\n\n /**\n * `true` to show the selected state.\n */\n @property({ type: Boolean, reflect: true })\n selected = false;\n\n /**\n * The form value.\n */\n @property()\n value!: string;\n\n render() {\n const {\n colorScheme,\n name,\n selected,\n value,\n _inputType: inputType,\n _handleChange: handleChange,\n } = this;\n const classes = classMap({\n [`${prefix}--tile`]: true,\n [`${prefix}--tile--selectable`]: true,\n [`${prefix}--tile--is-selected`]: selected,\n [`${prefix}--tile--${colorScheme}`]: colorScheme,\n });\n return html`\n <input\n type=\"${inputType}\"\n id=\"input\"\n class=\"${prefix}--tile-input\"\n tabindex=\"-1\"\n name=\"${ifDefined(name)}\"\n value=\"${ifDefined(value)}\"\n .checked=${selected}\n @change=${handleChange} />\n <label for=\"input\" class=\"${classes}\" tabindex=\"0\">\n <div\n class=\"${prefix}--tile__checkmark ${prefix}--tile__checkmark--persistent\">\n ${this._renderIcon()}\n </div>\n <div class=\"${prefix}--tile-content\"><slot></slot></div>\n </label>\n `;\n }\n\n /**\n * The name of the custom event fired after this selectable tile changes its selected state.\n */\n static get eventChange() {\n return `${prefix}-selectable-tile-changed`;\n }\n\n static shadowRootOptions = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n };\n\n static styles = styles;\n}\n\nexport default CDSSelectableTile;\n"],"mappings":"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"}
1
+ {"version":3,"file":"selectable-tile.js","names":["classMap","LitElement","html","svg","property","query","ifDefined","Checkbox16","CheckboxCheckedFilled16","prefix","FocusMixin","HostListenerMixin","TILE_COLOR_SCHEME","styles","HostListener","carbonElement","customElement","CDSSelectableTile","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","decorators","key","value","_handleChange","selected","_inputNode","checked","eventChange","dispatchEvent","CustomEvent","bubbles","composed","detail","_renderIcon","checkmarkLabel","_t","_","children","undefined","_t2","_t3","event","attribute","reflect","REGULAR","type","Boolean","render","colorScheme","name","_inputType","inputType","handleChange","classes","_t4","static","_objectSpread","shadowRootOptions","delegatesFocus"],"sources":["components/tile/selectable-tile.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/directives/class-map.js';\nimport { LitElement, html, svg } from 'lit';\nimport { property, query } from 'lit/decorators.js';\nimport { ifDefined } from 'lit/directives/if-defined.js';\nimport Checkbox16 from '@carbon/icons/lib/checkbox/16';\nimport CheckboxCheckedFilled16 from '@carbon/icons/lib/checkbox--checked--filled/16';\nimport { prefix } from '../../globals/settings';\nimport FocusMixin from '../../globals/mixins/focus';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport { TILE_COLOR_SCHEME } from './defs';\nimport styles from './tile.scss';\nimport HostListener from '../../globals/decorators/host-listener';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Multi-selectable tile.\n *\n * @element cds-selectable-tile\n * @fires cds-selectable-tile-changed - The custom event fired after this selectable tile changes its selected state.\n */\n@customElement(`${prefix}-selectable-tile`)\nclass CDSSelectableTile extends HostListenerMixin(FocusMixin(LitElement)) {\n @query('input')\n protected _inputNode!: HTMLInputElement;\n\n /**\n * The `type` attribute of the `<input>`.\n */\n protected _inputType = 'checkbox';\n\n /**\n * Handles `change` event on the `<input>` in the shadow DOM.\n */\n protected _handleChange() {\n this.selected = this._inputNode.checked;\n\n const selected = this.selected;\n const { eventChange } = this.constructor as typeof CDSSelectableTile;\n this.dispatchEvent(\n new CustomEvent(eventChange, {\n bubbles: true,\n composed: true,\n detail: {\n selected,\n },\n })\n );\n }\n\n /**\n * Handles the rendering of the icon.\n */\n protected _renderIcon() {\n const { selected, checkmarkLabel } = this;\n\n return html` ${selected\n ? CheckboxCheckedFilled16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })\n : Checkbox16({\n children: !checkmarkLabel\n ? undefined\n : svg`<title>${checkmarkLabel}</title>`,\n })}`;\n }\n\n /**\n * Listener function for keyboard interaction.\n *\n * @param event to get the key pressed\n */\n @HostListener('keydown')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeydown = (event: KeyboardEvent) => {\n const { key } = event;\n\n if (key === ' ' || key === 'Enter') {\n this.selected = !this.selected;\n }\n };\n\n /**\n * The a11y text for the checkmark icon of the selected state.\n */\n @property({ attribute: 'checkmark-label' })\n checkmarkLabel!: string;\n\n /**\n * The color scheme.\n */\n @property({ attribute: 'color-scheme', reflect: true })\n colorScheme = TILE_COLOR_SCHEME.REGULAR;\n\n /**\n * The form name.\n */\n @property()\n name!: string;\n\n /**\n * `true` to show the selected state.\n */\n @property({ type: Boolean, reflect: true })\n selected = false;\n\n /**\n * The form value.\n */\n @property()\n value!: string;\n\n render() {\n const {\n colorScheme,\n name,\n selected,\n value,\n _inputType: inputType,\n _handleChange: handleChange,\n } = this;\n const classes = classMap({\n [`${prefix}--tile`]: true,\n [`${prefix}--tile--selectable`]: true,\n [`${prefix}--tile--is-selected`]: selected,\n [`${prefix}--tile--${colorScheme}`]: colorScheme,\n });\n return html`\n <input\n type=\"${inputType}\"\n id=\"input\"\n class=\"${prefix}--tile-input\"\n tabindex=\"-1\"\n name=\"${ifDefined(name)}\"\n value=\"${ifDefined(value)}\"\n .checked=${selected}\n @change=${handleChange} />\n <label for=\"input\" class=\"${classes}\" tabindex=\"0\">\n <div\n class=\"${prefix}--tile__checkmark ${prefix}--tile__checkmark--persistent\">\n ${this._renderIcon()}\n </div>\n <div class=\"${prefix}--tile-content\"><slot></slot></div>\n </label>\n `;\n }\n\n /**\n * The name of the custom event fired after this selectable tile changes its selected state.\n */\n static get eventChange() {\n return `${prefix}-selectable-tile-changed`;\n }\n\n static shadowRootOptions = {\n ...LitElement.shadowRootOptions,\n delegatesFocus: true,\n };\n\n static styles = styles;\n}\n\nexport default CDSSelectableTile;\n"],"mappings":";;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,QAAQ,QAAQ,6BAA6B;AACtD,SAASC,UAAU,EAAEC,IAAI,EAAEC,GAAG,QAAQ,KAAK;AAC3C,SAASC,QAAQ,EAAEC,KAAK,QAAQ,mBAAmB;AACnD,SAASC,SAAS,QAAQ,8BAA8B;AACxD,OAAOC,UAAU,MAAM,yBAA+B;AACtD,OAAOC,uBAAuB,MAAM,0CAAgD;AACpF,SAASC,MAAM,QAAQ,wBAAwB;AAC/C,OAAOC,UAAU,MAAM,4BAA4B;AACnD,OAAOC,iBAAiB,MAAM,oCAAoC;AAClE,SAASC,iBAAiB,QAAQ,QAAQ;AAC1C,OAAOC,MAAM,MAAM,iBAAa;AAChC,OAAOC,YAAY,MAAM,wCAAwC;AACjE,SAASC,aAAa,IAAIC,aAAa,QAAQ,yCAAyC;;AAExF;AACA;AACA;AACA;AACA;AACA;AALA,IAOMC,iBAAiB,GAAAC,SAAA,EADtBF,aAAa,CAAE,GAAEP,MAAO,kBAAiB,CAAC,aAAAU,WAAA,EAAAC,kBAAA;EAA3C,MACMH,iBAAiB,SAAAG,kBAAA,CAAmD;IAAAC,YAAA,GAAAC,IAAA;MAAA,SAAAA,IAAA;MAAAH,WAAA;IAAA;EA4I1E;EAAC;IAAAI,CAAA,EA5IKN,iBAAiB;IAAAO,CAAA;MAAAC,IAAA;MAAAC,UAAA,GACpBrB,KAAK,CAAC,OAAO,CAAC;MAAAsB,GAAA;MAAAC,KAAA;IAAA;MAAAH,IAAA;MAAAE,GAAA;MAAAC,MAAA;QAAA,OAMQ,UAAU;MAAA;IAAA;MAAAH,IAAA;MAAAE,GAAA;MAAAC,KAAA;MAHjC;AACF;AACA;;MAGE;AACF;AACA;MACE,SAAAC,cAAA,EAA0B;QACxB,IAAI,CAACC,QAAQ,GAAG,IAAI,CAACC,UAAU,CAACC,OAAO;QAEvC,MAAMF,QAAQ,GAAG,IAAI,CAACA,QAAQ;QAC9B,MAAM;UAAEG;QAAY,CAAC,GAAG,IAAI,CAACZ,WAAuC;QACpE,IAAI,CAACa,aAAa,CAChB,IAAIC,WAAW,CAACF,WAAW,EAAE;UAC3BG,OAAO,EAAE,IAAI;UACbC,QAAQ,EAAE,IAAI;UACdC,MAAM,EAAE;YACNR;UACF;QACF,CAAC,CACH,CAAC;MACH;;MAEA;AACF;AACA;IAFE;MAAAL,IAAA;MAAAE,GAAA;MAAAC,KAAA,EAGA,SAAAW,YAAA,EAAwB;QACtB,MAAM;UAAET,QAAQ;UAAEU;QAAe,CAAC,GAAG,IAAI;QAEzC,OAAOtC,IAAI,CAAAuC,EAAA,KAAAA,EAAA,GAAAC,CAAC,IAAC,CAUN,KAVQZ,QAAQ,GACnBtB,uBAAuB,CAAC;UACtBmC,QAAQ,EAAE,CAACH,cAAc,GACrBI,SAAS,GACTzC,GAAG,CAAA0C,GAAA,KAAAA,GAAA,GAAAH,CAAC,UAAO,CAAiB,UAAQ,GAAvBF,cAAc;QACjC,CAAC,CAAC,GACFjC,UAAU,CAAC;UACToC,QAAQ,EAAE,CAACH,cAAc,GACrBI,SAAS,GACTzC,GAAG,CAAA2C,GAAA,KAAAA,GAAA,GAAAJ,CAAC,UAAO,CAAiB,UAAQ,GAAvBF,cAAc;QACjC,CAAC,CAAC;MACR;;MAEA;AACF;AACA;AACA;AACA;IAJE;MAAAf,IAAA;MAAAC,UAAA,GAKCZ,YAAY,CAAC,SAAS,CAAC;MAAAa,GAAA;MAAAC,MAAA;QAAA,OAEEmB,KAAoB,IAAK;UACjD,MAAM;YAAEpB;UAAI,CAAC,GAAGoB,KAAK;UAErB,IAAIpB,GAAG,KAAK,GAAG,IAAIA,GAAG,KAAK,OAAO,EAAE;YAClC,IAAI,CAACG,QAAQ,GAAG,CAAC,IAAI,CAACA,QAAQ;UAChC;QACF,CAAC;MAAA;IAAA;MAAAL,IAAA;MAAAC,UAAA,GAKAtB,QAAQ,CAAC;QAAE4C,SAAS,EAAE;MAAkB,CAAC,CAAC;MAAArB,GAAA;MAAAC,KAAA;IAAA;MAAAH,IAAA;MAAAC,UAAA,GAM1CtB,QAAQ,CAAC;QAAE4C,SAAS,EAAE,cAAc;QAAEC,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAtB,GAAA;MAAAC,MAAA;QAAA,OACzChB,iBAAiB,CAACsC,OAAO;MAAA;IAAA;MAAAzB,IAAA;MAAAC,UAAA,GAKtCtB,QAAQ,CAAC,CAAC;MAAAuB,GAAA;MAAAC,KAAA;IAAA;MAAAH,IAAA;MAAAC,UAAA,GAMVtB,QAAQ,CAAC;QAAE+C,IAAI,EAAEC,OAAO;QAAEH,OAAO,EAAE;MAAK,CAAC,CAAC;MAAAtB,GAAA;MAAAC,MAAA;QAAA,OAChC,KAAK;MAAA;IAAA;MAAAH,IAAA;MAAAC,UAAA,GAKftB,QAAQ,CAAC,CAAC;MAAAuB,GAAA;MAAAC,KAAA;IAAA;MAAAH,IAAA;MAAAE,GAAA;MAAAC,KAAA;MA3BX;AACF;AACA;MAIE;AACF;AACA;MAIE;AACF;AACA;MAIE;AACF;AACA;MAIE;AACF;AACA;MAIE,SAAAyB,OAAA,EAAS;QACP,MAAM;UACJC,WAAW;UACXC,IAAI;UACJzB,QAAQ;UACRF,KAAK;UACL4B,UAAU,EAAEC,SAAS;UACrB5B,aAAa,EAAE6B;QACjB,CAAC,GAAG,IAAI;QACR,MAAMC,OAAO,GAAG3D,QAAQ,CAAC;UACvB,CAAE,GAAES,MAAO,QAAO,GAAG,IAAI;UACzB,CAAE,GAAEA,MAAO,oBAAmB,GAAG,IAAI;UACrC,CAAE,GAAEA,MAAO,qBAAoB,GAAGqB,QAAQ;UAC1C,CAAE,GAAErB,MAAO,WAAU6C,WAAY,EAAC,GAAGA;QACvC,CAAC,CAAC;QACF,OAAOpD,IAAI,CAAA0D,GAAA,KAAAA,GAAA,GAAAlB,CAAC;AAChB;AACA,gBAAc,CAAY;AAC1B;AACA,iBAAe,CAAS;AACxB;AACA,gBAAc,CAAkB;AAChC,iBAAe,CAAmB;AAClC,mBAAiB,CAAW;AAC5B,kBAAgB,CAAe;AAC/B,kCAAgC,CAAU;AAC1C;AACA,mBAAiB,CAAS,qBAAkB,CAAS;AACrD,YAAU,CAAqB;AAC/B;AACA,sBAAoB,CAAS;AAC7B;AACA,KAAI,GAfYe,SAAS,EAERhD,MAAM,EAEPH,SAAS,CAACiD,IAAI,CAAC,EACdjD,SAAS,CAACsB,KAAK,CAAC,EACdE,QAAQ,EACT4B,YAAY,EACIC,OAAO,EAEtBlD,MAAM,EAAqBA,MAAM,EACxC,IAAI,CAAC8B,WAAW,CAAC,CAAC,EAER9B,MAAM;MAG1B;;MAEA;AACF;AACA;IAFE;MAAAgB,IAAA;MAAAoC,MAAA;MAAAlC,GAAA;MAAAC,KAAA,EAGA,SAAAK,YAAA,EAAyB;QACvB,OAAQ,GAAExB,MAAO,0BAAyB;MAC5C;IAAC;MAAAgB,IAAA;MAAAoC,MAAA;MAAAlC,GAAA;MAAAC,MAAA;QAAA,OAAAkC,aAAA,CAAAA,aAAA,KAGI7D,UAAU,CAAC8D,iBAAiB;UAC/BC,cAAc,EAAE;QAAI;MAAA;IAAA;MAAAvC,IAAA;MAAAoC,MAAA;MAAAlC,GAAA;MAAAC,MAAA;QAAA,OAGNf,MAAM;MAAA;IAAA;EAAA;AAAA,GA3IQF,iBAAiB,CAACD,UAAU,CAACT,UAAU,CAAC,CAAC;AA8IzE,eAAegB,iBAAiB"}
@@ -365,7 +365,7 @@ declare class CDSTileGroup extends CDSTileGroup_base {
365
365
  /**
366
366
  * Provide an optional className to be applied to the component
367
367
  */
368
- className: any;
368
+ fieldsetClassName: any;
369
369
  /**
370
370
  * Specify whether the group is disabled
371
371
  */
@@ -1 +1 @@
1
- {"version":3,"sources":["components/tile/tile-group.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAQ,MAAM,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBvC;;;;GAIG;AACH,cACM,YAAa,SAAQ,iBAA6B;IACtD,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,sBAAsB;IA0B9B;;;;OAIG;IAGH,OAAO,CAAC,iBAAiB;IAQzB;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAwB3B;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IA2BhC;;;;OAIG;IAGH,OAAO,CAAC,cAAc,CAwBpB;IAEF;;;;OAIG;IAGH,OAAO,CAAC,YAAY,CAgBlB;IAEF;;OAEG;IAEH,SAAS,MAAC;IAEV;;OAEG;IAEH,QAAQ,MAAC;IAGT,qBAAqB,MAAC;IAGtB,iBAAiB,MAAa;IAG9B,UAAU,MAAC;IAGX,eAAe,MAAC;IAEhB,YAAY;IAuBZ,MAAM;IAUN;;OAEG;IACH,MAAM,KAAK,iBAAiB,WAE3B;IAED;;OAEG;IACH,MAAM,KAAK,sBAAsB,WAEhC;IAED;;OAEG;IACH,MAAM,KAAK,8BAA8B,WAExC;IAED;;OAEG;IACH,MAAM,KAAK,oCAAoC,WAE9C;IAED,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,YAAY,CAAC","file":"tile-group.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 { LitElement, html } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport { NAVIGATION_DIRECTION } from '../../globals/internal/radio-group-manager';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport styles from './tile.scss';\n\n/**\n * Map of navigation direction by key.\n */\nconst navigationDirectionForKey = {\n ArrowUp: NAVIGATION_DIRECTION.BACKWARD,\n Up: NAVIGATION_DIRECTION.BACKWARD, // IE\n ArrowDown: NAVIGATION_DIRECTION.FORWARD,\n Down: NAVIGATION_DIRECTION.FORWARD, // IE\n};\n\n/**\n * Tile group.\n *\n * @element cds-tile-group\n */\n@customElement(`${prefix}-tile-group`)\nclass CDSTileGroup extends HostListenerMixin(LitElement) {\n private _handleRadioClick(event) {\n const { target } = event;\n const { currentRadioSelection } = this;\n const { eventCurrentRadioTileSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (!currentRadioSelection) {\n this.currentRadioSelection = target;\n } else if (currentRadioSelection !== target) {\n currentRadioSelection.toggleAttribute('selected');\n this.currentRadioSelection = target;\n }\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentRadioTileSelection, {\n bubbles: true,\n composed: true,\n detail: {\n target,\n },\n })\n );\n }\n\n private _handleSelectableClick(event) {\n const { target } = event;\n const { currentSelections } = this;\n const { eventCurrentSelectableTilesSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (!currentSelections.includes(target)) {\n currentSelections.push(target);\n } else {\n currentSelections.splice(currentSelections.indexOf(target), 1);\n }\n (target as HTMLElement).toggleAttribute('selected');\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentSelectableTilesSelection, {\n bubbles: true,\n composed: true,\n detail: {\n currentSelections,\n },\n })\n );\n event.stopPropagation();\n event.preventDefault();\n }\n\n /**\n * Click listener to ensure selectability.\n *\n * @param event click\n */\n @HostListener('click')\n // @ts-ignore\n private _handleTileSelect(event: Event) {\n if (this.radioTiles.length) {\n this._handleRadioClick(event);\n } else {\n this._handleSelectableClick(event);\n }\n }\n\n /**\n * Handle keyboard navigation for radio tiles\n *\n * @param nextSibling to focus on\n */\n private _handleKeydownRadio(nextSibling) {\n const { currentRadioSelection } = this;\n\n const { eventCurrentRadioTileSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (currentRadioSelection) {\n currentRadioSelection.toggleAttribute('selected');\n }\n nextSibling.focus();\n nextSibling.toggleAttribute('selected');\n this.currentRadioSelection = nextSibling;\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentRadioTileSelection, {\n bubbles: true,\n composed: true,\n detail: {\n nextSibling,\n },\n })\n );\n }\n\n /**\n * Handle keyboard navigation for selectable tiles\n *\n * @param event to get target\n * @param nextSibling to focus on\n */\n private _handleKeydownSelectable(event, nextSibling?) {\n const { target } = event;\n const { currentSelections } = this;\n const { eventCurrentSelectableTilesSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (nextSibling) {\n nextSibling.focus();\n } else {\n if (!currentSelections.includes(target)) {\n currentSelections.push(target);\n } else {\n currentSelections.splice(currentSelections.indexOf(target), 1);\n }\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentSelectableTilesSelection, {\n bubbles: true,\n composed: true,\n detail: {\n currentSelections,\n },\n })\n );\n }\n }\n\n /**\n * Keyboard listener to ensure keyboard navigation.\n *\n * @param event to get key pressed\n */\n @HostListener('keydown')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeydown = (event: KeyboardEvent) => {\n const { target, key } = event;\n const { radioTiles, selectableTiles } = this;\n const navigationDirection = navigationDirectionForKey[key];\n\n let tiles = radioTiles.length ? radioTiles : selectableTiles;\n const currentIndex = [...tiles].findIndex((e) => e == target);\n const nextIndex = currentIndex + navigationDirection;\n const nextSibling =\n nextIndex !== -1\n ? tiles[nextIndex % tiles.length]\n : tiles[tiles.length - 1];\n\n if (navigationDirection) {\n event.preventDefault(); // Prevent default (scrolling) behavior\n\n if (this.radioTiles.length) {\n this._handleKeydownRadio(nextSibling);\n } else {\n this._handleKeydownSelectable(event, nextSibling);\n }\n } else if (key === ' ' || key === 'Enter') {\n this._handleKeydownSelectable(event);\n }\n };\n\n /**\n * Focus listener to focus on selected element upon focusing\n *\n * @param event to get focused\n */\n @HostListener('focusin')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleFocus = (event: KeyboardEvent) => {\n const { relatedTarget, target } = event as any;\n\n if (this.radioTiles.length) {\n if (!this.currentRadioSelection) {\n target.toggleAttribute('selected');\n this.currentRadioSelection = target;\n } else if (\n !relatedTarget?.matches(\n (this.constructor as typeof CDSTileGroup).selectorRadioTile\n ) &&\n target !== this.currentRadioSelection\n ) {\n this.currentRadioSelection.focus();\n }\n }\n };\n\n /**\n * Provide an optional className to be applied to the component\n */\n @property({ reflect: true, attribute: 'class-name' })\n className;\n\n /**\n * Specify whether the group is disabled\n */\n @property({ reflect: true, type: Boolean })\n disabled;\n\n @property()\n currentRadioSelection;\n\n @property()\n currentSelections = [] as any;\n\n @property()\n radioTiles;\n\n @property()\n selectableTiles;\n\n firstUpdated() {\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'group');\n }\n\n if (!this.radioTiles) {\n this.radioTiles = this.querySelectorAll(\n (this.constructor as typeof CDSTileGroup).selectorRadioTile\n );\n }\n\n if (!this.selectableTiles) {\n this.selectableTiles = this.querySelectorAll(\n (this.constructor as typeof CDSTileGroup).selectorSelectableTile\n );\n }\n\n if (this.disabled) {\n this.radioTiles.forEach((e) => e.toggleAttribute('disabled'));\n this.selectableTiles.forEach((e) => e.toggleAttribute('disabled'));\n }\n }\n\n render() {\n const { className, disabled } = this;\n return html`\n <fieldset class=\"${className}\" ?disabled=${disabled}>\n <slot name=\"legend\" class=\"${prefix}--label\"></slot>\n <slot></slot>\n </fieldset>\n `;\n }\n\n /**\n * A selector that selects a radio tile component.\n */\n static get selectorRadioTile() {\n return `${prefix}-radio-tile`;\n }\n\n /**\n * A selector that selects a selectable tile component.\n */\n static get selectorSelectableTile() {\n return `${prefix}-selectable-tile`;\n }\n\n /**\n * The name of the custom event fired after a radio tile changes its selected state.\n */\n static get eventCurrentRadioTileSelection() {\n return `${prefix}-current-radio-tile-selection`;\n }\n\n /**\n * The name of the custom event fired after a radio tile changes its selected state.\n */\n static get eventCurrentSelectableTilesSelection() {\n return `${prefix}-current-selectable-tile-selections`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default CDSTileGroup;\n"]}
1
+ {"version":3,"sources":["components/tile/tile-group.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAQ,MAAM,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBvC;;;;GAIG;AACH,cACM,YAAa,SAAQ,iBAA6B;IACtD,OAAO,CAAC,iBAAiB;IAwBzB,OAAO,CAAC,sBAAsB;IA0B9B;;;;OAIG;IAGH,OAAO,CAAC,iBAAiB;IAQzB;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAwB3B;;;;;OAKG;IACH,OAAO,CAAC,wBAAwB;IA2BhC;;;;OAIG;IAGH,OAAO,CAAC,cAAc,CAwBpB;IAEF;;;;OAIG;IAGH,OAAO,CAAC,YAAY,CAgBlB;IAEF;;OAEG;IAEH,iBAAiB,MAAC;IAElB;;OAEG;IAEH,QAAQ,MAAC;IAGT,qBAAqB,MAAC;IAGtB,iBAAiB,MAAa;IAG9B,UAAU,MAAC;IAGX,eAAe,MAAC;IAEhB,YAAY;IAuBZ,MAAM;IAUN;;OAEG;IACH,MAAM,KAAK,iBAAiB,WAE3B;IAED;;OAEG;IACH,MAAM,KAAK,sBAAsB,WAEhC;IAED;;OAEG;IACH,MAAM,KAAK,8BAA8B,WAExC;IAED;;OAEG;IACH,MAAM,KAAK,oCAAoC,WAE9C;IAED,MAAM,CAAC,MAAM,MAAU;CACxB;AAED,eAAe,YAAY,CAAC","file":"tile-group.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 { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport { NAVIGATION_DIRECTION } from '../../globals/internal/radio-group-manager';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport styles from './tile.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Map of navigation direction by key.\n */\nconst navigationDirectionForKey = {\n ArrowUp: NAVIGATION_DIRECTION.BACKWARD,\n Up: NAVIGATION_DIRECTION.BACKWARD, // IE\n ArrowDown: NAVIGATION_DIRECTION.FORWARD,\n Down: NAVIGATION_DIRECTION.FORWARD, // IE\n};\n\n/**\n * Tile group.\n *\n * @element cds-tile-group\n */\n@customElement(`${prefix}-tile-group`)\nclass CDSTileGroup extends HostListenerMixin(LitElement) {\n private _handleRadioClick(event) {\n const { target } = event;\n const { currentRadioSelection } = this;\n const { eventCurrentRadioTileSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (!currentRadioSelection) {\n this.currentRadioSelection = target;\n } else if (currentRadioSelection !== target) {\n currentRadioSelection.toggleAttribute('selected');\n this.currentRadioSelection = target;\n }\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentRadioTileSelection, {\n bubbles: true,\n composed: true,\n detail: {\n target,\n },\n })\n );\n }\n\n private _handleSelectableClick(event) {\n const { target } = event;\n const { currentSelections } = this;\n const { eventCurrentSelectableTilesSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (!currentSelections.includes(target)) {\n currentSelections.push(target);\n } else {\n currentSelections.splice(currentSelections.indexOf(target), 1);\n }\n (target as HTMLElement).toggleAttribute('selected');\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentSelectableTilesSelection, {\n bubbles: true,\n composed: true,\n detail: {\n currentSelections,\n },\n })\n );\n event.stopPropagation();\n event.preventDefault();\n }\n\n /**\n * Click listener to ensure selectability.\n *\n * @param event click\n */\n @HostListener('click')\n // @ts-ignore\n private _handleTileSelect(event: Event) {\n if (this.radioTiles.length) {\n this._handleRadioClick(event);\n } else {\n this._handleSelectableClick(event);\n }\n }\n\n /**\n * Handle keyboard navigation for radio tiles\n *\n * @param nextSibling to focus on\n */\n private _handleKeydownRadio(nextSibling) {\n const { currentRadioSelection } = this;\n\n const { eventCurrentRadioTileSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (currentRadioSelection) {\n currentRadioSelection.toggleAttribute('selected');\n }\n nextSibling.focus();\n nextSibling.toggleAttribute('selected');\n this.currentRadioSelection = nextSibling;\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentRadioTileSelection, {\n bubbles: true,\n composed: true,\n detail: {\n nextSibling,\n },\n })\n );\n }\n\n /**\n * Handle keyboard navigation for selectable tiles\n *\n * @param event to get target\n * @param nextSibling to focus on\n */\n private _handleKeydownSelectable(event, nextSibling?) {\n const { target } = event;\n const { currentSelections } = this;\n const { eventCurrentSelectableTilesSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (nextSibling) {\n nextSibling.focus();\n } else {\n if (!currentSelections.includes(target)) {\n currentSelections.push(target);\n } else {\n currentSelections.splice(currentSelections.indexOf(target), 1);\n }\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentSelectableTilesSelection, {\n bubbles: true,\n composed: true,\n detail: {\n currentSelections,\n },\n })\n );\n }\n }\n\n /**\n * Keyboard listener to ensure keyboard navigation.\n *\n * @param event to get key pressed\n */\n @HostListener('keydown')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeydown = (event: KeyboardEvent) => {\n const { target, key } = event;\n const { radioTiles, selectableTiles } = this;\n const navigationDirection = navigationDirectionForKey[key];\n\n let tiles = radioTiles.length ? radioTiles : selectableTiles;\n const currentIndex = [...tiles].findIndex((e) => e == target);\n const nextIndex = currentIndex + navigationDirection;\n const nextSibling =\n nextIndex !== -1\n ? tiles[nextIndex % tiles.length]\n : tiles[tiles.length - 1];\n\n if (navigationDirection) {\n event.preventDefault(); // Prevent default (scrolling) behavior\n\n if (this.radioTiles.length) {\n this._handleKeydownRadio(nextSibling);\n } else {\n this._handleKeydownSelectable(event, nextSibling);\n }\n } else if (key === ' ' || key === 'Enter') {\n this._handleKeydownSelectable(event);\n }\n };\n\n /**\n * Focus listener to focus on selected element upon focusing\n *\n * @param event to get focused\n */\n @HostListener('focusin')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleFocus = (event: KeyboardEvent) => {\n const { relatedTarget, target } = event as any;\n\n if (this.radioTiles.length) {\n if (!this.currentRadioSelection) {\n target.toggleAttribute('selected');\n this.currentRadioSelection = target;\n } else if (\n !relatedTarget?.matches(\n (this.constructor as typeof CDSTileGroup).selectorRadioTile\n ) &&\n target !== this.currentRadioSelection\n ) {\n this.currentRadioSelection.focus();\n }\n }\n };\n\n /**\n * Provide an optional className to be applied to the component\n */\n @property({ reflect: true, attribute: 'fieldset-class-name' })\n fieldsetClassName;\n\n /**\n * Specify whether the group is disabled\n */\n @property({ reflect: true, type: Boolean })\n disabled;\n\n @property()\n currentRadioSelection;\n\n @property()\n currentSelections = [] as any;\n\n @property()\n radioTiles;\n\n @property()\n selectableTiles;\n\n firstUpdated() {\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'group');\n }\n\n if (!this.radioTiles) {\n this.radioTiles = this.querySelectorAll(\n (this.constructor as typeof CDSTileGroup).selectorRadioTile\n );\n }\n\n if (!this.selectableTiles) {\n this.selectableTiles = this.querySelectorAll(\n (this.constructor as typeof CDSTileGroup).selectorSelectableTile\n );\n }\n\n if (this.disabled) {\n this.radioTiles.forEach((e) => e.toggleAttribute('disabled'));\n this.selectableTiles.forEach((e) => e.toggleAttribute('disabled'));\n }\n }\n\n render() {\n const { fieldsetClassName, disabled } = this;\n return html`\n <fieldset class=\"${fieldsetClassName}\" ?disabled=${disabled}>\n <slot name=\"legend\" class=\"${prefix}--label\"></slot>\n <slot></slot>\n </fieldset>\n `;\n }\n\n /**\n * A selector that selects a radio tile component.\n */\n static get selectorRadioTile() {\n return `${prefix}-radio-tile`;\n }\n\n /**\n * A selector that selects a selectable tile component.\n */\n static get selectorSelectableTile() {\n return `${prefix}-selectable-tile`;\n }\n\n /**\n * The name of the custom event fired after a radio tile changes its selected state.\n */\n static get eventCurrentRadioTileSelection() {\n return `${prefix}-current-radio-tile-selection`;\n }\n\n /**\n * The name of the custom event fired after a radio tile changes its selected state.\n */\n static get eventCurrentSelectableTilesSelection() {\n return `${prefix}-current-selectable-tile-selections`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default CDSTileGroup;\n"]}
@@ -11,18 +11,17 @@ let _ = t => t,
11
11
  */
12
12
 
13
13
  import { LitElement, html } from 'lit';
14
- import { customElement, property } from 'lit/decorators.js';
14
+ import { property } from 'lit/decorators.js';
15
15
  import { prefix } from '../../globals/settings';
16
16
  import { NAVIGATION_DIRECTION } from '../../globals/internal/radio-group-manager';
17
17
  import HostListener from '../../globals/decorators/host-listener';
18
18
  import HostListenerMixin from '../../globals/mixins/host-listener';
19
19
  import styles from "././tile.css.js";
20
+ import { carbonElement as customElement } from '../../globals/decorators/carbon-element';
20
21
 
21
22
  /**
22
23
  * Map of navigation direction by key.
23
- */ /**
24
- * Map of navigation direction by key.
25
- */
24
+ */
26
25
  const navigationDirectionForKey = {
27
26
  ArrowUp: NAVIGATION_DIRECTION.BACKWARD,
28
27
  Up: NAVIGATION_DIRECTION.BACKWARD,
@@ -247,9 +246,9 @@ let CDSTileGroup = _decorate([customElement(`${prefix}-tile-group`)], function (
247
246
  kind: "field",
248
247
  decorators: [property({
249
248
  reflect: true,
250
- attribute: 'class-name'
249
+ attribute: 'fieldset-class-name'
251
250
  })],
252
- key: "className",
251
+ key: "fieldsetClassName",
253
252
  value: void 0
254
253
  }, {
255
254
  kind: "field",
@@ -316,7 +315,7 @@ let CDSTileGroup = _decorate([customElement(`${prefix}-tile-group`)], function (
316
315
  key: "render",
317
316
  value: function render() {
318
317
  const {
319
- className,
318
+ fieldsetClassName,
320
319
  disabled
321
320
  } = this;
322
321
  return html(_t || (_t = _`
@@ -324,7 +323,7 @@ let CDSTileGroup = _decorate([customElement(`${prefix}-tile-group`)], function (
324
323
  <slot name="legend" class="${0}--label"></slot>
325
324
  <slot></slot>
326
325
  </fieldset>
327
- `), className, disabled, prefix);
326
+ `), fieldsetClassName, disabled, prefix);
328
327
  }
329
328
 
330
329
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"tile-group.js","names":["LitElement","html","customElement","property","prefix","NAVIGATION_DIRECTION","HostListener","HostListenerMixin","styles","navigationDirectionForKey","ArrowUp","BACKWARD","Up","ArrowDown","FORWARD","Down","CDSTileGroup","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","key","value","_handleRadioClick","event","target","currentRadioSelection","eventCurrentRadioTileSelection","toggleAttribute","dispatchEvent","CustomEvent","bubbles","composed","detail","_handleSelectableClick","currentSelections","eventCurrentSelectableTilesSelection","includes","push","splice","indexOf","stopPropagation","preventDefault","decorators","_handleTileSelect","radioTiles","length","_handleKeydownRadio","nextSibling","focus","_handleKeydownSelectable","selectableTiles","navigationDirection","tiles","currentIndex","findIndex","e","nextIndex","relatedTarget","matches","selectorRadioTile","reflect","attribute","type","Boolean","firstUpdated","hasAttribute","setAttribute","querySelectorAll","selectorSelectableTile","disabled","forEach","render","className","_t","_","static"],"sources":["components/tile/tile-group.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 { LitElement, html } from 'lit';\nimport { customElement, property } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport { NAVIGATION_DIRECTION } from '../../globals/internal/radio-group-manager';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport styles from './tile.scss';\n\n/**\n * Map of navigation direction by key.\n */\nconst navigationDirectionForKey = {\n ArrowUp: NAVIGATION_DIRECTION.BACKWARD,\n Up: NAVIGATION_DIRECTION.BACKWARD, // IE\n ArrowDown: NAVIGATION_DIRECTION.FORWARD,\n Down: NAVIGATION_DIRECTION.FORWARD, // IE\n};\n\n/**\n * Tile group.\n *\n * @element cds-tile-group\n */\n@customElement(`${prefix}-tile-group`)\nclass CDSTileGroup extends HostListenerMixin(LitElement) {\n private _handleRadioClick(event) {\n const { target } = event;\n const { currentRadioSelection } = this;\n const { eventCurrentRadioTileSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (!currentRadioSelection) {\n this.currentRadioSelection = target;\n } else if (currentRadioSelection !== target) {\n currentRadioSelection.toggleAttribute('selected');\n this.currentRadioSelection = target;\n }\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentRadioTileSelection, {\n bubbles: true,\n composed: true,\n detail: {\n target,\n },\n })\n );\n }\n\n private _handleSelectableClick(event) {\n const { target } = event;\n const { currentSelections } = this;\n const { eventCurrentSelectableTilesSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (!currentSelections.includes(target)) {\n currentSelections.push(target);\n } else {\n currentSelections.splice(currentSelections.indexOf(target), 1);\n }\n (target as HTMLElement).toggleAttribute('selected');\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentSelectableTilesSelection, {\n bubbles: true,\n composed: true,\n detail: {\n currentSelections,\n },\n })\n );\n event.stopPropagation();\n event.preventDefault();\n }\n\n /**\n * Click listener to ensure selectability.\n *\n * @param event click\n */\n @HostListener('click')\n // @ts-ignore\n private _handleTileSelect(event: Event) {\n if (this.radioTiles.length) {\n this._handleRadioClick(event);\n } else {\n this._handleSelectableClick(event);\n }\n }\n\n /**\n * Handle keyboard navigation for radio tiles\n *\n * @param nextSibling to focus on\n */\n private _handleKeydownRadio(nextSibling) {\n const { currentRadioSelection } = this;\n\n const { eventCurrentRadioTileSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (currentRadioSelection) {\n currentRadioSelection.toggleAttribute('selected');\n }\n nextSibling.focus();\n nextSibling.toggleAttribute('selected');\n this.currentRadioSelection = nextSibling;\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentRadioTileSelection, {\n bubbles: true,\n composed: true,\n detail: {\n nextSibling,\n },\n })\n );\n }\n\n /**\n * Handle keyboard navigation for selectable tiles\n *\n * @param event to get target\n * @param nextSibling to focus on\n */\n private _handleKeydownSelectable(event, nextSibling?) {\n const { target } = event;\n const { currentSelections } = this;\n const { eventCurrentSelectableTilesSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (nextSibling) {\n nextSibling.focus();\n } else {\n if (!currentSelections.includes(target)) {\n currentSelections.push(target);\n } else {\n currentSelections.splice(currentSelections.indexOf(target), 1);\n }\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentSelectableTilesSelection, {\n bubbles: true,\n composed: true,\n detail: {\n currentSelections,\n },\n })\n );\n }\n }\n\n /**\n * Keyboard listener to ensure keyboard navigation.\n *\n * @param event to get key pressed\n */\n @HostListener('keydown')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeydown = (event: KeyboardEvent) => {\n const { target, key } = event;\n const { radioTiles, selectableTiles } = this;\n const navigationDirection = navigationDirectionForKey[key];\n\n let tiles = radioTiles.length ? radioTiles : selectableTiles;\n const currentIndex = [...tiles].findIndex((e) => e == target);\n const nextIndex = currentIndex + navigationDirection;\n const nextSibling =\n nextIndex !== -1\n ? tiles[nextIndex % tiles.length]\n : tiles[tiles.length - 1];\n\n if (navigationDirection) {\n event.preventDefault(); // Prevent default (scrolling) behavior\n\n if (this.radioTiles.length) {\n this._handleKeydownRadio(nextSibling);\n } else {\n this._handleKeydownSelectable(event, nextSibling);\n }\n } else if (key === ' ' || key === 'Enter') {\n this._handleKeydownSelectable(event);\n }\n };\n\n /**\n * Focus listener to focus on selected element upon focusing\n *\n * @param event to get focused\n */\n @HostListener('focusin')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleFocus = (event: KeyboardEvent) => {\n const { relatedTarget, target } = event as any;\n\n if (this.radioTiles.length) {\n if (!this.currentRadioSelection) {\n target.toggleAttribute('selected');\n this.currentRadioSelection = target;\n } else if (\n !relatedTarget?.matches(\n (this.constructor as typeof CDSTileGroup).selectorRadioTile\n ) &&\n target !== this.currentRadioSelection\n ) {\n this.currentRadioSelection.focus();\n }\n }\n };\n\n /**\n * Provide an optional className to be applied to the component\n */\n @property({ reflect: true, attribute: 'class-name' })\n className;\n\n /**\n * Specify whether the group is disabled\n */\n @property({ reflect: true, type: Boolean })\n disabled;\n\n @property()\n currentRadioSelection;\n\n @property()\n currentSelections = [] as any;\n\n @property()\n radioTiles;\n\n @property()\n selectableTiles;\n\n firstUpdated() {\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'group');\n }\n\n if (!this.radioTiles) {\n this.radioTiles = this.querySelectorAll(\n (this.constructor as typeof CDSTileGroup).selectorRadioTile\n );\n }\n\n if (!this.selectableTiles) {\n this.selectableTiles = this.querySelectorAll(\n (this.constructor as typeof CDSTileGroup).selectorSelectableTile\n );\n }\n\n if (this.disabled) {\n this.radioTiles.forEach((e) => e.toggleAttribute('disabled'));\n this.selectableTiles.forEach((e) => e.toggleAttribute('disabled'));\n }\n }\n\n render() {\n const { className, disabled } = this;\n return html`\n <fieldset class=\"${className}\" ?disabled=${disabled}>\n <slot name=\"legend\" class=\"${prefix}--label\"></slot>\n <slot></slot>\n </fieldset>\n `;\n }\n\n /**\n * A selector that selects a radio tile component.\n */\n static get selectorRadioTile() {\n return `${prefix}-radio-tile`;\n }\n\n /**\n * A selector that selects a selectable tile component.\n */\n static get selectorSelectableTile() {\n return `${prefix}-selectable-tile`;\n }\n\n /**\n * The name of the custom event fired after a radio tile changes its selected state.\n */\n static get eventCurrentRadioTileSelection() {\n return `${prefix}-current-radio-tile-selection`;\n }\n\n /**\n * The name of the custom event fired after a radio tile changes its selected state.\n */\n static get eventCurrentSelectableTilesSelection() {\n return `${prefix}-current-selectable-tile-selections`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default CDSTileGroup;\n"],"mappings":"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"}
1
+ {"version":3,"file":"tile-group.js","names":["LitElement","html","property","prefix","NAVIGATION_DIRECTION","HostListener","HostListenerMixin","styles","carbonElement","customElement","navigationDirectionForKey","ArrowUp","BACKWARD","Up","ArrowDown","FORWARD","Down","CDSTileGroup","_decorate","_initialize","_HostListenerMixin","constructor","args","F","d","kind","key","value","_handleRadioClick","event","target","currentRadioSelection","eventCurrentRadioTileSelection","toggleAttribute","dispatchEvent","CustomEvent","bubbles","composed","detail","_handleSelectableClick","currentSelections","eventCurrentSelectableTilesSelection","includes","push","splice","indexOf","stopPropagation","preventDefault","decorators","_handleTileSelect","radioTiles","length","_handleKeydownRadio","nextSibling","focus","_handleKeydownSelectable","selectableTiles","navigationDirection","tiles","currentIndex","findIndex","e","nextIndex","relatedTarget","matches","selectorRadioTile","reflect","attribute","type","Boolean","firstUpdated","hasAttribute","setAttribute","querySelectorAll","selectorSelectableTile","disabled","forEach","render","fieldsetClassName","_t","_","static"],"sources":["components/tile/tile-group.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 { LitElement, html } from 'lit';\nimport { property } from 'lit/decorators.js';\nimport { prefix } from '../../globals/settings';\nimport { NAVIGATION_DIRECTION } from '../../globals/internal/radio-group-manager';\nimport HostListener from '../../globals/decorators/host-listener';\nimport HostListenerMixin from '../../globals/mixins/host-listener';\nimport styles from './tile.scss';\nimport { carbonElement as customElement } from '../../globals/decorators/carbon-element';\n\n/**\n * Map of navigation direction by key.\n */\nconst navigationDirectionForKey = {\n ArrowUp: NAVIGATION_DIRECTION.BACKWARD,\n Up: NAVIGATION_DIRECTION.BACKWARD, // IE\n ArrowDown: NAVIGATION_DIRECTION.FORWARD,\n Down: NAVIGATION_DIRECTION.FORWARD, // IE\n};\n\n/**\n * Tile group.\n *\n * @element cds-tile-group\n */\n@customElement(`${prefix}-tile-group`)\nclass CDSTileGroup extends HostListenerMixin(LitElement) {\n private _handleRadioClick(event) {\n const { target } = event;\n const { currentRadioSelection } = this;\n const { eventCurrentRadioTileSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (!currentRadioSelection) {\n this.currentRadioSelection = target;\n } else if (currentRadioSelection !== target) {\n currentRadioSelection.toggleAttribute('selected');\n this.currentRadioSelection = target;\n }\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentRadioTileSelection, {\n bubbles: true,\n composed: true,\n detail: {\n target,\n },\n })\n );\n }\n\n private _handleSelectableClick(event) {\n const { target } = event;\n const { currentSelections } = this;\n const { eventCurrentSelectableTilesSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (!currentSelections.includes(target)) {\n currentSelections.push(target);\n } else {\n currentSelections.splice(currentSelections.indexOf(target), 1);\n }\n (target as HTMLElement).toggleAttribute('selected');\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentSelectableTilesSelection, {\n bubbles: true,\n composed: true,\n detail: {\n currentSelections,\n },\n })\n );\n event.stopPropagation();\n event.preventDefault();\n }\n\n /**\n * Click listener to ensure selectability.\n *\n * @param event click\n */\n @HostListener('click')\n // @ts-ignore\n private _handleTileSelect(event: Event) {\n if (this.radioTiles.length) {\n this._handleRadioClick(event);\n } else {\n this._handleSelectableClick(event);\n }\n }\n\n /**\n * Handle keyboard navigation for radio tiles\n *\n * @param nextSibling to focus on\n */\n private _handleKeydownRadio(nextSibling) {\n const { currentRadioSelection } = this;\n\n const { eventCurrentRadioTileSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (currentRadioSelection) {\n currentRadioSelection.toggleAttribute('selected');\n }\n nextSibling.focus();\n nextSibling.toggleAttribute('selected');\n this.currentRadioSelection = nextSibling;\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentRadioTileSelection, {\n bubbles: true,\n composed: true,\n detail: {\n nextSibling,\n },\n })\n );\n }\n\n /**\n * Handle keyboard navigation for selectable tiles\n *\n * @param event to get target\n * @param nextSibling to focus on\n */\n private _handleKeydownSelectable(event, nextSibling?) {\n const { target } = event;\n const { currentSelections } = this;\n const { eventCurrentSelectableTilesSelection } = this\n .constructor as typeof CDSTileGroup;\n\n if (nextSibling) {\n nextSibling.focus();\n } else {\n if (!currentSelections.includes(target)) {\n currentSelections.push(target);\n } else {\n currentSelections.splice(currentSelections.indexOf(target), 1);\n }\n\n this.dispatchEvent(\n new CustomEvent(eventCurrentSelectableTilesSelection, {\n bubbles: true,\n composed: true,\n detail: {\n currentSelections,\n },\n })\n );\n }\n }\n\n /**\n * Keyboard listener to ensure keyboard navigation.\n *\n * @param event to get key pressed\n */\n @HostListener('keydown')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleKeydown = (event: KeyboardEvent) => {\n const { target, key } = event;\n const { radioTiles, selectableTiles } = this;\n const navigationDirection = navigationDirectionForKey[key];\n\n let tiles = radioTiles.length ? radioTiles : selectableTiles;\n const currentIndex = [...tiles].findIndex((e) => e == target);\n const nextIndex = currentIndex + navigationDirection;\n const nextSibling =\n nextIndex !== -1\n ? tiles[nextIndex % tiles.length]\n : tiles[tiles.length - 1];\n\n if (navigationDirection) {\n event.preventDefault(); // Prevent default (scrolling) behavior\n\n if (this.radioTiles.length) {\n this._handleKeydownRadio(nextSibling);\n } else {\n this._handleKeydownSelectable(event, nextSibling);\n }\n } else if (key === ' ' || key === 'Enter') {\n this._handleKeydownSelectable(event);\n }\n };\n\n /**\n * Focus listener to focus on selected element upon focusing\n *\n * @param event to get focused\n */\n @HostListener('focusin')\n // @ts-ignore: The decorator refers to this method but TS thinks this method is not referred to\n private _handleFocus = (event: KeyboardEvent) => {\n const { relatedTarget, target } = event as any;\n\n if (this.radioTiles.length) {\n if (!this.currentRadioSelection) {\n target.toggleAttribute('selected');\n this.currentRadioSelection = target;\n } else if (\n !relatedTarget?.matches(\n (this.constructor as typeof CDSTileGroup).selectorRadioTile\n ) &&\n target !== this.currentRadioSelection\n ) {\n this.currentRadioSelection.focus();\n }\n }\n };\n\n /**\n * Provide an optional className to be applied to the component\n */\n @property({ reflect: true, attribute: 'fieldset-class-name' })\n fieldsetClassName;\n\n /**\n * Specify whether the group is disabled\n */\n @property({ reflect: true, type: Boolean })\n disabled;\n\n @property()\n currentRadioSelection;\n\n @property()\n currentSelections = [] as any;\n\n @property()\n radioTiles;\n\n @property()\n selectableTiles;\n\n firstUpdated() {\n if (!this.hasAttribute('role')) {\n this.setAttribute('role', 'group');\n }\n\n if (!this.radioTiles) {\n this.radioTiles = this.querySelectorAll(\n (this.constructor as typeof CDSTileGroup).selectorRadioTile\n );\n }\n\n if (!this.selectableTiles) {\n this.selectableTiles = this.querySelectorAll(\n (this.constructor as typeof CDSTileGroup).selectorSelectableTile\n );\n }\n\n if (this.disabled) {\n this.radioTiles.forEach((e) => e.toggleAttribute('disabled'));\n this.selectableTiles.forEach((e) => e.toggleAttribute('disabled'));\n }\n }\n\n render() {\n const { fieldsetClassName, disabled } = this;\n return html`\n <fieldset class=\"${fieldsetClassName}\" ?disabled=${disabled}>\n <slot name=\"legend\" class=\"${prefix}--label\"></slot>\n <slot></slot>\n </fieldset>\n `;\n }\n\n /**\n * A selector that selects a radio tile component.\n */\n static get selectorRadioTile() {\n return `${prefix}-radio-tile`;\n }\n\n /**\n * A selector that selects a selectable tile component.\n */\n static get selectorSelectableTile() {\n return `${prefix}-selectable-tile`;\n }\n\n /**\n * The name of the custom event fired after a radio tile changes its selected state.\n */\n static get eventCurrentRadioTileSelection() {\n return `${prefix}-current-radio-tile-selection`;\n }\n\n /**\n * The name of the custom event fired after a radio tile changes its selected state.\n */\n static get eventCurrentSelectableTilesSelection() {\n return `${prefix}-current-selectable-tile-selections`;\n }\n\n static styles = styles; // `styles` here is a `CSSResult` generated by custom WebPack loader\n}\n\nexport default CDSTileGroup;\n"],"mappings":"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"}