@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,"file":"defs.js","names":["MODAL_SIZE","exports"],"sources":["components/modal/defs.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 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\n/**\n * Modal size.\n */\nexport enum MODAL_SIZE {\n /**\n * Extra small size.\n */\n EXTRA_SMALL = 'xs',\n\n /**\n * Small size.\n */\n SMALL = 'sm',\n\n /**\n * Medium size.\n */\n MEDIUM = 'md',\n\n /**\n * Large size.\n */\n LARGE = 'lg',\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAFA,IAGYA,UAAU;AAAAC,OAAA,CAAAD,UAAA,GAAAA,UAAA;AAAA,WAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;AAAA,GAAVA,UAAU,KAAAC,OAAA,CAAAD,UAAA,GAAVA,UAAU"}
1
+ {"version":3,"file":"defs.js","names":["MODAL_SIZE","exports"],"sources":["components/modal/defs.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 2020, 2022, 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\n/**\n * Modal size.\n */\nexport enum MODAL_SIZE {\n /**\n * Extra small size.\n */\n EXTRA_SMALL = 'xs',\n\n /**\n * Small size.\n */\n SMALL = 'sm',\n\n /**\n * Medium size.\n */\n MEDIUM = 'md',\n\n /**\n * Large size.\n */\n LARGE = 'lg',\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAFA,IAGYA,UAAU;AAAAC,OAAA,CAAAD,UAAA,GAAAA,UAAA;AAAA,WAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;EAAVA,UAAU;AAAA,GAAVA,UAAU,KAAAC,OAAA,CAAAD,UAAA,GAAVA,UAAU"}
@@ -1 +1 @@
1
- {"version":3,"file":"defs.js","names":["_layout","require","STACK_ORIENTATION","exports","SPACING_STEPS","Array","from","length","spacing","map","_","step"],"sources":["components/stack/defs.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 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 { spacing } from '@carbon/layout';\n\n/**\n * Stack orientation\n */\nexport enum STACK_ORIENTATION {\n /**\n * Default vertical orientation.\n */\n VERTICAL = 'vertical',\n\n /**\n * Horizontal.\n */\n HORIZONTAL = 'horizontal',\n}\n\n/**\n * The steps in the spacing scale\n *\n * @type {Array<number>}\n */\nexport const SPACING_STEPS = Array.from({ length: spacing.length - 1 }).map(\n (_, step) => {\n return step + 1;\n }\n);\n"],"mappings":";;;;;;AASA,IAAAA,OAAA,GAAAC,OAAA;AATA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AAFA,IAGYC,iBAAiB;AAY7B;AACA;AACA;AACA;AACA;AAJAC,OAAA,CAAAD,iBAAA,GAAAA,iBAAA;AAAA,WAZYA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;AAAA,GAAjBA,iBAAiB,KAAAC,OAAA,CAAAD,iBAAA,GAAjBA,iBAAiB;AAiBtB,MAAME,aAAa,GAAGC,KAAK,CAACC,IAAI,CAAC;EAAEC,MAAM,EAAEC,eAAO,CAACD,MAAM,GAAG;AAAE,CAAC,CAAC,CAACE,GAAG,CACzE,CAACC,CAAC,EAAEC,IAAI,KAAK;EACX,OAAOA,IAAI,GAAG,CAAC;AACjB,CAAC,CACF;AAACR,OAAA,CAAAC,aAAA,GAAAA,aAAA"}
1
+ {"version":3,"file":"defs.js","names":["_layout","require","STACK_ORIENTATION","exports","SPACING_STEPS","Array","from","length","spacing","map","_","step"],"sources":["components/stack/defs.ts"],"sourcesContent":["/**\n * @license\n *\n * Copyright IBM Corp. 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 { spacing } from '@carbon/layout';\n\n/**\n * Stack orientation\n */\nexport enum STACK_ORIENTATION {\n /**\n * Default vertical orientation.\n */\n VERTICAL = 'vertical',\n\n /**\n * Horizontal.\n */\n HORIZONTAL = 'horizontal',\n}\n\n/**\n * The steps in the spacing scale\n *\n * @type {Array<number>}\n */\nexport const SPACING_STEPS = Array.from({ length: spacing.length - 1 }).map(\n (_, step) => {\n return step + 1;\n }\n);\n"],"mappings":";;;;;;AASA,IAAAA,OAAA,GAAAC,OAAA;AATA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AAFA,IAGYC,iBAAiB;AAY7B;AACA;AACA;AACA;AACA;AAJAC,OAAA,CAAAD,iBAAA,GAAAA,iBAAA;AAAA,WAZYA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;AAAA,GAAjBA,iBAAiB,KAAAC,OAAA,CAAAD,iBAAA,GAAjBA,iBAAiB;AAiBtB,MAAME,aAAa,GAAGC,KAAK,CAACC,IAAI,CAAC;EAAEC,MAAM,EAAEC,eAAO,CAACD,MAAM,GAAG;AAAE,CAAC,CAAC,CAACE,GAAG,CACzE,CAACC,CAAC,EAAEC,IAAI,KAAK;EACX,OAAOA,IAAI,GAAG,CAAC;AACjB,CACF,CAAC;AAACR,OAAA,CAAAC,aAAA,GAAAA,aAAA"}
@@ -19,6 +19,22 @@ var _on = _interopRequireDefault(require("../mixins/on"));
19
19
  * LICENSE file in the root directory of this source tree.
20
20
  */
21
21
 
22
+ /**
23
+ * A descriptor for a React event prop of a custom element.
24
+ */
25
+
26
+ /**
27
+ * A descriptor for a React prop for an attribute of a custom element.
28
+ */
29
+
30
+ /**
31
+ * A descriptor for a set of React props for attributes of a custom element.
32
+ */
33
+
34
+ /**
35
+ * React props for the component `createCustomElementType()` generates.
36
+ */
37
+
22
38
  /**
23
39
  * @param refs List of React refs to merge.
24
40
  * @returns Merged React ref.
@@ -1 +1 @@
1
- {"version":3,"file":"createReactCustomElementType.js","names":["_react","require","_on","_interopRequireDefault","mergeRefs","refs","el","forEach","ref","Object","current","convertProp","prop","descriptor","event","serialize","undefined","convertProps","props","keys","reduce","acc","propName","descriptorItem","converted","attribute","_objectSpread2","default","attachEventListeners","elem","callback","handles","Set","eventDescriptor","name","options","add","on","release","handle","delete","createReactCustomElementType","nonAttributeProps","filter","CustomElementType","Component","constructor","args","_defineProperty2","listener","call","currentTarget","_elem","_eventListenersHandle","_handleEvent","updateProps","prevProps","prevValue","value","componentDidMount","componentDidUpdate","render","_this$props","children","innerRef","_objectWithoutProperties2","mergedRef","_handleElemRef","createElement","forwardRef","booleanSerializer","exports","numberSerializer","String","objectSerializer","JSON","stringify","_default"],"sources":["globals/wrappers/createReactCustomElementType.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 React, { Component, createElement, forwardRef } from 'react';\nimport on from '../mixins/on';\nimport Handle from '../internal/handle';\n\n/**\n * A descriptor for a React event prop of a custom element.\n */\ninterface CustomElementEventDescriptor {\n /**\n * The event name.\n */\n name: string;\n\n /**\n * A boolean to detemine usage of capture mode or the event options.\n */\n options?: boolean | EventListenerOptions;\n}\n\n/**\n * A descriptor for a React prop for an attribute of a custom element.\n */\ninterface CustomElementPropDescriptor {\n /**\n * The attribute name for the prop.\n */\n attribute?: string | false;\n\n /**\n * The event name (or descriptor) for the prop.\n */\n event?: string | CustomElementEventDescriptor;\n\n /**\n * A function that takes a property value and returns the corresponding attribute value.\n */\n serialize?: (value: any) => string | void;\n}\n\n/**\n * A descriptor for a set of React props for attributes of a custom element.\n */\ninterface CustomElementPropsDescriptor {\n [propName: string]: CustomElementPropDescriptor;\n}\n\n/**\n * React props for the component `createCustomElementType()` generates.\n */\ninterface CustomElementTypeProps {\n /**\n * Ordinal prop.\n */\n [propName: string]: any;\n\n /**\n * Child nodes.\n */\n // eslint-disable-next-line react/no-unused-prop-types\n children?: React.ReactNode;\n}\n\n/**\n * @param refs List of React refs to merge.\n * @returns Merged React ref.\n */\nconst mergeRefs =\n <T>(...refs: React.Ref<T>[]) =>\n (el) => {\n refs.forEach((ref) => {\n // https://github.com/facebook/react/issues/13029#issuecomment-410002316\n if (typeof ref === 'function') {\n ref(el);\n } else if (Object(ref) === ref) {\n // `React.Ref.current` is read-only for regular use case, but we update it here\n (ref as { current: T }).current = el;\n }\n });\n };\n\n/**\n * @param prop A prop value.\n * @param descriptor A React prop descriptor.\n * @returns The corresponding attribute value for the given prop value.\n */\nconst convertProp = (prop: any, descriptor: CustomElementPropDescriptor) => {\n if (!descriptor) {\n return prop;\n }\n const { event, serialize } = descriptor;\n if (event) {\n // Events are not set as props, we use DOM `addEventListener()` instead\n return undefined;\n }\n return !serialize ? prop : serialize(prop);\n};\n\n/**\n * @param props A set of React props.\n * @param descriptor A set of React prop desciptor.\n * @returns The set of React props to set to a custom element, corresponding to the given React props.\n */\nconst convertProps = (\n props: CustomElementTypeProps,\n descriptor: CustomElementPropsDescriptor\n) =>\n Object.keys(props).reduce((acc, propName) => {\n const { [propName]: descriptorItem } = descriptor;\n const converted = convertProp(props[propName], descriptorItem);\n const { attribute } = descriptorItem ?? {};\n return attribute === false\n ? acc\n : {\n ...acc,\n [attribute || propName]: converted,\n };\n }, {});\n\n/**\n * Attaches listeners of custom events, to a custom element.\n *\n * @param elem The custom element.\n * @param descriptor An object, keyed by prop name, of data that may have custom event names.\n * @param callback A callback function that runs as the custom events fire.\n * @returns A handle that allows to release all event listeners attached.\n */\nconst attachEventListeners = (\n elem: HTMLElement,\n descriptor: CustomElementPropsDescriptor,\n callback: (name: string, event: Event) => void\n): Handle => {\n const handles = new Set<Handle>();\n Object.keys(descriptor).forEach((propName) => {\n if (descriptor[propName]) {\n const { event: eventDescriptor } = descriptor[propName];\n const name =\n Object(eventDescriptor) !== eventDescriptor\n ? (eventDescriptor as string)\n : (eventDescriptor as CustomElementEventDescriptor).name;\n const options =\n Object(eventDescriptor) !== eventDescriptor\n ? undefined\n : (eventDescriptor as CustomElementEventDescriptor).options;\n if (name) {\n handles.add(\n on(\n elem,\n name,\n (event) => {\n callback(propName, event);\n },\n options\n )\n );\n }\n }\n });\n return {\n release() {\n handles.forEach((handle) => {\n handle.release();\n handles.delete(handle);\n });\n return null;\n },\n };\n};\n\n/**\n * @param name The tag name of the custom element.\n * @param descriptor A descriptor for a set of React props for attributes of a custom element.\n * @returns A React component working as a wrapper for the given custom element.\n * @example\n * import { render } from 'react-dom';\n * import createCustomElementType, { booleanSerializer } from '/path/to/createCustomElementType';\n *\n * const CDSDropdown = createCustomElementType(`${prefix}-dropdown`, {\n * disabled: {\n * // Sets `disabled` attribute when the React prop value is truthy, unsets otherwise\n * serialize: booleanSerializer,\n * },\n * helperText: {\n * // Maps `helperText` React prop to `helper-text` attribute\n * attribute: 'helper-text',\n * },\n * onBeforeSelect: {\n * // Sets `onBeforeSelect` React prop value as a listener of `cds-dropdown-beingselected` custom event\n * event: `${prefix}-dropdown-beingselected`,\n * },\n * });\n *\n * render(\n * (\n * <CDSDropdown\n * disabled={true}\n * helperText=\"some-helper-text\"\n * onBeforeSelect={event => { console.log(`${prefix}-dropdown-beingselected is fired!`, event); }}>\n * <cds-dropdown-item value=\"all\">Option 1</cds-dropdown-item>\n * <cds-dropdown-item value=\"cloudFoundry\">Option 2</cds-dropdown-item>\n * <cds-dropdown-item value=\"staging\">Option 3</cds-dropdown-item>\n * </CDSDropdown>\n * )\n * document.body\n * );\n */\nconst createReactCustomElementType = (\n name: string,\n descriptor: CustomElementPropsDescriptor\n) => {\n /**\n * Array of React prop names that should be mapped to DOM properties instead of attributes.\n */\n const nonAttributeProps = Object.keys(descriptor).filter((propName) => {\n const { [propName]: descriptorItem } = descriptor;\n const { attribute } = descriptorItem ?? {};\n return attribute === false;\n });\n\n /**\n * A React component working as a wrapper for the custom element.\n */\n class CustomElementType extends Component<CustomElementTypeProps> {\n /**\n * The element.\n */\n private _elem: HTMLElement | null = null;\n\n /**\n * The handle that allows to release all event listeners attached to this custom element.\n */\n private _eventListenersHandle: Handle | null = null;\n\n /**\n * The callback function that runs as the custom events fire.\n *\n * @param propName The React prop name associated with the event listener.\n * @param event The event.\n */\n private _handleEvent = (propName: string, event: Event) => {\n const { [propName]: listener } = this.props;\n if (listener) {\n listener.call(event.currentTarget, event);\n }\n };\n\n /**\n * Handles getting/losing the React `ref` object of this custom element.\n *\n * @param elem The custom element.\n */\n private _handleElemRef = (elem: HTMLElement) => {\n this._elem = elem;\n if (this._eventListenersHandle) {\n this._eventListenersHandle.release();\n this._eventListenersHandle = null;\n }\n if (elem) {\n this._eventListenersHandle = attachEventListeners(\n elem,\n descriptor,\n this._handleEvent\n );\n }\n };\n\n /**\n * Reflects change in React props to DOM properties.\n *\n * @param prevProps The previous props.\n */\n updateProps(prevProps: { [key: string]: any } = {}) {\n const { props, _elem: elem } = this;\n nonAttributeProps.forEach((propName) => {\n const { [propName]: prevValue } = prevProps;\n const { [propName]: value } = props;\n if (prevValue !== value) {\n elem![propName] = value;\n }\n });\n }\n\n componentDidMount() {\n this.updateProps();\n }\n\n componentDidUpdate(prevProps) {\n this.updateProps(prevProps);\n }\n\n render() {\n // eslint-disable-next-line react/prop-types\n const { children, innerRef, ...props } = this.props;\n const mergedRef = mergeRefs<HTMLElement>(innerRef, this._handleElemRef);\n return createElement(\n name,\n { ref: mergedRef, ...convertProps(props, descriptor) },\n children\n );\n }\n }\n\n return forwardRef<HTMLElement, CustomElementTypeProps>((props, ref) =>\n createElement(CustomElementType, { ...props, innerRef: ref })\n );\n};\n\n/**\n * @param value A React prop value.\n * @returns Serialized version of React prop value, as a boolean attribute in a custom element.\n */\nexport const booleanSerializer = (value) => (!value ? undefined : '');\n\n/**\n * @param value A React prop value.\n * @returns Serialized version of React prop value, as a number attribute in a custom element.\n */\nexport const numberSerializer = (value) =>\n value == null ? value : String(value);\n\n/**\n * @param value A React prop value.\n * @returns Serialized version of React prop value, as a object attribute in a custom element.\n */\nexport const objectSerializer = (value) =>\n value == null ? value : JSON.stringify(value);\n\nexport default createReactCustomElementType;\n"],"mappings":"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"}
1
+ {"version":3,"file":"createReactCustomElementType.js","names":["_react","require","_on","_interopRequireDefault","mergeRefs","refs","el","forEach","ref","Object","current","convertProp","prop","descriptor","event","serialize","undefined","convertProps","props","keys","reduce","acc","propName","descriptorItem","converted","attribute","_objectSpread2","default","attachEventListeners","elem","callback","handles","Set","eventDescriptor","name","options","add","on","release","handle","delete","createReactCustomElementType","nonAttributeProps","filter","CustomElementType","Component","constructor","args","_defineProperty2","listener","call","currentTarget","_elem","_eventListenersHandle","_handleEvent","updateProps","prevProps","prevValue","value","componentDidMount","componentDidUpdate","render","_this$props","children","innerRef","_objectWithoutProperties2","mergedRef","_handleElemRef","createElement","forwardRef","booleanSerializer","exports","numberSerializer","String","objectSerializer","JSON","stringify","_default"],"sources":["globals/wrappers/createReactCustomElementType.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 React, { Component, createElement, forwardRef } from 'react';\nimport on from '../mixins/on';\nimport Handle from '../internal/handle';\n\n/**\n * A descriptor for a React event prop of a custom element.\n */\ninterface CustomElementEventDescriptor {\n /**\n * The event name.\n */\n name: string;\n\n /**\n * A boolean to detemine usage of capture mode or the event options.\n */\n options?: boolean | EventListenerOptions;\n}\n\n/**\n * A descriptor for a React prop for an attribute of a custom element.\n */\ninterface CustomElementPropDescriptor {\n /**\n * The attribute name for the prop.\n */\n attribute?: string | false;\n\n /**\n * The event name (or descriptor) for the prop.\n */\n event?: string | CustomElementEventDescriptor;\n\n /**\n * A function that takes a property value and returns the corresponding attribute value.\n */\n serialize?: (value: any) => string | void;\n}\n\n/**\n * A descriptor for a set of React props for attributes of a custom element.\n */\ninterface CustomElementPropsDescriptor {\n [propName: string]: CustomElementPropDescriptor;\n}\n\n/**\n * React props for the component `createCustomElementType()` generates.\n */\ninterface CustomElementTypeProps {\n /**\n * Ordinal prop.\n */\n [propName: string]: any;\n\n /**\n * Child nodes.\n */\n // eslint-disable-next-line react/no-unused-prop-types\n children?: React.ReactNode;\n}\n\n/**\n * @param refs List of React refs to merge.\n * @returns Merged React ref.\n */\nconst mergeRefs =\n <T>(...refs: React.Ref<T>[]) =>\n (el) => {\n refs.forEach((ref) => {\n // https://github.com/facebook/react/issues/13029#issuecomment-410002316\n if (typeof ref === 'function') {\n ref(el);\n } else if (Object(ref) === ref) {\n // `React.Ref.current` is read-only for regular use case, but we update it here\n (ref as { current: T }).current = el;\n }\n });\n };\n\n/**\n * @param prop A prop value.\n * @param descriptor A React prop descriptor.\n * @returns The corresponding attribute value for the given prop value.\n */\nconst convertProp = (prop: any, descriptor: CustomElementPropDescriptor) => {\n if (!descriptor) {\n return prop;\n }\n const { event, serialize } = descriptor;\n if (event) {\n // Events are not set as props, we use DOM `addEventListener()` instead\n return undefined;\n }\n return !serialize ? prop : serialize(prop);\n};\n\n/**\n * @param props A set of React props.\n * @param descriptor A set of React prop desciptor.\n * @returns The set of React props to set to a custom element, corresponding to the given React props.\n */\nconst convertProps = (\n props: CustomElementTypeProps,\n descriptor: CustomElementPropsDescriptor\n) =>\n Object.keys(props).reduce((acc, propName) => {\n const { [propName]: descriptorItem } = descriptor;\n const converted = convertProp(props[propName], descriptorItem);\n const { attribute } = descriptorItem ?? {};\n return attribute === false\n ? acc\n : {\n ...acc,\n [attribute || propName]: converted,\n };\n }, {});\n\n/**\n * Attaches listeners of custom events, to a custom element.\n *\n * @param elem The custom element.\n * @param descriptor An object, keyed by prop name, of data that may have custom event names.\n * @param callback A callback function that runs as the custom events fire.\n * @returns A handle that allows to release all event listeners attached.\n */\nconst attachEventListeners = (\n elem: HTMLElement,\n descriptor: CustomElementPropsDescriptor,\n callback: (name: string, event: Event) => void\n): Handle => {\n const handles = new Set<Handle>();\n Object.keys(descriptor).forEach((propName) => {\n if (descriptor[propName]) {\n const { event: eventDescriptor } = descriptor[propName];\n const name =\n Object(eventDescriptor) !== eventDescriptor\n ? (eventDescriptor as string)\n : (eventDescriptor as CustomElementEventDescriptor).name;\n const options =\n Object(eventDescriptor) !== eventDescriptor\n ? undefined\n : (eventDescriptor as CustomElementEventDescriptor).options;\n if (name) {\n handles.add(\n on(\n elem,\n name,\n (event) => {\n callback(propName, event);\n },\n options\n )\n );\n }\n }\n });\n return {\n release() {\n handles.forEach((handle) => {\n handle.release();\n handles.delete(handle);\n });\n return null;\n },\n };\n};\n\n/**\n * @param name The tag name of the custom element.\n * @param descriptor A descriptor for a set of React props for attributes of a custom element.\n * @returns A React component working as a wrapper for the given custom element.\n * @example\n * import { render } from 'react-dom';\n * import createCustomElementType, { booleanSerializer } from '/path/to/createCustomElementType';\n *\n * const CDSDropdown = createCustomElementType(`${prefix}-dropdown`, {\n * disabled: {\n * // Sets `disabled` attribute when the React prop value is truthy, unsets otherwise\n * serialize: booleanSerializer,\n * },\n * helperText: {\n * // Maps `helperText` React prop to `helper-text` attribute\n * attribute: 'helper-text',\n * },\n * onBeforeSelect: {\n * // Sets `onBeforeSelect` React prop value as a listener of `cds-dropdown-beingselected` custom event\n * event: `${prefix}-dropdown-beingselected`,\n * },\n * });\n *\n * render(\n * (\n * <CDSDropdown\n * disabled={true}\n * helperText=\"some-helper-text\"\n * onBeforeSelect={event => { console.log(`${prefix}-dropdown-beingselected is fired!`, event); }}>\n * <cds-dropdown-item value=\"all\">Option 1</cds-dropdown-item>\n * <cds-dropdown-item value=\"cloudFoundry\">Option 2</cds-dropdown-item>\n * <cds-dropdown-item value=\"staging\">Option 3</cds-dropdown-item>\n * </CDSDropdown>\n * )\n * document.body\n * );\n */\nconst createReactCustomElementType = (\n name: string,\n descriptor: CustomElementPropsDescriptor\n) => {\n /**\n * Array of React prop names that should be mapped to DOM properties instead of attributes.\n */\n const nonAttributeProps = Object.keys(descriptor).filter((propName) => {\n const { [propName]: descriptorItem } = descriptor;\n const { attribute } = descriptorItem ?? {};\n return attribute === false;\n });\n\n /**\n * A React component working as a wrapper for the custom element.\n */\n class CustomElementType extends Component<CustomElementTypeProps> {\n /**\n * The element.\n */\n private _elem: HTMLElement | null = null;\n\n /**\n * The handle that allows to release all event listeners attached to this custom element.\n */\n private _eventListenersHandle: Handle | null = null;\n\n /**\n * The callback function that runs as the custom events fire.\n *\n * @param propName The React prop name associated with the event listener.\n * @param event The event.\n */\n private _handleEvent = (propName: string, event: Event) => {\n const { [propName]: listener } = this.props;\n if (listener) {\n listener.call(event.currentTarget, event);\n }\n };\n\n /**\n * Handles getting/losing the React `ref` object of this custom element.\n *\n * @param elem The custom element.\n */\n private _handleElemRef = (elem: HTMLElement) => {\n this._elem = elem;\n if (this._eventListenersHandle) {\n this._eventListenersHandle.release();\n this._eventListenersHandle = null;\n }\n if (elem) {\n this._eventListenersHandle = attachEventListeners(\n elem,\n descriptor,\n this._handleEvent\n );\n }\n };\n\n /**\n * Reflects change in React props to DOM properties.\n *\n * @param prevProps The previous props.\n */\n updateProps(prevProps: { [key: string]: any } = {}) {\n const { props, _elem: elem } = this;\n nonAttributeProps.forEach((propName) => {\n const { [propName]: prevValue } = prevProps;\n const { [propName]: value } = props;\n if (prevValue !== value) {\n elem![propName] = value;\n }\n });\n }\n\n componentDidMount() {\n this.updateProps();\n }\n\n componentDidUpdate(prevProps) {\n this.updateProps(prevProps);\n }\n\n render() {\n // eslint-disable-next-line react/prop-types\n const { children, innerRef, ...props } = this.props;\n const mergedRef = mergeRefs<HTMLElement>(innerRef, this._handleElemRef);\n return createElement(\n name,\n { ref: mergedRef, ...convertProps(props, descriptor) },\n children\n );\n }\n }\n\n return forwardRef<HTMLElement, CustomElementTypeProps>((props, ref) =>\n createElement(CustomElementType, { ...props, innerRef: ref })\n );\n};\n\n/**\n * @param value A React prop value.\n * @returns Serialized version of React prop value, as a boolean attribute in a custom element.\n */\nexport const booleanSerializer = (value) => (!value ? undefined : '');\n\n/**\n * @param value A React prop value.\n * @returns Serialized version of React prop value, as a number attribute in a custom element.\n */\nexport const numberSerializer = (value) =>\n value == null ? value : String(value);\n\n/**\n * @param value A React prop value.\n * @returns Serialized version of React prop value, as a object attribute in a custom element.\n */\nexport const objectSerializer = (value) =>\n value == null ? value : JSON.stringify(value);\n\nexport default createReactCustomElementType;\n"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@carbon/web-components",
3
- "version": "2.0.0-rc.1",
3
+ "version": "2.0.0-rc.3",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -30,6 +30,7 @@
30
30
  "./package.json": "./package.json"
31
31
  },
32
32
  "scripts": {
33
+ "prebuild": "node tools/fix-carbon-sass-imports.js",
33
34
  "build": "gulp build && yarn wca",
34
35
  "build:dist": "gulp build:dist",
35
36
  "build:dist:dev": "gulp build:dist:dev",
@@ -68,9 +69,9 @@
68
69
  ],
69
70
  "dependencies": {
70
71
  "@babel/runtime": "^7.16.3",
71
- "@carbon/styles": "^1.30.0",
72
+ "@carbon/styles": "^1.34.1",
72
73
  "flatpickr": "4.6.1",
73
- "lit": "^2.6.0",
74
+ "lit": "^2.7.6",
74
75
  "lodash-es": "^4.17.21"
75
76
  },
76
77
  "devDependencies": {
@@ -82,15 +83,15 @@
82
83
  "@babel/plugin-proposal-optional-chaining": "~7.12.0",
83
84
  "@babel/plugin-syntax-decorators": "~7.12.0",
84
85
  "@babel/plugin-transform-modules-commonjs": "~7.12.0",
85
- "@babel/plugin-transform-runtime": "~7.12.0",
86
+ "@babel/plugin-transform-runtime": "7.18.5",
86
87
  "@babel/plugin-transform-template-literals": "~7.12.0",
87
88
  "@babel/plugin-transform-typescript": "~7.12.0",
88
89
  "@babel/preset-env": "~7.12.0",
89
- "@babel/preset-modules": "~0.1.5",
90
+ "@babel/preset-modules": "^0.1.5",
90
91
  "@babel/template": "~7.12.0",
91
92
  "@babel/traverse": "~7.12.0",
92
- "@carbon/icon-helpers": "^10.40.0",
93
- "@carbon/icons": "^11.20.0",
93
+ "@carbon/icon-helpers": "^10.43.1",
94
+ "@carbon/icons": "^11.23.1",
94
95
  "@open-wc/semantic-dom-diff": "~0.18.0",
95
96
  "@percy-io/in-percy": "^0.1.11",
96
97
  "@percy/cli": "^1.8.1",
@@ -100,6 +101,7 @@
100
101
  "@rollup/plugin-commonjs": "^21.0.3",
101
102
  "@rollup/plugin-node-resolve": "^8.4.0",
102
103
  "@rollup/plugin-replace": "^4.0.0",
104
+ "@rollup/plugin-terser": "^0.4.3",
103
105
  "@rollup/pluginutils": "^4.2.0",
104
106
  "@storybook/addon-a11y": "^6.5.15",
105
107
  "@storybook/addon-actions": "^6.5.15",
@@ -122,12 +124,12 @@
122
124
  "@webcomponents/webcomponents-platform": "^1.0.1",
123
125
  "async-done": "^1.3.0",
124
126
  "autoprefixer": "^9.8.8",
125
- "babel-eslint": "^10.0.3",
126
- "babel-loader": "^8.0.0",
127
+ "babel-eslint": "^10.1.0",
128
+ "babel-loader": "^8.0.4",
127
129
  "babel-plugin-template-html-minifier": "^4.1.0",
128
130
  "cache-loader": "^4.1.0",
129
131
  "child-process-promise": "^2.2.1",
130
- "commander": "^7.2.0",
132
+ "commander": "^4.1.0",
131
133
  "core-js": "^3.19.1",
132
134
  "cross-env": "^7.0.0",
133
135
  "css-loader": "^5.2.0",
@@ -168,10 +170,10 @@
168
170
  "karma-firefox-launcher": "^2.1.2",
169
171
  "karma-jasmine": "^4.0.1",
170
172
  "karma-snapshot": "^0.6.0",
171
- "karma-sourcemap-loader": "^0.3.8",
173
+ "karma-sourcemap-loader": "^0.4.0",
172
174
  "karma-spec-reporter": "0.0.36",
173
175
  "karma-webpack": "^4.0.2",
174
- "magic-string": "^0.27.0",
176
+ "magic-string": "^0.30.0",
175
177
  "mini-css-extract-plugin": "~2.7.0",
176
178
  "mkdirp": "^0.5.0",
177
179
  "null-loader": "^4.0.0",
@@ -180,7 +182,7 @@
180
182
  "postcss": "^8.2.10",
181
183
  "postcss-loader": "^3.0.0",
182
184
  "postcss-selector-parser": "^6.0.0",
183
- "prop-types": "^15.7.0",
185
+ "prop-types": "^15.7.2",
184
186
  "puppeteer": "^13.0.0",
185
187
  "react": "16.14.0",
186
188
  "react-dom": "16.14.0",
@@ -190,9 +192,8 @@
190
192
  "resize-observer-polyfill": "^1.5.0",
191
193
  "rollup": "^2.55.1",
192
194
  "rollup-plugin-multi-input": "^1.3.1",
193
- "rollup-plugin-terser": "^7.0.2",
194
195
  "rtlcss": "^3.0.0",
195
- "sass": "~1.40.0",
196
+ "sass": "~1.62.0",
196
197
  "sass-loader": "^10.0.0",
197
198
  "strip-comments": "^1.0.0",
198
199
  "style-loader": "^2.0.0",
@@ -206,7 +207,7 @@
206
207
  "web-component-analyzer": "1.2.0-next.0",
207
208
  "webpack": "^4.46.0",
208
209
  "webpack-dev-server": "^4.0.0",
209
- "zone.js": "~0.12.0"
210
+ "zone.js": "~0.13.0"
210
211
  },
211
212
  "typings": "es/index.d.ts"
212
213
  }
@@ -11,14 +11,13 @@ $css--plex: true !default;
11
11
  @use '@carbon/styles/scss/spacing' as *;
12
12
  @use '@carbon/styles/scss/type' as *;
13
13
  @use '@carbon/styles/scss/utilities/convert' as *;
14
- @use '@carbon/styles/scss/layer/layer-tokens';
15
14
  @use '@carbon/styles/scss/components/accordion';
15
+ @use '../../globals/mixins/temp-layout' as *;
16
16
 
17
17
  :host(#{$prefix}-accordion),
18
18
  :host(#{$prefix}-accordion-skeleton) {
19
19
  @extend .#{$prefix}--accordion;
20
-
21
- @include layer-tokens.emit-layer-tokens(1);
20
+ @include emit-layout-tokens();
22
21
  }
23
22
 
24
23
  :host(#{$prefix}-accordion-item),
@@ -40,12 +39,18 @@ $css--plex: true !default;
40
39
 
41
40
  :host(#{$prefix}-accordion-item[size='sm']),
42
41
  :host(#{$prefix}-accordion-item-skeleton[size='sm']) {
43
- @extend .#{$prefix}--accordion--sm;
42
+ button {
43
+ @extend .#{$prefix}--layout--size-sm;
44
+ min-height: var(--cds-layout-size-height-context);
45
+ }
44
46
  }
45
47
 
46
48
  :host(#{$prefix}-accordion-item[size='lg']),
47
49
  :host(#{$prefix}-accordion-item-skeleton[size='lg']) {
48
- @extend .#{$prefix}--accordion--lg;
50
+ button {
51
+ @extend .#{$prefix}--layout--size-lg;
52
+ min-height: var(--cds-layout-size-height-context);
53
+ }
49
54
  }
50
55
 
51
56
  :host(#{$prefix}-accordion-item[alignment='start']),
@@ -8,6 +8,7 @@
8
8
  $css--plex: true !default;
9
9
 
10
10
  @use '@carbon/styles/scss/config' as *;
11
+ @use '@carbon/styles/scss/spacing' as *;
11
12
  @use '@carbon/styles/scss/theme' as *;
12
13
  @use '@carbon/styles/scss/motion' as *;
13
14
  @use '@carbon/styles/scss/utilities' as *;
@@ -17,11 +18,22 @@ $css--plex: true !default;
17
18
  :host(#{$prefix}-breadcrumb),
18
19
  :host(#{$prefix}-breadcrumb-skeleton) {
19
20
  @extend .#{$prefix}--breadcrumb;
21
+
22
+ .#{$prefix}--breadcrumb {
23
+ padding: 0;
24
+ margin: 0;
25
+ }
20
26
  }
21
27
 
22
28
  :host(#{$prefix}-breadcrumb-item),
23
29
  :host(#{$prefix}-breadcrumb-item-skeleton) {
24
30
  @extend .#{$prefix}--breadcrumb-item;
31
+
32
+ &::after {
33
+ margin-left: $spacing-03;
34
+ color: $text-primary;
35
+ content: '/';
36
+ }
25
37
  }
26
38
 
27
39
  :host(#{$prefix}-breadcrumb-overflow-menu) {
@@ -11,18 +11,32 @@ $css--plex: true !default;
11
11
  @use '@carbon/styles/scss/spacing' as *;
12
12
  @use '@carbon/styles/scss/utilities/convert' as *;
13
13
  @use '@carbon/styles/scss/theme' as *;
14
- @use '@carbon/styles/scss/layer/layer-tokens';
15
14
  @use '@carbon/styles/scss/components/button' as *;
16
15
  @use '@carbon/styles/scss/components/popover/index';
17
16
  @use '@carbon/styles/scss/components/code-snippet/code-snippet' as *;
18
17
  @use '@carbon/styles/scss/components/tooltip';
18
+ @use '../../globals/mixins/temp-layout' as *;
19
19
 
20
20
  @include code-snippet;
21
21
 
22
22
  :host(#{$prefix}-button),
23
23
  :host(#{$prefix}-modal-footer-button) {
24
- @include layer-tokens.emit-layer-tokens(1);
24
+ @include emit-layout-tokens();
25
+
25
26
  display: inline-flex;
27
+
28
+ ::slotted([slot='icon']) {
29
+ @extend .#{$prefix}--btn__icon;
30
+ }
31
+
32
+ .#{$prefix}--btn {
33
+ flex-grow: 1;
34
+ max-width: 100%;
35
+ }
36
+ }
37
+
38
+ :host(#{$prefix}-button-skeleton) {
39
+ @include emit-layout-tokens();
26
40
  }
27
41
 
28
42
  :host(#{$prefix}-button[isExpressive]) ::slotted([slot='icon']),
@@ -13,19 +13,13 @@ $css--plex: true !default;
13
13
  @use '@carbon/styles/scss/spacing' as *;
14
14
  @use '@carbon/styles/scss/motion' as *;
15
15
  @use '@carbon/styles/scss/utilities' as *;
16
- @use '@carbon/styles/scss/layer/layer-tokens';
17
- @use '@carbon/styles/scss/components/code-snippet/code-snippet' as *;
16
+ @use '@carbon/styles/scss/components/code-snippet/index';
18
17
  @use '@carbon/styles/scss/components/copy-button/copy-button';
19
18
 
20
- // https://github.com/carbon-design-system/carbon/issues/11408
21
- @include code-snippet;
22
-
23
19
  :host(#{$prefix}-code-snippet),
24
20
  :host(#{$prefix}-code-snippet-skeleton) {
25
21
  @extend .#{$prefix}--snippet;
26
22
 
27
- @include layer-tokens.emit-layer-tokens(1);
28
-
29
23
  .#{$prefix}--snippet-container {
30
24
  @extend .#{$prefix}--snippet-container;
31
25
  }
@@ -57,7 +51,11 @@ $css--plex: true !default;
57
51
  }
58
52
 
59
53
  #{$prefix}-copy-button {
60
- @extend .#{$prefix}--snippet, .#{$prefix}--popover-container;
54
+ @include font-family('sans');
55
+
56
+ position: absolute;
57
+ top: 0;
58
+ right: 0;
61
59
 
62
60
  code: {
63
61
  overflow: hidden;
@@ -11,7 +11,6 @@ $css--plex: true !default;
11
11
  @use '@carbon/styles/scss/spacing' as *;
12
12
  @use '@carbon/styles/scss/theme' as *;
13
13
  @use '@carbon/styles/scss/utilities' as *;
14
- @use '@carbon/styles/scss/layer/layer-tokens';
15
14
  @use '@carbon/styles/scss/components/combo-box/combo-box';
16
15
  @use '@carbon/styles/scss/components/form';
17
16
  @use '@carbon/styles/scss/components/text-input/text-input';
@@ -20,8 +19,6 @@ $css--plex: true !default;
20
19
  :host(#{$prefix}-combo-box) {
21
20
  @extend :host(#{$prefix}-dropdown);
22
21
 
23
- @include layer-tokens.emit-layer-tokens(1);
24
-
25
22
  outline: none;
26
23
 
27
24
  .#{$prefix}--assistive-text {
@@ -30,13 +27,6 @@ $css--plex: true !default;
30
27
  top: -100%;
31
28
  }
32
29
 
33
- .#{$prefix}--list-box__field,
34
- // To get more specifity than:
35
- // https://github.com/carbon-design-system/carbon/blob/v10.16.0/packages/components/src/components/list-box/_list-box.scss#L126
36
- .#{$prefix}--list-box[data-invalid] .#{$prefix}--list-box__field {
37
- padding: 0;
38
- }
39
-
40
30
  .#{$prefix}--list-box__menu {
41
31
  outline: none;
42
32
  top: 100%;
@@ -10,16 +10,15 @@ $css--plex: true !default;
10
10
  @use '@carbon/styles/scss/config' as *;
11
11
  @use '@carbon/styles/scss/theme' as *;
12
12
  @use '@carbon/styles/scss/utilities/convert' as *;
13
- @use '@carbon/styles/scss/layer/layer-tokens';
14
13
  @use '@carbon/styles/scss/components/content-switcher/content-switcher' as *;
14
+ @use '../../globals/mixins/temp-layout' as *;
15
15
 
16
16
  // https://github.com/carbon-design-system/carbon/issues/11408
17
17
  @include content-switcher;
18
18
 
19
19
  :host(#{$prefix}-content-switcher) {
20
20
  @extend .#{$prefix}--content-switcher;
21
-
22
- @include layer-tokens.emit-layer-tokens(1);
21
+ @include emit-layout-tokens();
23
22
  }
24
23
 
25
24
  :host(#{$prefix}-content-switcher[icon]) {
@@ -27,19 +26,22 @@ $css--plex: true !default;
27
26
  }
28
27
 
29
28
  :host(#{$prefix}-content-switcher[size='sm']) {
30
- @extend .#{$prefix}--content-switcher--sm;
29
+ @extend .#{$prefix}--layout--size-sm;
31
30
  }
32
31
 
33
32
  :host(#{$prefix}-content-switcher[size='lg']) {
34
- @extend .#{$prefix}--content-switcher--lg;
33
+ @extend .#{$prefix}--layout--size-lg;
35
34
  }
36
35
 
37
36
  :host(#{$prefix}-content-switcher-item) {
38
- width: 100%;
39
37
  outline: none;
38
+ width: 100%;
40
39
 
41
40
  .#{$prefix}--content-switcher-btn {
42
41
  height: 100%;
42
+ width: 100%;
43
+ align-items: center;
44
+ padding: 0.5rem var(--cds-layout-density-padding-inline-local);
43
45
 
44
46
  &:first-child,
45
47
  &:last-child {
@@ -72,21 +74,6 @@ $css--plex: true !default;
72
74
  border-bottom-color: $border-inverse;
73
75
  }
74
76
  }
75
-
76
- &[icon] {
77
- width: initial;
78
-
79
- .#{$prefix}--content-switcher-btn {
80
- padding-left: rem(11px);
81
- padding-right: rem(11px);
82
- height: rem(40px);
83
- }
84
-
85
- .#{$prefix}--content-switcher__label {
86
- display: flex;
87
- align-items: center;
88
- }
89
- }
90
77
  }
91
78
 
92
79
  :host(#{$prefix}-content-switcher-item)[icon] {
@@ -12,19 +12,19 @@ $css--plex: true !default;
12
12
  @use '@carbon/styles/scss/utilities' as *;
13
13
  @use '@carbon/styles/scss/utilities/keyframes' as *;
14
14
  @use '@carbon/styles/scss/motion' as *;
15
- @use '@carbon/styles/scss/layer/layer-tokens';
16
15
  @use '@carbon/styles/scss/components/button';
17
16
  @use '@carbon/styles/scss/components/tooltip';
18
17
  @use '@carbon/styles/scss/components/code-snippet/code-snippet' as *;
19
18
  @use '@carbon/styles/scss/components/copy-button/index';
19
+ @use '../../globals/mixins/temp-layout' as *;
20
20
 
21
21
  @include code-snippet;
22
22
 
23
23
  :host(#{$prefix}-copy-button) {
24
+ @include emit-layout-tokens();
25
+
24
26
  display: inline-flex;
25
27
  outline: none;
26
-
27
- @include layer-tokens.emit-layer-tokens(1);
28
28
  }
29
29
 
30
30
  .#{$prefix}--snippet__icon {
@@ -50,6 +50,10 @@
50
50
  @extend .#{$prefix}--toolbar-action;
51
51
  @extend .#{$prefix}--toolbar-search-container-expandable;
52
52
 
53
+ &:hover {
54
+ background-color: $field-hover;
55
+ }
56
+
53
57
  flex: none;
54
58
  transition: flex 175ms $standard-easing;
55
59
 
@@ -10,8 +10,6 @@
10
10
  //
11
11
 
12
12
  :host(#{$prefix}-table) {
13
- @include layer-tokens.emit-layer-tokens(1);
14
-
15
13
  @extend .#{$prefix}--data-table;
16
14
 
17
15
  display: table;
@@ -12,7 +12,6 @@ $css--plex: true !default;
12
12
  @use '@carbon/styles/scss/type' as *;
13
13
  @use '@carbon/styles/scss/theme' as *;
14
14
  @use '@carbon/styles/scss/spacing' as *;
15
- @use '@carbon/styles/scss/layer/layer-tokens';
16
15
  @use '@carbon/styles/scss/motion' as *;
17
16
  @use '@carbon/styles/scss/utilities/convert' as *;
18
17
  @use '@carbon/styles/scss/components/checkbox';
@@ -11,7 +11,6 @@ $css--plex: true !default;
11
11
  @use '@carbon/styles/scss/theme' as *;
12
12
  @use '@carbon/styles/scss/utilities' as *;
13
13
  @use '@carbon/styles/scss/colors' as *;
14
- @use '@carbon/styles/scss/layer/layer-tokens';
15
14
  @use '@carbon/styles/scss/components/form';
16
15
  @use '@carbon/styles/scss/components/date-picker/date-picker' as *;
17
16
 
@@ -21,8 +20,6 @@ $css--plex: true !default;
21
20
  :host(#{$prefix}-date-picker) {
22
21
  @extend .#{$prefix}--date-picker;
23
22
 
24
- @include layer-tokens.emit-layer-tokens(1);
25
-
26
23
  #floating-menu-container {
27
24
  position: absolute;
28
25
  width: 100%;
@@ -11,7 +11,6 @@ $css--plex: true !default;
11
11
  @use '@carbon/styles/scss/spacing' as *;
12
12
  @use '@carbon/styles/scss/theme' as *;
13
13
  @use '@carbon/styles/scss/utilities' as *;
14
- @use '@carbon/styles/scss/layer/layer-tokens';
15
14
  @use '@carbon/styles/scss/components/list-box/list-box' as *;
16
15
  @use '@carbon/styles/scss/components/dropdown' as *;
17
16
  @use '@carbon/styles/scss/components/form';
@@ -22,7 +21,6 @@ $css--plex: true !default;
22
21
  @include list-box;
23
22
 
24
23
  :host(#{$prefix}-dropdown) {
25
- @include layer-tokens.emit-layer-tokens(1);
26
24
  outline: none;
27
25
 
28
26
  .#{$prefix}--assistive-text {
@@ -67,6 +65,7 @@ $css--plex: true !default;
67
65
  }
68
66
  }
69
67
 
68
+ :host(#{$prefix}-combo-box[direction='top']),
70
69
  :host(#{$prefix}-dropdown[direction='top']) {
71
70
  @extend .#{$prefix}--list-box--up;
72
71
 
@@ -9,8 +9,8 @@
9
9
  @use '@carbon/styles/scss/type' as *;
10
10
  @use '@carbon/styles/scss/spacing' as *;
11
11
  @use '@carbon/styles/scss/theme' as *;
12
- @use '@carbon/styles/scss/layer/layer-tokens';
13
12
  @use '@carbon/styles/scss/components/file-uploader/file-uploader' as *;
13
+ @use '../../globals/mixins/temp-layout' as *;
14
14
 
15
15
  // https://github.com/carbon-design-system/carbon/issues/11408
16
16
  @include file-uploader;
@@ -23,15 +23,11 @@
23
23
 
24
24
  :host(#{$prefix}-file-drop-container) {
25
25
  @extend .#{$prefix}--file;
26
-
27
- @include layer-tokens.emit-layer-tokens(1);
28
26
  }
29
27
 
30
28
  :host(#{$prefix}-file-uploader-item) {
31
29
  @extend .#{$prefix}--file__selected-file;
32
30
 
33
- @include layer-tokens.emit-layer-tokens(1);
34
-
35
31
  .#{$prefix}--file-filename {
36
32
  margin-top: 0;
37
33
  margin-bottom: 0;
@@ -59,6 +55,8 @@
59
55
  }
60
56
 
61
57
  :host(#{$prefix}-file-uploader) {
58
+ @include emit-layout-tokens();
59
+
62
60
  .#{$prefix}--label-description,
63
61
  .#{$prefix}--file--label {
64
62
  margin-top: 0;
@@ -10,5 +10,10 @@ $css--plex: true !default;
10
10
  @use '@carbon/styles/scss/config' as *;
11
11
  @use '@carbon/styles/scss/utilities' as *;
12
12
  @use '@carbon/styles/scss/breakpoint' as *;
13
+ @use '../../globals/mixins/temp-layout' as *;
13
14
  @use '../tooltip/tooltip';
14
15
  @use '../button/button';
16
+
17
+ :host(#{$prefix}-icon-button) {
18
+ @include emit-layout-tokens();
19
+ }
@@ -7,7 +7,6 @@
7
7
 
8
8
  @use '@carbon/styles/scss/config' as *;
9
9
  @use '@carbon/styles/scss/theme' as *;
10
- @use '@carbon/styles/scss/layer/layer-tokens';
11
10
  @use '@carbon/styles/scss/type';
12
11
  @use '@carbon/styles/scss/components/loading';
13
12
  @use '@carbon/styles/scss/components/inline-loading/inline-loading' as *;
@@ -16,6 +15,4 @@
16
15
 
17
16
  :host(#{$prefix}-inline-loading) {
18
17
  @extend .#{$prefix}--inline-loading;
19
-
20
- @include layer-tokens.emit-layer-tokens(1);
21
18
  }