carbon-components-svelte 0.113.1 → 0.114.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1006) hide show
  1. package/README.md +84 -22
  2. package/css/all.css +1 -1
  3. package/css/css.d.ts +13 -0
  4. package/css/g10.css +1 -1
  5. package/css/g100.css +1 -1
  6. package/css/g80.css +1 -1
  7. package/css/g90.css +1 -1
  8. package/css/prose-g10.css +1 -0
  9. package/css/prose-g100.css +1 -0
  10. package/css/prose-g80.css +1 -0
  11. package/css/prose-g90.css +1 -0
  12. package/css/prose-white.css +1 -0
  13. package/css/prose.css +1 -0
  14. package/css/syntax-tokens-g10.css +1 -0
  15. package/css/syntax-tokens-g100.css +1 -0
  16. package/css/syntax-tokens-g80.css +1 -0
  17. package/css/syntax-tokens-g90.css +1 -0
  18. package/css/syntax-tokens-white.css +1 -0
  19. package/css/syntax-tokens.css +1 -0
  20. package/css/syntax.css +1 -0
  21. package/css/white.css +1 -1
  22. package/package.json +11 -3
  23. package/src/AILabel/AILabel.svelte +146 -0
  24. package/src/AILabel/AILabel.svelte.d.ts +107 -0
  25. package/src/AILabel/AILabelActions.svelte +6 -0
  26. package/src/AILabel/AILabelActions.svelte.d.ts +18 -0
  27. package/src/AILabel/Decorator.svelte +46 -0
  28. package/src/AILabel/Decorator.svelte.d.ts +56 -0
  29. package/src/AILabel/index.js +2 -0
  30. package/src/Accordion/Accordion.svelte +18 -4
  31. package/src/Accordion/Accordion.svelte.d.ts +5 -3
  32. package/src/Accordion/AccordionItem.svelte +70 -44
  33. package/src/Accordion/AccordionItem.svelte.d.ts +10 -2
  34. package/src/Accordion/AccordionSkeleton.svelte +7 -7
  35. package/src/Accordion/AccordionSkeleton.svelte.d.ts +2 -1
  36. package/src/ActionSet/ActionSet.svelte +51 -5
  37. package/src/ActionSet/ActionSet.svelte.d.ts +1 -1
  38. package/src/AspectRatio/AspectRatio.svelte +3 -13
  39. package/src/BadgeIndicator/BadgeIndicator.svelte.d.ts +1 -1
  40. package/src/BigNumber/BigNumber.svelte +68 -17
  41. package/src/BigNumber/BigNumber.svelte.d.ts +26 -10
  42. package/src/BigNumber/BigNumberSkeleton.svelte +8 -4
  43. package/src/Bleed/Bleed.svelte +3 -1
  44. package/src/Bleed/Bleed.svelte.d.ts +13 -9
  45. package/src/Box/Box.svelte +52 -9
  46. package/src/Box/Box.svelte.d.ts +39 -15
  47. package/src/Breadcrumb/Breadcrumb.svelte +2 -1
  48. package/src/Breadcrumb/Breadcrumb.svelte.d.ts +7 -5
  49. package/src/Breadcrumb/BreadcrumbItem.svelte +15 -3
  50. package/src/Breadcrumb/BreadcrumbItem.svelte.d.ts +7 -7
  51. package/src/Breadcrumb/BreadcrumbSkeleton.svelte +3 -1
  52. package/src/Breadcrumb/BreadcrumbSkeleton.svelte.d.ts +3 -3
  53. package/src/Breakpoint/Breakpoint.svelte.d.ts +1 -1
  54. package/src/Breakpoint/breakpoint-observer.js +9 -4
  55. package/src/Button/Button.svelte +379 -94
  56. package/src/Button/Button.svelte.d.ts +66 -15
  57. package/src/Button/ButtonSkeleton.svelte +23 -9
  58. package/src/Button/ButtonSkeleton.svelte.d.ts +4 -2
  59. package/src/Card/Card.svelte +176 -0
  60. package/src/Card/Card.svelte.d.ts +109 -0
  61. package/src/Card/CardAction.svelte +12 -0
  62. package/src/Card/CardAction.svelte.d.ts +26 -0
  63. package/src/Card/CardActions.svelte +15 -0
  64. package/src/Card/CardActions.svelte.d.ts +18 -0
  65. package/src/Card/CardBody.svelte +12 -0
  66. package/src/Card/CardBody.svelte.d.ts +26 -0
  67. package/src/Card/CardFooter.svelte +22 -0
  68. package/src/Card/CardFooter.svelte.d.ts +25 -0
  69. package/src/Card/CardHeader.svelte +16 -0
  70. package/src/Card/CardHeader.svelte.d.ts +25 -0
  71. package/src/Card/CardHeaderMedia.svelte +6 -0
  72. package/src/Card/CardHeaderMedia.svelte.d.ts +18 -0
  73. package/src/Card/CardMedia.svelte +52 -0
  74. package/src/Card/CardMedia.svelte.d.ts +33 -0
  75. package/src/Card/CardTitle.svelte +88 -0
  76. package/src/Card/CardTitle.svelte.d.ts +74 -0
  77. package/src/Card/CardTitleMedia.svelte +6 -0
  78. package/src/Card/CardTitleMedia.svelte.d.ts +18 -0
  79. package/src/Card/CardWrapper.svelte +38 -0
  80. package/src/Card/CardWrapper.svelte.d.ts +47 -0
  81. package/src/Card/index.js +10 -0
  82. package/src/Carousel/Carousel.svelte +92 -18
  83. package/src/Carousel/Carousel.svelte.d.ts +10 -0
  84. package/src/Carousel/CarouselItem.svelte +21 -2
  85. package/src/Chat/ChatButton.svelte +47 -0
  86. package/src/Chat/ChatButton.svelte.d.ts +63 -0
  87. package/src/Chat/ChatButtonSkeleton.svelte +18 -0
  88. package/src/Chat/ChatButtonSkeleton.svelte.d.ts +26 -0
  89. package/src/Chat/ChatDivider.svelte +6 -0
  90. package/src/Chat/ChatDivider.svelte.d.ts +22 -0
  91. package/src/Chat/ChatLog.svelte +81 -0
  92. package/src/Chat/ChatLog.svelte.d.ts +34 -0
  93. package/src/Chat/ChatMessage.svelte +127 -0
  94. package/src/Chat/ChatMessage.svelte.d.ts +110 -0
  95. package/src/Chat/index.js +5 -0
  96. package/src/Checkbox/Checkbox.svelte +100 -26
  97. package/src/Checkbox/Checkbox.svelte.d.ts +23 -3
  98. package/src/Checkbox/CheckboxGroup.svelte +66 -10
  99. package/src/Checkbox/CheckboxGroup.svelte.d.ts +35 -17
  100. package/src/Checkbox/InlineCheckbox.svelte +9 -22
  101. package/src/Checkbox/InlineCheckbox.svelte.d.ts +1 -1
  102. package/src/CodeSnippet/CodeSnippet.svelte +148 -65
  103. package/src/CodeSnippet/CodeSnippet.svelte.d.ts +24 -13
  104. package/src/CodeSnippet/CodeSnippetSkeleton.svelte +51 -18
  105. package/src/CodeSnippet/CodeSnippetSkeleton.svelte.d.ts +31 -2
  106. package/src/ComboBox/ComboBox.svelte +674 -278
  107. package/src/ComboBox/ComboBox.svelte.d.ts +117 -17
  108. package/src/ComboBox/ComboBoxSkeleton.svelte +28 -5
  109. package/src/ComboBox/ComboBoxSkeleton.svelte.d.ts +14 -0
  110. package/src/ComboButton/ComboButton.svelte +39 -8
  111. package/src/ComboButton/ComboButton.svelte.d.ts +18 -2
  112. package/src/ComposedModal/ComposedModal.svelte +143 -20
  113. package/src/ComposedModal/ComposedModal.svelte.d.ts +44 -11
  114. package/src/ComposedModal/ModalBody.svelte +14 -8
  115. package/src/ComposedModal/ModalBody.svelte.d.ts +2 -0
  116. package/src/ComposedModal/ModalFooter.svelte +40 -11
  117. package/src/ComposedModal/ModalFooter.svelte.d.ts +27 -7
  118. package/src/ComposedModal/ModalHeader.svelte +30 -22
  119. package/src/ComposedModal/ModalHeader.svelte.d.ts +2 -1
  120. package/src/ConfirmModal/ConfirmModal.svelte +214 -0
  121. package/src/ConfirmModal/ConfirmModal.svelte.d.ts +130 -0
  122. package/src/ConfirmModal/index.js +1 -0
  123. package/src/ContainedList/ContainedList.svelte +20 -19
  124. package/src/ContainedList/ContainedList.svelte.d.ts +2 -1
  125. package/src/ContainedList/ContainedListItem.svelte +25 -11
  126. package/src/ContainedList/ContainedListItem.svelte.d.ts +13 -5
  127. package/src/ContentSwitcher/ContentSwitcher.svelte +106 -14
  128. package/src/ContentSwitcher/ContentSwitcher.svelte.d.ts +20 -3
  129. package/src/ContentSwitcher/ContentSwitcherSkeleton.svelte +28 -0
  130. package/src/ContentSwitcher/ContentSwitcherSkeleton.svelte.d.ts +39 -0
  131. package/src/ContentSwitcher/Switch.svelte +25 -62
  132. package/src/ContentSwitcher/Switch.svelte.d.ts +4 -4
  133. package/src/ContentSwitcher/SwitchPanel.svelte +11 -3
  134. package/src/ContentSwitcher/index.js +1 -0
  135. package/src/ContextMenu/ContextMenu.svelte +86 -40
  136. package/src/ContextMenu/ContextMenu.svelte.d.ts +2 -1
  137. package/src/ContextMenu/ContextMenuOption.svelte +123 -50
  138. package/src/ContextMenu/ContextMenuOption.svelte.d.ts +25 -6
  139. package/src/CopyButton/CopyButton.svelte +114 -29
  140. package/src/CopyButton/CopyButton.svelte.d.ts +15 -5
  141. package/src/CopyInput/CopyInput.svelte +91 -34
  142. package/src/CopyInput/CopyInput.svelte.d.ts +34 -18
  143. package/src/CopyInput/CopyInputSkeleton.svelte +16 -1
  144. package/src/CopyInput/CopyInputSkeleton.svelte.d.ts +8 -0
  145. package/src/CopyText/CopyText.svelte +74 -0
  146. package/src/CopyText/CopyText.svelte.d.ts +93 -0
  147. package/src/CopyText/index.js +1 -0
  148. package/src/Countdown/Countdown.svelte +153 -0
  149. package/src/Countdown/Countdown.svelte.d.ts +88 -0
  150. package/src/Countdown/index.js +1 -0
  151. package/src/DataTable/DataTable.svelte +741 -336
  152. package/src/DataTable/DataTable.svelte.d.ts +123 -22
  153. package/src/DataTable/DataTableSkeleton.svelte +20 -10
  154. package/src/DataTable/DataTableSkeleton.svelte.d.ts +2 -1
  155. package/src/DataTable/Table.svelte +112 -23
  156. package/src/DataTable/Table.svelte.d.ts +6 -5
  157. package/src/DataTable/TableBody.svelte +1 -1
  158. package/src/DataTable/TableCell.svelte +8 -1
  159. package/src/DataTable/TableContainer.svelte +5 -2
  160. package/src/DataTable/TableContainer.svelte.d.ts +12 -4
  161. package/src/DataTable/TableHeader.svelte +85 -19
  162. package/src/DataTable/TableHeader.svelte.d.ts +11 -3
  163. package/src/DataTable/Toolbar.svelte +6 -1
  164. package/src/DataTable/Toolbar.svelte.d.ts +4 -3
  165. package/src/DataTable/ToolbarBatchActions.svelte +18 -13
  166. package/src/DataTable/ToolbarColumnVisibility.svelte +4 -2
  167. package/src/DataTable/ToolbarContent.svelte +5 -3
  168. package/src/DataTable/ToolbarDensity.svelte +8 -3
  169. package/src/DataTable/ToolbarDensity.svelte.d.ts +6 -5
  170. package/src/DataTable/ToolbarMenu.svelte +1 -1
  171. package/src/DataTable/ToolbarSearch.svelte +64 -12
  172. package/src/DataTable/ToolbarSearch.svelte.d.ts +23 -1
  173. package/src/DataTable/data-table-utils.d.ts +10 -13
  174. package/src/DataTable/row-focus.d.ts +8 -0
  175. package/src/DataTable/row-focus.js +91 -0
  176. package/src/DatePicker/DateCalendar.svelte +280 -0
  177. package/src/DatePicker/DateCalendar.svelte.d.ts +105 -0
  178. package/src/DatePicker/DatePicker.svelte +544 -235
  179. package/src/DatePicker/DatePicker.svelte.d.ts +170 -27
  180. package/src/DatePicker/DatePickerInput.svelte +112 -67
  181. package/src/DatePicker/DatePickerInput.svelte.d.ts +12 -4
  182. package/src/DatePicker/DatePickerSkeleton.svelte +20 -3
  183. package/src/DatePicker/DatePickerSkeleton.svelte.d.ts +19 -1
  184. package/src/DatePicker/calendar-api.d.ts +18 -0
  185. package/src/DatePicker/calendar-api.js +31 -0
  186. package/src/DatePicker/calendar-dates.d.ts +88 -0
  187. package/src/DatePicker/calendar-dates.js +449 -0
  188. package/src/DatePicker/calendar.d.ts +193 -0
  189. package/src/DatePicker/calendar.js +2290 -0
  190. package/src/DatePicker/create-calendar.d.ts +19 -46
  191. package/src/DatePicker/create-calendar.js +76 -388
  192. package/src/DatePicker/date-format-pattern.d.ts +10 -0
  193. package/src/DatePicker/date-format-pattern.js +54 -0
  194. package/src/DatePicker/date-picker-top-layer.d.ts +2 -0
  195. package/src/DatePicker/date-picker-top-layer.js +18 -3
  196. package/src/DatePicker/day-state.d.ts +35 -0
  197. package/src/DatePicker/day-state.js +57 -0
  198. package/src/DatePicker/index.js +1 -0
  199. package/src/DatePicker/unsupported-options.d.ts +9 -12
  200. package/src/DatePicker/unsupported-options.js +15 -43
  201. package/src/DatePicker/week-info.d.ts +5 -0
  202. package/src/DatePicker/week-info.js +98 -0
  203. package/src/DescriptionList/DescriptionList.svelte +1 -0
  204. package/src/DescriptionList/DescriptionList.svelte.d.ts +5 -3
  205. package/src/DescriptionList/DescriptionListItem.svelte +12 -3
  206. package/src/DescriptionList/DescriptionListItem.svelte.d.ts +20 -1
  207. package/src/Dialog/Dialog.svelte +37 -10
  208. package/src/Disclosure/Disclosure.svelte +25 -8
  209. package/src/Disclosure/Disclosure.svelte.d.ts +7 -0
  210. package/src/Divider/Divider.svelte +1 -1
  211. package/src/Dropdown/Dropdown.svelte +567 -241
  212. package/src/Dropdown/Dropdown.svelte.d.ts +113 -15
  213. package/src/Dropdown/DropdownSkeleton.svelte +31 -7
  214. package/src/Dropdown/DropdownSkeleton.svelte.d.ts +14 -0
  215. package/src/EmptyState/EmptyState.svelte +46 -0
  216. package/src/EmptyState/EmptyState.svelte.d.ts +61 -0
  217. package/src/EmptyState/index.js +1 -0
  218. package/src/FileUploader/FileDownloadItem.svelte +122 -0
  219. package/src/FileUploader/FileDownloadItem.svelte.d.ts +99 -0
  220. package/src/FileUploader/FileUploader.svelte +129 -29
  221. package/src/FileUploader/FileUploader.svelte.d.ts +53 -3
  222. package/src/FileUploader/FileUploaderButton.svelte +140 -26
  223. package/src/FileUploader/FileUploaderButton.svelte.d.ts +48 -7
  224. package/src/FileUploader/FileUploaderDropContainer.svelte +76 -21
  225. package/src/FileUploader/FileUploaderDropContainer.svelte.d.ts +31 -2
  226. package/src/FileUploader/FileUploaderItem.svelte +25 -10
  227. package/src/FileUploader/FileUploaderItem.svelte.d.ts +26 -2
  228. package/src/FileUploader/FileUploaderSkeleton.svelte +19 -6
  229. package/src/FileUploader/FileUploaderSkeleton.svelte.d.ts +8 -0
  230. package/src/FileUploader/Filename.svelte +24 -2
  231. package/src/FileUploader/Filename.svelte.d.ts +10 -1
  232. package/src/FileUploader/index.js +1 -0
  233. package/src/FluidForm/FluidForm.svelte +1 -1
  234. package/src/FluidForm/FluidForm.svelte.d.ts +1 -1
  235. package/src/Form/Form.svelte +13 -1
  236. package/src/Form/Form.svelte.d.ts +10 -1
  237. package/src/FormGroup/FormGroup.svelte +38 -8
  238. package/src/FormGroup/FormGroup.svelte.d.ts +19 -3
  239. package/src/FormHelperText/FormHelperText.svelte +35 -0
  240. package/src/FormHelperText/FormHelperText.svelte.d.ts +33 -0
  241. package/src/FormHelperText/index.js +1 -0
  242. package/src/FormItem/FormItem.svelte +131 -1
  243. package/src/FormItem/FormItem.svelte.d.ts +44 -2
  244. package/src/FormLabel/FormLabel.svelte +35 -3
  245. package/src/FormLabel/FormLabel.svelte.d.ts +18 -3
  246. package/src/FormRequirement/FormRequirement.svelte +42 -0
  247. package/src/FormRequirement/FormRequirement.svelte.d.ts +35 -0
  248. package/src/FormRequirement/index.js +1 -0
  249. package/src/FullPageError/FullPageError.svelte +3 -2
  250. package/src/Grid/Column.svelte +1 -1
  251. package/src/Grid/Column.svelte.d.ts +6 -6
  252. package/src/Grid/CssColumn.svelte +71 -0
  253. package/src/Grid/CssColumn.svelte.d.ts +94 -0
  254. package/src/Grid/CssGrid.svelte +54 -0
  255. package/src/Grid/CssGrid.svelte.d.ts +78 -0
  256. package/src/Grid/index.js +2 -0
  257. package/src/Heading/Heading.svelte +3 -2
  258. package/src/Heading/Heading.svelte.d.ts +1 -1
  259. package/src/Heading/Section.svelte +11 -13
  260. package/src/Heading/Section.svelte.d.ts +18 -5
  261. package/src/IconIndicator/IconIndicator.svelte +7 -2
  262. package/src/IconIndicator/IconIndicator.svelte.d.ts +7 -0
  263. package/src/ImageLoader/ImageLoader.svelte +95 -13
  264. package/src/ImageLoader/ImageLoader.svelte.d.ts +19 -2
  265. package/src/InlineEdit/InlineEdit.svelte +310 -0
  266. package/src/InlineEdit/InlineEdit.svelte.d.ts +131 -0
  267. package/src/InlineEdit/index.js +1 -0
  268. package/src/InlineLoading/InlineLoading.svelte +106 -51
  269. package/src/InlineLoading/InlineLoading.svelte.d.ts +16 -4
  270. package/src/InputGroup/InputGroup.svelte +144 -0
  271. package/src/InputGroup/InputGroup.svelte.d.ts +104 -0
  272. package/src/InputGroup/index.js +1 -0
  273. package/src/InterstitialScreen/InterstitialScreen.svelte +34 -7
  274. package/src/InterstitialScreen/InterstitialScreen.svelte.d.ts +6 -3
  275. package/src/InterstitialScreen/InterstitialScreenFooter.svelte +8 -0
  276. package/src/InterstitialScreen/InterstitialScreenHeader.svelte +74 -52
  277. package/src/InterstitialScreen/InterstitialScreenHeader.svelte.d.ts +32 -1
  278. package/src/InterstitialScreen/InterstitialScreenHeaderContent.svelte +58 -0
  279. package/src/InterstitialScreen/InterstitialScreenHeaderContent.svelte.d.ts +35 -0
  280. package/src/InterstitialScreen/InterstitialScreenView.svelte +21 -2
  281. package/src/Kbd/Kbd.svelte +134 -0
  282. package/src/Kbd/Kbd.svelte.d.ts +97 -0
  283. package/src/Kbd/index.js +2 -0
  284. package/src/Kbd/kbd-keys.d.ts +28 -0
  285. package/src/Kbd/kbd-keys.js +106 -0
  286. package/src/Kbd/kbd-translations.d.ts +19 -0
  287. package/src/Kbd/kbd-translations.js +19 -0
  288. package/src/Layer/Layer.svelte +38 -0
  289. package/src/Layer/Layer.svelte.d.ts +41 -0
  290. package/src/Layer/index.js +1 -0
  291. package/src/LayoutDirection/LayoutDirection.svelte +23 -0
  292. package/src/LayoutDirection/LayoutDirection.svelte.d.ts +37 -0
  293. package/src/LayoutDirection/index.js +1 -0
  294. package/src/LazyMount/LazyMount.svelte +96 -0
  295. package/src/LazyMount/LazyMount.svelte.d.ts +62 -0
  296. package/src/LazyMount/index.js +1 -0
  297. package/src/Link/Link.svelte +39 -60
  298. package/src/Link/Link.svelte.d.ts +5 -5
  299. package/src/Link/LinkDownload.svelte.d.ts +5 -4
  300. package/src/ListBox/HighlightSlot.svelte.d.ts +1 -1
  301. package/src/ListBox/ListBox.svelte +16 -5
  302. package/src/ListBox/ListBox.svelte.d.ts +5 -9
  303. package/src/ListBox/ListBoxField.svelte +23 -7
  304. package/src/ListBox/ListBoxMenu.svelte +1 -1
  305. package/src/ListBox/ListBoxMenu.svelte.d.ts +2 -2
  306. package/src/ListBox/ListBoxMenuIcon.svelte +4 -1
  307. package/src/ListBox/ListBoxMenuIcon.svelte.d.ts +4 -1
  308. package/src/ListBox/ListBoxMenuItem.svelte +9 -13
  309. package/src/ListBox/ListBoxMenuItem.svelte.d.ts +1 -1
  310. package/src/ListBox/ListBoxMenuStatus.svelte +14 -0
  311. package/src/ListBox/ListBoxMenuStatus.svelte.d.ts +11 -0
  312. package/src/ListBox/ListBoxRequiredInput.svelte +39 -0
  313. package/src/ListBox/ListBoxRequiredInput.svelte.d.ts +50 -0
  314. package/src/ListBox/ListBoxSelection.svelte +30 -11
  315. package/src/ListBox/ListBoxSelection.svelte.d.ts +5 -2
  316. package/src/ListBox/highlight-cursor.d.ts +1 -1
  317. package/src/ListBox/highlight-cursor.js +6 -20
  318. package/src/ListBox/list-box-utils.d.ts +18 -0
  319. package/src/ListBox/list-box-utils.js +36 -0
  320. package/src/ListBox/menu-groups.d.ts +5 -5
  321. package/src/ListBox/menu-status.d.ts +16 -0
  322. package/src/ListBox/menu-status.js +21 -0
  323. package/src/ListBox/menu-window.d.ts +7 -9
  324. package/src/ListBox/menu-window.js +27 -27
  325. package/src/Loading/Loading.svelte +55 -24
  326. package/src/Loading/Loading.svelte.d.ts +5 -2
  327. package/src/Loading/overlay-focus.d.ts +8 -0
  328. package/src/Loading/overlay-focus.js +92 -0
  329. package/src/LocalStorage/LocalStorage.svelte.d.ts +4 -8
  330. package/src/LocalStorage/StorageBinding.svelte +18 -2
  331. package/src/LocalStorage/StorageBinding.svelte.d.ts +11 -5
  332. package/src/Menu/Menu.svelte +134 -28
  333. package/src/Menu/Menu.svelte.d.ts +14 -8
  334. package/src/Menu/MenuItem.svelte +89 -20
  335. package/src/Menu/MenuItem.svelte.d.ts +25 -6
  336. package/src/Menu/MenuItemGroup.svelte +7 -3
  337. package/src/MenuButton/MenuButton.svelte +7 -3
  338. package/src/MenuButton/MenuButton.svelte.d.ts +9 -5
  339. package/src/Meter/Meter.svelte +56 -23
  340. package/src/Meter/Meter.svelte.d.ts +14 -9
  341. package/src/Modal/Modal.svelte +184 -61
  342. package/src/Modal/Modal.svelte.d.ts +66 -14
  343. package/src/MultiSelect/MultiSelect.svelte +639 -249
  344. package/src/MultiSelect/MultiSelect.svelte.d.ts +139 -16
  345. package/src/MultiSelect/MultiSelectSkeleton.svelte +36 -6
  346. package/src/MultiSelect/MultiSelectSkeleton.svelte.d.ts +20 -0
  347. package/src/Notification/Callout.svelte +84 -0
  348. package/src/Notification/Callout.svelte.d.ts +90 -0
  349. package/src/Notification/InlineNotification.svelte +91 -10
  350. package/src/Notification/InlineNotification.svelte.d.ts +55 -2
  351. package/src/Notification/NotificationActionButton.svelte +18 -2
  352. package/src/Notification/NotificationButton.svelte +8 -0
  353. package/src/Notification/NotificationButton.svelte.d.ts +10 -4
  354. package/src/Notification/NotificationIcon.svelte +18 -7
  355. package/src/Notification/NotificationIcon.svelte.d.ts +12 -0
  356. package/src/Notification/NotificationQueue.svelte +289 -19
  357. package/src/Notification/NotificationQueue.svelte.d.ts +35 -1
  358. package/src/Notification/ToastNotification.svelte +106 -11
  359. package/src/Notification/ToastNotification.svelte.d.ts +50 -2
  360. package/src/Notification/index.js +1 -0
  361. package/src/Notification/status-icon-label.d.ts +10 -0
  362. package/src/Notification/status-icon-label.js +15 -0
  363. package/src/NumberInput/NumberInput.svelte +288 -75
  364. package/src/NumberInput/NumberInput.svelte.d.ts +27 -15
  365. package/src/NumberInput/NumberInputSkeleton.svelte +16 -1
  366. package/src/NumberInput/NumberInputSkeleton.svelte.d.ts +8 -0
  367. package/src/OverflowMenu/OverflowMenu.svelte +373 -81
  368. package/src/OverflowMenu/OverflowMenu.svelte.d.ts +59 -26
  369. package/src/OverflowMenu/OverflowMenuItem.svelte +68 -14
  370. package/src/OverflowMenu/OverflowMenuItem.svelte.d.ts +29 -9
  371. package/src/PageHeader/PageHeader.svelte +10 -15
  372. package/src/PageHeader/PageHeader.svelte.d.ts +17 -11
  373. package/src/PageHeader/PageHeaderBody.svelte +8 -2
  374. package/src/PageHeader/PageHeaderBody.svelte.d.ts +2 -2
  375. package/src/PageHeader/PageHeaderSkeleton.svelte +19 -3
  376. package/src/Pagination/Pagination.svelte +113 -46
  377. package/src/Pagination/Pagination.svelte.d.ts +15 -3
  378. package/src/PaginationNav/PaginationItem.svelte +4 -2
  379. package/src/PaginationNav/PaginationItem.svelte.d.ts +7 -3
  380. package/src/PaginationNav/PaginationNav.svelte +47 -11
  381. package/src/PaginationNav/PaginationNav.svelte.d.ts +19 -0
  382. package/src/PaginationNav/PaginationOverflow.svelte +15 -9
  383. package/src/PaginationNav/PaginationOverflow.svelte.d.ts +16 -0
  384. package/src/PinCodeInput/FluidPinCodeInputSkeleton.svelte +6 -0
  385. package/src/PinCodeInput/FluidPinCodeInputSkeleton.svelte.d.ts +6 -0
  386. package/src/PinCodeInput/PinCodeInput.svelte +97 -45
  387. package/src/PinCodeInput/PinCodeInput.svelte.d.ts +14 -12
  388. package/src/PinCodeInput/PinCodeInputSkeleton.svelte +29 -1
  389. package/src/PinCodeInput/PinCodeInputSkeleton.svelte.d.ts +14 -0
  390. package/src/Popover/Popover.svelte +265 -42
  391. package/src/Popover/Popover.svelte.d.ts +28 -3
  392. package/src/Portal/AnchoredTooltip.svelte +62 -0
  393. package/src/Portal/AnchoredTooltip.svelte.d.ts +52 -0
  394. package/src/Portal/FloatingPortal.svelte +56 -12
  395. package/src/Portal/FloatingPortal.svelte.d.ts +10 -2
  396. package/src/Portal/Portal.svelte +52 -4
  397. package/src/Portal/Portal.svelte.d.ts +1 -1
  398. package/src/Portal/PortalTooltip.svelte +40 -1
  399. package/src/Portal/PortalTooltip.svelte.d.ts +19 -1
  400. package/src/Portal/portal-utils.d.ts +9 -0
  401. package/src/Portal/portal-utils.js +14 -0
  402. package/src/ProgressBar/ProgressBar.svelte +37 -13
  403. package/src/ProgressBar/ProgressBar.svelte.d.ts +6 -3
  404. package/src/ProgressIndicator/ProgressIndicator.svelte +81 -5
  405. package/src/ProgressIndicator/ProgressIndicator.svelte.d.ts +12 -0
  406. package/src/ProgressIndicator/ProgressStep.svelte +46 -13
  407. package/src/Prose/Prose.svelte +181 -0
  408. package/src/Prose/Prose.svelte.d.ts +101 -0
  409. package/src/Prose/index.js +1 -0
  410. package/src/RadioButton/RadioButton.svelte +51 -10
  411. package/src/RadioButton/RadioButton.svelte.d.ts +13 -2
  412. package/src/RadioButton/RadioButtonSkeleton.svelte +1 -0
  413. package/src/RadioButton/radio-button-registry.d.ts +5 -2
  414. package/src/RadioButton/radio-button-registry.js +1 -0
  415. package/src/RadioButtonGroup/RadioButtonGroup.svelte +64 -16
  416. package/src/RadioButtonGroup/RadioButtonGroup.svelte.d.ts +22 -11
  417. package/src/RecursiveList/RecursiveList.svelte +28 -11
  418. package/src/RecursiveList/RecursiveList.svelte.d.ts +8 -2
  419. package/src/RelativeTime/RelativeTime.svelte +48 -10
  420. package/src/RelativeTime/RelativeTime.svelte.d.ts +33 -3
  421. package/src/ScrollGradient/ScrollGradient.svelte +16 -8
  422. package/src/ScrollGradient/ScrollGradient.svelte.d.ts +5 -4
  423. package/src/Search/Search.svelte +176 -40
  424. package/src/Search/Search.svelte.d.ts +37 -12
  425. package/src/Search/SearchSkeleton.svelte +16 -8
  426. package/src/Search/SearchSkeleton.svelte.d.ts +8 -3
  427. package/src/SearchMenu/SearchMenu.svelte +52 -24
  428. package/src/SearchMenu/SearchMenu.svelte.d.ts +42 -22
  429. package/src/SearchMenu/SearchMenuGroup.svelte.d.ts +3 -3
  430. package/src/SearchMenu/SearchMenuItem.svelte +7 -6
  431. package/src/SearchMenu/SearchMenuItem.svelte.d.ts +6 -6
  432. package/src/SearchMenu/SearchMenuSkeleton.svelte +7 -4
  433. package/src/SearchMenu/SearchMenuSkeleton.svelte.d.ts +3 -1
  434. package/src/Select/Select.svelte +107 -46
  435. package/src/Select/Select.svelte.d.ts +15 -12
  436. package/src/Select/SelectItem.svelte +6 -4
  437. package/src/Select/SelectItem.svelte.d.ts +2 -2
  438. package/src/Select/SelectSkeleton.svelte +16 -1
  439. package/src/Select/SelectSkeleton.svelte.d.ts +8 -0
  440. package/src/SessionStorage/SessionStorage.svelte.d.ts +4 -8
  441. package/src/ShapeIndicator/ShapeIndicatorIncomplete.svelte +3 -2
  442. package/src/SidePanel/SidePanel.svelte +655 -0
  443. package/src/SidePanel/SidePanel.svelte.d.ts +208 -0
  444. package/src/SidePanel/index.js +1 -0
  445. package/src/SkeletonIcon/SkeletonIcon.svelte +14 -1
  446. package/src/SkeletonIcon/SkeletonIcon.svelte.d.ts +7 -0
  447. package/src/SkeletonPlaceholder/SkeletonPlaceholder.svelte +3 -0
  448. package/src/SkeletonPlaceholder/SkeletonPlaceholder.svelte.d.ts +10 -3
  449. package/src/SkeletonText/SkeletonText.svelte +11 -3
  450. package/src/SkeletonText/SkeletonText.svelte.d.ts +15 -0
  451. package/src/Slider/RangeSlider.svelte +474 -139
  452. package/src/Slider/RangeSlider.svelte.d.ts +48 -7
  453. package/src/Slider/RangeSliderSkeleton.svelte +34 -0
  454. package/src/Slider/RangeSliderSkeleton.svelte.d.ts +12 -0
  455. package/src/Slider/Slider.svelte +212 -124
  456. package/src/Slider/Slider.svelte.d.ts +28 -5
  457. package/src/Slider/SliderSkeleton.svelte +19 -0
  458. package/src/Slider/SliderSkeleton.svelte.d.ts +12 -0
  459. package/src/Splitter/Splitter.svelte +350 -0
  460. package/src/Splitter/Splitter.svelte.d.ts +118 -0
  461. package/src/Splitter/index.js +1 -0
  462. package/src/Stack/Stack.svelte +1 -1
  463. package/src/Stack/Stack.svelte.d.ts +14 -9
  464. package/src/StarRating/StarRating.svelte +279 -0
  465. package/src/StarRating/StarRating.svelte.d.ts +137 -0
  466. package/src/StarRating/index.js +1 -0
  467. package/src/Stepper/Stepper.svelte +192 -0
  468. package/src/Stepper/Stepper.svelte.d.ts +128 -0
  469. package/src/Stepper/index.js +1 -0
  470. package/src/StructuredList/StructuredList.svelte +86 -25
  471. package/src/StructuredList/StructuredList.svelte.d.ts +24 -8
  472. package/src/StructuredList/StructuredListCell.svelte +3 -3
  473. package/src/StructuredList/StructuredListCell.svelte.d.ts +4 -1
  474. package/src/StructuredList/StructuredListInput.svelte +22 -6
  475. package/src/StructuredList/StructuredListRow.svelte +3 -3
  476. package/src/StructuredList/StructuredListRow.svelte.d.ts +4 -4
  477. package/src/StructuredList/StructuredListSkeleton.svelte +7 -1
  478. package/src/StructuredList/StructuredListSkeleton.svelte.d.ts +12 -0
  479. package/src/TableOfContents/TableOfContents.svelte +248 -0
  480. package/src/TableOfContents/TableOfContents.svelte.d.ts +83 -0
  481. package/src/TableOfContents/TableOfContentsGroup.svelte +33 -0
  482. package/src/TableOfContents/TableOfContentsGroup.svelte.d.ts +36 -0
  483. package/src/TableOfContents/TableOfContentsItem.svelte +100 -0
  484. package/src/TableOfContents/TableOfContentsItem.svelte.d.ts +46 -0
  485. package/src/TableOfContents/index.js +3 -0
  486. package/src/Tabs/Tab.svelte +106 -70
  487. package/src/Tabs/Tab.svelte.d.ts +17 -6
  488. package/src/Tabs/TabContent.svelte +26 -7
  489. package/src/Tabs/TabContent.svelte.d.ts +1 -0
  490. package/src/Tabs/Tabs.svelte +191 -56
  491. package/src/Tabs/Tabs.svelte.d.ts +44 -10
  492. package/src/Tabs/TabsSkeleton.svelte.d.ts +1 -1
  493. package/src/Tabs/TabsVertical.svelte +221 -63
  494. package/src/Tabs/TabsVertical.svelte.d.ts +46 -10
  495. package/src/Tabs/TabsVerticalSkeleton.svelte +10 -1
  496. package/src/Tabs/TabsVerticalSkeleton.svelte.d.ts +9 -0
  497. package/src/Tag/OperationalTag.svelte +257 -0
  498. package/src/Tag/OperationalTag.svelte.d.ts +109 -0
  499. package/src/Tag/SelectableTag.svelte +83 -11
  500. package/src/Tag/SelectableTag.svelte.d.ts +15 -7
  501. package/src/Tag/Tag.svelte +185 -98
  502. package/src/Tag/Tag.svelte.d.ts +26 -11
  503. package/src/Tag/TagSkeleton.svelte +1 -0
  504. package/src/Tag/TagSkeleton.svelte.d.ts +1 -1
  505. package/src/Tag/index.js +1 -0
  506. package/src/Tag/tag-truncation.d.ts +11 -0
  507. package/src/Tag/tag-truncation.js +10 -0
  508. package/src/TagInput/TagInput.svelte +564 -0
  509. package/src/TagInput/TagInput.svelte.d.ts +270 -0
  510. package/src/TagInput/index.js +1 -0
  511. package/src/TagSet/TagSet.svelte +291 -13
  512. package/src/TagSet/TagSet.svelte.d.ts +94 -10
  513. package/src/TagSet/TagSetAllTags.svelte +66 -0
  514. package/src/TagSet/TagSetAllTags.svelte.d.ts +51 -0
  515. package/src/TagSet/TagSetOverflow.svelte +173 -20
  516. package/src/TagSet/TagSetOverflow.svelte.d.ts +70 -4
  517. package/src/TagSet/join-tag-set.d.ts +32 -0
  518. package/src/TagSet/join-tag-set.js +49 -0
  519. package/src/Text/Text.svelte +23 -23
  520. package/src/Text/Text.svelte.d.ts +18 -14
  521. package/src/TextArea/FluidTextAreaSkeleton.svelte +5 -0
  522. package/src/TextArea/FluidTextAreaSkeleton.svelte.d.ts +6 -0
  523. package/src/TextArea/TextArea.svelte +161 -69
  524. package/src/TextArea/TextArea.svelte.d.ts +21 -14
  525. package/src/TextArea/TextAreaSkeleton.svelte +3 -0
  526. package/src/TextArea/TextAreaSkeleton.svelte.d.ts +6 -0
  527. package/src/TextInput/PasswordInput.svelte +175 -87
  528. package/src/TextInput/PasswordInput.svelte.d.ts +19 -11
  529. package/src/TextInput/PasswordInputSkeleton.svelte +16 -1
  530. package/src/TextInput/PasswordInputSkeleton.svelte.d.ts +8 -0
  531. package/src/TextInput/TextInput.svelte +123 -46
  532. package/src/TextInput/TextInput.svelte.d.ts +26 -10
  533. package/src/TextInput/TextInputSkeleton.svelte +16 -1
  534. package/src/TextInput/TextInputSkeleton.svelte.d.ts +8 -0
  535. package/src/Theme/Theme.svelte +115 -11
  536. package/src/Theme/Theme.svelte.d.ts +23 -6
  537. package/src/Theme/carbon-palette.d.ts +8 -0
  538. package/src/Theme/carbon-palette.js +319 -0
  539. package/src/Theme/carbon-tokens.d.ts +411 -0
  540. package/src/Theme/contextual-tokens.d.ts +10 -0
  541. package/src/Theme/contextual-tokens.js +31 -0
  542. package/src/Theme/create-theme.d.ts +64 -0
  543. package/src/Theme/create-theme.js +263 -0
  544. package/src/Theme/index.js +2 -0
  545. package/src/Theme/theme-script.d.ts +26 -0
  546. package/src/Theme/theme-script.js +32 -0
  547. package/src/ThemeZone/ThemeZone.svelte +35 -0
  548. package/src/ThemeZone/ThemeZone.svelte.d.ts +44 -0
  549. package/src/ThemeZone/index.js +1 -0
  550. package/src/ThemeZone/theme-zone.d.ts +14 -0
  551. package/src/ThemeZone/theme-zone.js +19 -0
  552. package/src/Tile/ClickableTile.svelte +105 -34
  553. package/src/Tile/ClickableTile.svelte.d.ts +31 -11
  554. package/src/Tile/ExpandableTile.svelte +194 -78
  555. package/src/Tile/ExpandableTile.svelte.d.ts +29 -18
  556. package/src/Tile/RadioTile.svelte +186 -60
  557. package/src/Tile/RadioTile.svelte.d.ts +35 -6
  558. package/src/Tile/SelectableTile.svelte +150 -68
  559. package/src/Tile/SelectableTile.svelte.d.ts +32 -11
  560. package/src/Tile/SelectableTileGroup.svelte +78 -17
  561. package/src/Tile/SelectableTileGroup.svelte.d.ts +24 -0
  562. package/src/Tile/Tile.svelte +24 -2
  563. package/src/Tile/Tile.svelte.d.ts +22 -4
  564. package/src/Tile/TileGroup.svelte +48 -4
  565. package/src/Tile/TileGroup.svelte.d.ts +25 -3
  566. package/src/Tile/TileWrapper.svelte +19 -0
  567. package/src/Tile/TileWrapper.svelte.d.ts +34 -0
  568. package/src/TimePicker/TimePicker.svelte +88 -60
  569. package/src/TimePicker/TimePicker.svelte.d.ts +10 -12
  570. package/src/TimePicker/TimePickerSelect.svelte +34 -12
  571. package/src/TimePicker/TimePickerSelect.svelte.d.ts +12 -4
  572. package/src/TimePicker/TimePickerSkeleton.svelte +5 -3
  573. package/src/TimePicker/TimePickerSkeleton.svelte.d.ts +7 -0
  574. package/src/Toggle/Toggle.svelte +93 -18
  575. package/src/Toggle/Toggle.svelte.d.ts +27 -2
  576. package/src/Toggle/ToggleSkeleton.svelte +16 -12
  577. package/src/Toggle/ToggleSkeleton.svelte.d.ts +8 -1
  578. package/src/ToggleButtonGroup/ToggleButton.svelte +57 -65
  579. package/src/ToggleButtonGroup/ToggleButton.svelte.d.ts +15 -5
  580. package/src/ToggleButtonGroup/ToggleButtonGroup.svelte +69 -9
  581. package/src/ToggleButtonGroup/ToggleButtonGroup.svelte.d.ts +29 -14
  582. package/src/Toggletip/Toggletip.svelte +78 -96
  583. package/src/Toggletip/Toggletip.svelte.d.ts +32 -8
  584. package/src/Tooltip/Tooltip.svelte +257 -46
  585. package/src/Tooltip/Tooltip.svelte.d.ts +28 -14
  586. package/src/Tooltip/TooltipFooter.svelte +3 -1
  587. package/src/TooltipDefinition/TooltipDefinition.svelte +151 -37
  588. package/src/TooltipDefinition/TooltipDefinition.svelte.d.ts +10 -7
  589. package/src/TooltipGroup/TooltipGroup.svelte +18 -0
  590. package/src/TooltipGroup/TooltipGroup.svelte.d.ts +32 -0
  591. package/src/TooltipGroup/index.js +1 -0
  592. package/src/TooltipIcon/TooltipIcon.svelte +154 -68
  593. package/src/TooltipIcon/TooltipIcon.svelte.d.ts +24 -12
  594. package/src/TreeView/TreeView.svelte +204 -77
  595. package/src/TreeView/TreeView.svelte.d.ts +24 -3
  596. package/src/TreeView/TreeViewNode.svelte +45 -25
  597. package/src/TreeView/TreeViewNode.svelte.d.ts +6 -6
  598. package/src/TreeView/TreeViewNodeList.svelte +43 -26
  599. package/src/TreeView/TreeViewNodeList.svelte.d.ts +5 -4
  600. package/src/TreeView/TreeViewNodeVirtual.svelte +14 -12
  601. package/src/TreeView/TreeViewSkeleton.svelte +41 -0
  602. package/src/TreeView/TreeViewSkeleton.svelte.d.ts +41 -0
  603. package/src/TreeView/index.d.ts +1 -0
  604. package/src/TreeView/index.js +1 -0
  605. package/src/Truncate/Truncate.svelte +105 -4
  606. package/src/Truncate/Truncate.svelte.d.ts +54 -0
  607. package/src/Truncate/truncate.d.ts +4 -0
  608. package/src/UIShell/Content.svelte +8 -3
  609. package/src/UIShell/HamburgerMenu.svelte +1 -1
  610. package/src/UIShell/HamburgerMenu.svelte.d.ts +4 -4
  611. package/src/UIShell/Header.svelte +42 -16
  612. package/src/UIShell/Header.svelte.d.ts +12 -7
  613. package/src/UIShell/HeaderAction.svelte +86 -12
  614. package/src/UIShell/HeaderAction.svelte.d.ts +10 -6
  615. package/src/UIShell/HeaderActionLink.svelte.d.ts +5 -5
  616. package/src/UIShell/HeaderGlobalAction.svelte.d.ts +5 -5
  617. package/src/UIShell/HeaderNav.svelte +58 -2
  618. package/src/UIShell/HeaderNav.svelte.d.ts +12 -0
  619. package/src/UIShell/HeaderNavItem.svelte +41 -44
  620. package/src/UIShell/HeaderNavItem.svelte.d.ts +6 -6
  621. package/src/UIShell/HeaderNavMenu.svelte +171 -22
  622. package/src/UIShell/HeaderNavMenu.svelte.d.ts +28 -8
  623. package/src/UIShell/HeaderPanelDivider.svelte +1 -1
  624. package/src/UIShell/HeaderPanelGroup.svelte +29 -0
  625. package/src/UIShell/HeaderPanelGroup.svelte.d.ts +23 -0
  626. package/src/UIShell/HeaderPanelLink.svelte +27 -4
  627. package/src/UIShell/HeaderPanelLink.svelte.d.ts +31 -12
  628. package/src/UIShell/HeaderPanelLinks.svelte +16 -1
  629. package/src/UIShell/HeaderPanelLinks.svelte.d.ts +8 -1
  630. package/src/UIShell/HeaderSearch.svelte +137 -30
  631. package/src/UIShell/HeaderSearch.svelte.d.ts +55 -14
  632. package/src/UIShell/HeaderSideNavItems.svelte +54 -7
  633. package/src/UIShell/HeaderSideNavItems.svelte.d.ts +12 -0
  634. package/src/UIShell/HeaderSwitcher.svelte +51 -11
  635. package/src/UIShell/HeaderSwitcher.svelte.d.ts +9 -2
  636. package/src/UIShell/HeaderUtilities.svelte +4 -1
  637. package/src/UIShell/HeaderUtilities.svelte.d.ts +8 -1
  638. package/src/UIShell/ProfileMenu.svelte +56 -16
  639. package/src/UIShell/ProfileMenu.svelte.d.ts +13 -2
  640. package/src/UIShell/ProfileMenuDetail.svelte +9 -4
  641. package/src/UIShell/ProfileMenuDetail.svelte.d.ts +8 -1
  642. package/src/UIShell/ProfileMenuDivider.svelte +1 -1
  643. package/src/UIShell/ProfileMenuHeader.svelte.d.ts +3 -3
  644. package/src/UIShell/ProfileMenuItem.svelte +6 -28
  645. package/src/UIShell/ProfileMenuItem.svelte.d.ts +5 -5
  646. package/src/UIShell/SideNav.svelte +158 -53
  647. package/src/UIShell/SideNav.svelte.d.ts +31 -1
  648. package/src/UIShell/SideNavDivider.svelte +1 -1
  649. package/src/UIShell/SideNavLink.svelte +10 -2
  650. package/src/UIShell/SideNavLink.svelte.d.ts +6 -6
  651. package/src/UIShell/SideNavMenu.svelte +48 -6
  652. package/src/UIShell/SideNavMenu.svelte.d.ts +15 -7
  653. package/src/UIShell/SideNavMenuItem.svelte +11 -0
  654. package/src/UIShell/SideNavMenuItem.svelte.d.ts +2 -2
  655. package/src/UIShell/SkipToContent.svelte +9 -1
  656. package/src/UIShell/index.js +1 -0
  657. package/src/UIShell/nav-store.d.ts +18 -0
  658. package/src/UIShell/nav-store.js +11 -0
  659. package/src/UserAvatar/UserAvatar.svelte +164 -63
  660. package/src/UserAvatar/UserAvatar.svelte.d.ts +48 -14
  661. package/src/UserAvatarGroup/UserAvatarGroup.svelte +73 -26
  662. package/src/UserAvatarGroup/UserAvatarGroup.svelte.d.ts +14 -9
  663. package/src/UserAvatarGroup/UserAvatarGroupOverflow.svelte +7 -4
  664. package/src/UserAvatarGroup/UserAvatarGroupOverflow.svelte.d.ts +11 -7
  665. package/src/VirtualList/VirtualList.svelte +196 -27
  666. package/src/VirtualList/VirtualList.svelte.d.ts +25 -0
  667. package/src/VirtualList/VirtualWindow.svelte +49 -0
  668. package/src/VirtualList/VirtualWindow.svelte.d.ts +43 -0
  669. package/src/constants/context-keys.d.ts +46 -0
  670. package/src/constants/context-keys.js +14 -0
  671. package/src/constants/timing.d.ts +65 -1
  672. package/src/constants/timing.js +20 -0
  673. package/src/icons/Add.svelte +3 -2
  674. package/src/icons/Add.svelte.d.ts +4 -1
  675. package/src/icons/ArrowDown.svelte +3 -2
  676. package/src/icons/ArrowDown.svelte.d.ts +4 -1
  677. package/src/icons/ArrowLeft.svelte +31 -0
  678. package/src/icons/ArrowLeft.svelte.d.ts +26 -0
  679. package/src/icons/ArrowRight.svelte +3 -2
  680. package/src/icons/ArrowRight.svelte.d.ts +4 -1
  681. package/src/icons/ArrowUp.svelte +3 -2
  682. package/src/icons/ArrowUp.svelte.d.ts +4 -1
  683. package/src/icons/ArrowsVertical.svelte +3 -2
  684. package/src/icons/ArrowsVertical.svelte.d.ts +4 -1
  685. package/src/icons/Calendar.svelte +3 -2
  686. package/src/icons/Calendar.svelte.d.ts +4 -1
  687. package/src/icons/CaretDown.svelte +3 -2
  688. package/src/icons/CaretDown.svelte.d.ts +4 -1
  689. package/src/icons/CaretLeft.svelte +3 -2
  690. package/src/icons/CaretLeft.svelte.d.ts +4 -1
  691. package/src/icons/CaretRight.svelte +3 -2
  692. package/src/icons/CaretRight.svelte.d.ts +4 -1
  693. package/src/icons/Caution.svelte +3 -2
  694. package/src/icons/Caution.svelte.d.ts +4 -1
  695. package/src/icons/CheckboxCheckedFilled.svelte +36 -0
  696. package/src/icons/CheckboxCheckedFilled.svelte.d.ts +26 -0
  697. package/src/icons/CheckboxIcon.svelte +31 -0
  698. package/src/icons/CheckboxIcon.svelte.d.ts +26 -0
  699. package/src/icons/Checkmark.svelte +3 -2
  700. package/src/icons/Checkmark.svelte.d.ts +4 -1
  701. package/src/icons/CheckmarkFilled.svelte +3 -2
  702. package/src/icons/CheckmarkFilled.svelte.d.ts +4 -1
  703. package/src/icons/CheckmarkOutline.svelte +3 -2
  704. package/src/icons/CheckmarkOutline.svelte.d.ts +4 -1
  705. package/src/icons/ChevronDown.svelte +3 -2
  706. package/src/icons/ChevronDown.svelte.d.ts +4 -1
  707. package/src/icons/ChevronLeft.svelte +3 -2
  708. package/src/icons/ChevronLeft.svelte.d.ts +4 -1
  709. package/src/icons/ChevronRight.svelte +3 -2
  710. package/src/icons/ChevronRight.svelte.d.ts +4 -1
  711. package/src/icons/ChevronUp.svelte +29 -0
  712. package/src/icons/ChevronUp.svelte.d.ts +26 -0
  713. package/src/icons/CircleDash.svelte +3 -2
  714. package/src/icons/CircleDash.svelte.d.ts +4 -1
  715. package/src/icons/CircleFill.svelte +3 -2
  716. package/src/icons/CircleFill.svelte.d.ts +4 -1
  717. package/src/icons/CircleStroke.svelte +3 -2
  718. package/src/icons/CircleStroke.svelte.d.ts +4 -1
  719. package/src/icons/Close.svelte +3 -2
  720. package/src/icons/Close.svelte.d.ts +4 -1
  721. package/src/icons/ColumnIcon.svelte +3 -2
  722. package/src/icons/ColumnIcon.svelte.d.ts +4 -1
  723. package/src/icons/Copy.svelte +3 -2
  724. package/src/icons/Copy.svelte.d.ts +4 -1
  725. package/src/icons/Critical.svelte +3 -2
  726. package/src/icons/Critical.svelte.d.ts +4 -1
  727. package/src/icons/CriticalSeverity.svelte +3 -2
  728. package/src/icons/CriticalSeverity.svelte.d.ts +4 -1
  729. package/src/icons/DiamondFill.svelte +4 -4
  730. package/src/icons/DiamondFill.svelte.d.ts +4 -1
  731. package/src/icons/Download.svelte +32 -0
  732. package/src/icons/Download.svelte.d.ts +22 -0
  733. package/src/icons/Edit.svelte +32 -0
  734. package/src/icons/Edit.svelte.d.ts +22 -0
  735. package/src/icons/EditOff.svelte +3 -2
  736. package/src/icons/EditOff.svelte.d.ts +4 -1
  737. package/src/icons/ErrorFilled.svelte +3 -2
  738. package/src/icons/ErrorFilled.svelte.d.ts +4 -1
  739. package/src/icons/IconSearch.svelte +3 -2
  740. package/src/icons/IconSearch.svelte.d.ts +4 -1
  741. package/src/icons/InProgress.svelte +3 -2
  742. package/src/icons/InProgress.svelte.d.ts +4 -1
  743. package/src/icons/Incomplete.svelte +3 -2
  744. package/src/icons/Incomplete.svelte.d.ts +4 -1
  745. package/src/icons/Information.svelte +3 -2
  746. package/src/icons/Information.svelte.d.ts +4 -1
  747. package/src/icons/InformationFilled.svelte +3 -2
  748. package/src/icons/InformationFilled.svelte.d.ts +4 -1
  749. package/src/icons/InformationSquareFilled.svelte +3 -2
  750. package/src/icons/InformationSquareFilled.svelte.d.ts +4 -1
  751. package/src/icons/Launch.svelte +3 -2
  752. package/src/icons/Launch.svelte.d.ts +4 -1
  753. package/src/icons/LowSeverity.svelte +3 -2
  754. package/src/icons/LowSeverity.svelte.d.ts +4 -1
  755. package/src/icons/MacCommand.svelte +31 -0
  756. package/src/icons/MacCommand.svelte.d.ts +26 -0
  757. package/src/icons/MacOption.svelte +30 -0
  758. package/src/icons/MacOption.svelte.d.ts +26 -0
  759. package/src/icons/MacShift.svelte +31 -0
  760. package/src/icons/MacShift.svelte.d.ts +22 -0
  761. package/src/icons/MenuIcon.svelte +3 -2
  762. package/src/icons/MenuIcon.svelte.d.ts +4 -1
  763. package/src/icons/OverflowMenuHorizontal.svelte +3 -2
  764. package/src/icons/OverflowMenuHorizontal.svelte.d.ts +4 -1
  765. package/src/icons/OverflowMenuVertical.svelte +3 -2
  766. package/src/icons/OverflowMenuVertical.svelte.d.ts +4 -1
  767. package/src/icons/PageLast.svelte +30 -0
  768. package/src/icons/PageLast.svelte.d.ts +22 -0
  769. package/src/icons/PendingFilled.svelte +3 -2
  770. package/src/icons/PendingFilled.svelte.d.ts +4 -1
  771. package/src/icons/Return.svelte +31 -0
  772. package/src/icons/Return.svelte.d.ts +22 -0
  773. package/src/icons/RowExpand.svelte +3 -2
  774. package/src/icons/RowExpand.svelte.d.ts +4 -1
  775. package/src/icons/Settings.svelte +3 -2
  776. package/src/icons/Settings.svelte.d.ts +4 -1
  777. package/src/icons/Star.svelte +31 -0
  778. package/src/icons/Star.svelte.d.ts +22 -0
  779. package/src/icons/StarFilled.svelte +31 -0
  780. package/src/icons/StarFilled.svelte.d.ts +26 -0
  781. package/src/icons/Subtract.svelte +3 -2
  782. package/src/icons/Subtract.svelte.d.ts +4 -1
  783. package/src/icons/Switcher.svelte +3 -2
  784. package/src/icons/Switcher.svelte.d.ts +4 -1
  785. package/src/icons/UndefinedFilled.svelte +3 -2
  786. package/src/icons/UndefinedFilled.svelte.d.ts +4 -1
  787. package/src/icons/Undo.svelte +31 -0
  788. package/src/icons/Undo.svelte.d.ts +22 -0
  789. package/src/icons/UnknownFilled.svelte +3 -2
  790. package/src/icons/UnknownFilled.svelte.d.ts +4 -1
  791. package/src/icons/User.svelte +4 -4
  792. package/src/icons/User.svelte.d.ts +4 -1
  793. package/src/icons/View.svelte +3 -2
  794. package/src/icons/View.svelte.d.ts +4 -1
  795. package/src/icons/ViewOff.svelte +3 -2
  796. package/src/icons/ViewOff.svelte.d.ts +4 -1
  797. package/src/icons/Warning.svelte +3 -2
  798. package/src/icons/Warning.svelte.d.ts +4 -1
  799. package/src/icons/WarningAltFilled.svelte +3 -2
  800. package/src/icons/WarningAltFilled.svelte.d.ts +4 -1
  801. package/src/icons/WarningAltInvertedFilled.svelte +3 -2
  802. package/src/icons/WarningAltInvertedFilled.svelte.d.ts +4 -1
  803. package/src/icons/WarningFilled.svelte +3 -2
  804. package/src/icons/WarningFilled.svelte.d.ts +4 -1
  805. package/src/icons/WarningSquareFilled.svelte +3 -2
  806. package/src/icons/WarningSquareFilled.svelte.d.ts +4 -1
  807. package/src/index.d.ts +63 -0
  808. package/src/index.js +68 -0
  809. package/src/syntax/highlight-code.d.ts +20 -0
  810. package/src/syntax/highlight-code.js +107 -0
  811. package/src/syntax/index.d.ts +2 -0
  812. package/src/syntax/index.js +7 -0
  813. package/src/syntax/tokenize.d.ts +64 -0
  814. package/src/syntax/tokenize.js +1064 -0
  815. package/src/tokens/index.d.ts +356 -0
  816. package/src/tokens/index.js +1921 -0
  817. package/src/utils/active-section.d.ts +33 -0
  818. package/src/utils/active-section.js +113 -0
  819. package/src/utils/anchored-tooltip.d.ts +63 -0
  820. package/src/utils/anchored-tooltip.js +151 -0
  821. package/src/utils/aria-naming.d.ts +28 -0
  822. package/src/utils/aria-naming.js +18 -0
  823. package/src/utils/aspect-ratio.d.ts +7 -0
  824. package/src/utils/aspect-ratio.js +13 -0
  825. package/src/utils/avatar-color.d.ts +4 -12
  826. package/src/utils/avatar-color.js +3 -3
  827. package/src/utils/batch-store-updates.d.ts +2 -2
  828. package/src/utils/batch-store-updates.js +6 -2
  829. package/src/utils/color-contrast.d.ts +17 -0
  830. package/src/utils/color-contrast.js +45 -0
  831. package/src/utils/column-settings.d.ts +6 -6
  832. package/src/utils/copy-feedback.d.ts +3 -1
  833. package/src/utils/copy-feedback.js +54 -24
  834. package/src/utils/copy-text.js +10 -0
  835. package/src/utils/css-string.d.ts +6 -0
  836. package/src/utils/css-string.js +8 -0
  837. package/src/utils/debounce.d.ts +2 -2
  838. package/src/utils/delayed-loading.d.ts +48 -0
  839. package/src/utils/delayed-loading.js +102 -0
  840. package/src/utils/dialog-lifecycle.d.ts +14 -1
  841. package/src/utils/dialog-lifecycle.js +48 -1
  842. package/src/utils/dismiss.d.ts +9 -2
  843. package/src/utils/dismiss.js +18 -4
  844. package/src/utils/dismissible-notification.d.ts +19 -2
  845. package/src/utils/dismissible-notification.js +120 -7
  846. package/src/utils/dispatch-open-close.d.ts +5 -1
  847. package/src/utils/dom-node-registry.d.ts +2 -0
  848. package/src/utils/dom-node-registry.js +1 -0
  849. package/src/utils/download-file.d.ts +2 -1
  850. package/src/utils/download-file.js +1 -0
  851. package/src/utils/field-status.d.ts +4 -11
  852. package/src/utils/field-status.js +4 -9
  853. package/src/utils/fieldset-disabled.d.ts +11 -0
  854. package/src/utils/fieldset-disabled.js +40 -0
  855. package/src/utils/filter-incoming-files.d.ts +12 -4
  856. package/src/utils/filter-incoming-files.js +34 -6
  857. package/src/utils/fit-align.d.ts +94 -0
  858. package/src/utils/fit-align.js +219 -0
  859. package/src/utils/fixed-block-offset.d.ts +7 -0
  860. package/src/utils/fixed-block-offset.js +53 -0
  861. package/src/utils/floating-position.js +17 -0
  862. package/src/utils/focus.d.ts +42 -1
  863. package/src/utils/focus.js +89 -9
  864. package/src/utils/form-button-size.d.ts +12 -0
  865. package/src/utils/form-button-size.js +12 -0
  866. package/src/utils/form-parts.d.ts +26 -0
  867. package/src/utils/form-parts.js +56 -0
  868. package/src/utils/form-reset.d.ts +5 -6
  869. package/src/utils/form-reset.js +5 -1
  870. package/src/utils/format-delta.d.ts +4 -2
  871. package/src/utils/format-delta.js +8 -2
  872. package/src/utils/forward-shift-click.d.ts +16 -0
  873. package/src/utils/forward-shift-click.js +16 -0
  874. package/src/utils/frame-batch.d.ts +16 -0
  875. package/src/utils/frame-batch.js +59 -0
  876. package/src/utils/fuzzy-match.js +16 -6
  877. package/src/utils/grapheme-count.js +25 -4
  878. package/src/utils/group-chat-messages.d.ts +48 -0
  879. package/src/utils/group-chat-messages.js +85 -0
  880. package/src/utils/has-modifier-key.d.ts +2 -0
  881. package/src/utils/has-modifier-key.js +5 -0
  882. package/src/utils/height-measurer.d.ts +11 -2
  883. package/src/utils/height-measurer.js +40 -29
  884. package/src/utils/horizontal-scroll.d.ts +4 -2
  885. package/src/utils/horizontal-scroll.js +8 -3
  886. package/src/utils/icon-component.d.ts +8 -0
  887. package/src/utils/icon-component.js +2 -0
  888. package/src/utils/idle-mount.d.ts +6 -0
  889. package/src/utils/idle-mount.js +45 -0
  890. package/src/utils/ime-composition.d.ts +2 -0
  891. package/src/utils/ime-composition.js +5 -0
  892. package/src/utils/init-order.d.ts +15 -0
  893. package/src/utils/init-order.js +23 -0
  894. package/src/utils/initials.js +11 -0
  895. package/src/utils/inline-align.d.ts +24 -0
  896. package/src/utils/inline-align.js +40 -0
  897. package/src/utils/inline-direction.d.ts +33 -0
  898. package/src/utils/inline-direction.js +27 -0
  899. package/src/utils/is-scroll-near-end.d.ts +2 -5
  900. package/src/utils/is-scroll-near-end.js +1 -1
  901. package/src/utils/key-by.js +2 -1
  902. package/src/utils/keyboard-shortcut.d.ts +115 -0
  903. package/src/utils/keyboard-shortcut.js +388 -0
  904. package/src/utils/layout-direction.d.ts +13 -0
  905. package/src/utils/layout-direction.js +17 -0
  906. package/src/utils/limit-announcement.d.ts +20 -0
  907. package/src/utils/limit-announcement.js +29 -0
  908. package/src/utils/link-rel.d.ts +2 -2
  909. package/src/utils/link-segments.d.ts +15 -0
  910. package/src/utils/link-segments.js +59 -0
  911. package/src/utils/locale-direction.d.ts +6 -0
  912. package/src/utils/locale-direction.js +32 -0
  913. package/src/utils/max-scroll-height.d.ts +10 -0
  914. package/src/utils/max-scroll-height.js +23 -0
  915. package/src/utils/menu-placement.d.ts +51 -0
  916. package/src/utils/menu-placement.js +53 -0
  917. package/src/utils/menubar.d.ts +28 -0
  918. package/src/utils/menubar.js +149 -0
  919. package/src/utils/modal-dialog.d.ts +5 -0
  920. package/src/utils/modal-dialog.js +12 -0
  921. package/src/utils/numeric-format.d.ts +12 -1
  922. package/src/utils/numeric-format.js +61 -3
  923. package/src/utils/observe-dom-order.d.ts +9 -0
  924. package/src/utils/observe-dom-order.js +15 -0
  925. package/src/utils/option-list-navigator.d.ts +2 -0
  926. package/src/utils/option-list-navigator.js +24 -1
  927. package/src/utils/pause-on-hover-focus.d.ts +6 -0
  928. package/src/utils/pause-on-hover-focus.js +37 -13
  929. package/src/utils/pointer-aim.d.ts +10 -0
  930. package/src/utils/pointer-aim.js +36 -0
  931. package/src/utils/pointer-drag.d.ts +20 -0
  932. package/src/utils/pointer-drag.js +64 -0
  933. package/src/utils/preserve-focus-selection.d.ts +8 -0
  934. package/src/utils/preserve-focus-selection.js +42 -0
  935. package/src/utils/relative-time.d.ts +3 -14
  936. package/src/utils/relative-time.js +11 -1
  937. package/src/utils/resolve-id-selection.d.ts +7 -0
  938. package/src/utils/resolve-id-selection.js +7 -2
  939. package/src/utils/resolve-slider-marks.d.ts +37 -0
  940. package/src/utils/resolve-slider-marks.js +45 -1
  941. package/src/utils/resolve-tabs-size.d.ts +0 -3
  942. package/src/utils/resolve-tabs-size.js +1 -1
  943. package/src/utils/roving-focus.d.ts +16 -6
  944. package/src/utils/roving-focus.js +19 -5
  945. package/src/utils/scroll-into-view-within.d.ts +20 -0
  946. package/src/utils/scroll-into-view-within.js +43 -0
  947. package/src/utils/shared-observer.d.ts +27 -0
  948. package/src/utils/shared-observer.js +102 -0
  949. package/src/utils/size-aliases.d.ts +66 -0
  950. package/src/utils/size-aliases.js +55 -0
  951. package/src/utils/slider-value.d.ts +84 -19
  952. package/src/utils/slider-value.js +109 -25
  953. package/src/utils/sort-by-dom-order.d.ts +12 -0
  954. package/src/utils/sort-by-dom-order.js +17 -7
  955. package/src/utils/storage.d.ts +3 -1
  956. package/src/utils/storage.js +3 -0
  957. package/src/utils/submenu-hover-intent.d.ts +10 -2
  958. package/src/utils/submenu-hover-intent.js +61 -4
  959. package/src/utils/submit-attempt.d.ts +20 -0
  960. package/src/utils/submit-attempt.js +72 -0
  961. package/src/utils/tabindex.d.ts +9 -0
  962. package/src/utils/tabindex.js +5 -0
  963. package/src/utils/tabs-init-claims.d.ts +27 -0
  964. package/src/utils/tabs-init-claims.js +50 -0
  965. package/src/utils/title-when-truncated.d.ts +19 -0
  966. package/src/utils/title-when-truncated.js +39 -0
  967. package/src/utils/to-hierarchy.js +13 -22
  968. package/src/utils/tooltip-align.d.ts +33 -0
  969. package/src/utils/tooltip-align.js +21 -0
  970. package/src/utils/tooltip-clicks.d.ts +7 -0
  971. package/src/utils/tooltip-clicks.js +19 -0
  972. package/src/utils/tooltip-cover.d.ts +35 -0
  973. package/src/utils/tooltip-cover.js +105 -0
  974. package/src/utils/tooltip-group.d.ts +54 -0
  975. package/src/utils/tooltip-group.js +48 -0
  976. package/src/utils/tooltip-handoff.d.ts +41 -12
  977. package/src/utils/tooltip-handoff.js +65 -14
  978. package/src/utils/trap-focus.d.ts +3 -0
  979. package/src/utils/trap-focus.js +20 -3
  980. package/src/utils/tree-fingerprint.js +4 -4
  981. package/src/utils/tree-virtual-index.d.ts +0 -9
  982. package/src/utils/tree-virtual-index.js +0 -37
  983. package/src/utils/truncation.d.ts +14 -0
  984. package/src/utils/truncation.js +25 -0
  985. package/src/utils/typeahead.js +2 -2
  986. package/src/utils/vertical-list-focus.d.ts +12 -0
  987. package/src/utils/vertical-list-focus.js +22 -0
  988. package/src/utils/virtual-window.d.ts +27 -0
  989. package/src/utils/virtual-window.js +56 -0
  990. package/src/utils/virtualize.d.ts +26 -4
  991. package/src/utils/virtualize.js +129 -43
  992. package/src/utils/word-count.d.ts +22 -0
  993. package/src/utils/word-count.js +66 -0
  994. package/src/Button/button-tooltip-store.d.ts +0 -3
  995. package/src/Button/button-tooltip-store.js +0 -4
  996. package/src/DatePicker/flatpickr-esm-plugins.d.ts +0 -8
  997. package/src/DatePicker/flatpickr-month-select-plugin.d.ts +0 -12
  998. package/src/DatePicker/flatpickr-range-plugin.d.ts +0 -10
  999. package/src/DatePicker/flatpickr-week-select-plugin.d.ts +0 -5
  1000. package/src/DatePicker/year-select-plugin.js +0 -256
  1001. package/src/RecursiveList/RecursiveListItem.svelte +0 -29
  1002. package/src/RecursiveList/RecursiveListItem.svelte.d.ts +0 -40
  1003. package/src/TooltipIcon/tooltip-icon-store.d.ts +0 -3
  1004. package/src/TooltipIcon/tooltip-icon-store.js +0 -4
  1005. package/src/utils/scroll-into-view-within-menu.d.ts +0 -19
  1006. package/src/utils/scroll-into-view-within-menu.js +0 -27
package/README.md CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  Carbon Components Svelte is a [Svelte](https://github.com/sveltejs/svelte) component library that implements the [Carbon Design System](https://www.carbondesignsystem.com/), an open source design system by IBM. Ship accessible, consistent, production-ready interfaces.
10
10
 
11
- - **90+ components**: from inputs to data tables
11
+ - **100+ components**: from inputs to data tables
12
12
  - **5 built-in themes**: two light, three dark
13
13
  - **Fully typed TypeScript API**: props, events, and slots
14
14
  - **WCAG 2.1 AA**: keyboard and screen-reader ready
@@ -18,7 +18,7 @@ The Carbon Svelte ecosystem also includes:
18
18
  - **[Carbon Icons Svelte](https://github.com/carbon-design-system/carbon-icons-svelte)**: 2,700+ Carbon icons as Svelte components
19
19
  - **[Carbon Pictograms Svelte](https://github.com/carbon-design-system/carbon-pictograms-svelte)**: 1,500+ Carbon pictograms as Svelte components
20
20
  - **[Carbon Charts Svelte](https://github.com/carbon-design-system/carbon-charts/tree/master/packages/svelte)**: 25+ charts, powered by d3
21
- - **[Carbon Preprocess Svelte](https://github.com/carbon-design-system/carbon-preprocess-svelte)**: Collection of Svelte preprocessors for Carbon
21
+ - **[Carbon Preprocess Svelte](https://github.com/carbon-design-system/carbon-preprocess-svelte)**: Svelte preprocessors and build plugins for Carbon
22
22
 
23
23
  ## [Documentation](https://svelte.carbondesignsystem.com)
24
24
 
@@ -51,7 +51,9 @@ Before importing components, you will need to first apply Carbon component style
51
51
  - **g100.css**: Gray 100 theme (dark)
52
52
  - **all.css**: All five themes (White, Gray 10, Gray 80, Gray 90, Gray 100) using [CSS variables](https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_custom_properties)
53
53
 
54
- Each StyleSheet is [generated](scripts/build-css.ts) from the flagship [carbon-components](https://github.com/carbon-design-system/carbon/tree/main/packages/carbon-components) library.
54
+ Every StyleSheet declares its theme's tokens as custom properties on `:root`, so your own CSS can use `var(--cds-text-primary)`, `var(--cds-spacing-05)` and the rest with any of them.
55
+
56
+ Each StyleSheet is [compiled](scripts/build-css.ts) from Carbon's component SCSS ([carbon-components@10.58](css/vendor/carbon-components), vendored) themed with Carbon v11 tokens, and this library's own partials in [css](css).
55
57
 
56
58
  The compiled CSS is generated from the following `.scss` files:
57
59
 
@@ -86,11 +88,11 @@ import "carbon-components-svelte/css/g100.css";
86
88
  import "carbon-components-svelte/css/all.css";
87
89
  ```
88
90
 
89
- ### SCSS
91
+ ### Smaller CSS
90
92
 
91
- The most performant method to load styles is to import SCSS directly from carbon-components. Although it requires more set up, you can reduce the size of the bundle CSS by importing individual component styles instead of a pre-compiled CSS StyleSheet.
93
+ Each precompiled StyleSheet contains the styles for every component. To ship only the styles your app uses, add [`optimizeCss`](#optimizecss) to your production build. Set `propAware: true` to also drop the styles of prop values your app never passes; see [prop-aware pruning](#prop-aware-pruning).
92
94
 
93
- Refer to the [official Carbon guide on SASS](https://github.com/carbon-design-system/carbon/blob/v10/docs/guides/sass.md) for documentation.
95
+ The SCSS sources are not published. Compiling `carbon-components` v10 SCSS yourself gives v10 colors and type, and misses styles for components and variants that only this library provides.
94
96
 
95
97
  ### Dynamic theming
96
98
 
@@ -144,7 +146,7 @@ Import components from `carbon-components-svelte` in the `script` tag of your Sv
144
146
 
145
147
  ## Preprocessors & Plugins
146
148
 
147
- [carbon-preprocess-svelte](https://github.com/carbon-design-system/carbon-preprocess-svelte) is a collection of Svelte preprocessors for Carbon. It trims build times and bundle size with two drop-in tools for faster HMR in development and leaner CSS when you ship.
149
+ [carbon-preprocess-svelte](https://github.com/carbon-design-system/carbon-preprocess-svelte) is a collection of Svelte preprocessors and build plugins for Carbon. It trims build times and bundle size with three drop-in tools: faster compiles in development, leaner CSS and leaner JavaScript when you ship. Each works on its own.
148
150
 
149
151
  > [!NOTE]
150
152
  > Using `carbon-preprocess-svelte` is optional and not a prerequisite for this library. It should be installed as a development dependency.
@@ -163,6 +165,12 @@ yarn add -D carbon-preprocess-svelte
163
165
  bun add -D carbon-preprocess-svelte
164
166
  ```
165
167
 
168
+ | Tool | Type | What it does |
169
+ | :--- | :--- | :--- |
170
+ | [`optimizeImports`](#optimizeimports) | Svelte preprocessor | Rewrites barrel imports to source paths, for faster dev and build times |
171
+ | [`optimizeCss`](#optimizecss) | Build plugin | Removes unused Carbon styles from production CSS |
172
+ | [`optimizeComponents`](#optimizecomponents) | Build plugin | Rewrites Carbon components for the props your app passes, removing code it never runs |
173
+
166
174
  ### `optimizeImports`
167
175
 
168
176
  `optimizeImports` is a Svelte preprocessor that rewrites barrel imports from Carbon components/icons/pictograms packages to their source Svelte code paths. This can significantly speed up development and production build compile times while preserving typeahead and autocompletion offered by integrated development environments (IDE) like VS Code.
@@ -188,24 +196,79 @@ The preprocessor optimizes imports from the following packages:
188
196
 
189
197
  ### `optimizeCss`
190
198
 
191
- `optimizeCss` is a Vite plugin that removes unused Carbon styles at build time, often removing hundreds of kilobytes from production bundles. The plugin is compatible with Rollup ([Vite](https://vitejs.dev/guide/api-plugin) extends the Rollup plugin API).
199
+ `optimizeCss` is a build plugin that removes unused Carbon styles at build time, often removing hundreds of kilobytes from production bundles. It runs on Vite, Rollup, and Rolldown. For Webpack and Rspack, use `OptimizeCssPlugin`.
192
200
 
193
201
  `carbon-components-svelte@0.85.0` or greater is required.
194
202
 
195
203
  ```diff
196
204
  $ vite build
197
205
 
198
- Optimized index-CU4gbKFa.css
199
- - Before: 606.26 kB
200
- + After: 53.22 kB (-91.22%)
206
+ Optimized assets/index-Doxsm5Yz.css
207
+ - Before: 557.37 kB
208
+ + After: 46.16 kB (-91.72%)
201
209
 
202
- dist/index.html 0.34 kB │ gzip: 0.24 kB
203
- dist/assets/index-CU4gbKFa.css 53.22 kB │ gzip: 6.91 kB
204
- dist/assets/index-Ceijs3eO.js 53.65 kB │ gzip: 15.88 kB
210
+ dist/index.html 0.33 kB │ gzip: 0.23 kB
211
+ dist/assets/index-Doxsm5Yz.css 46.16 kB │ gzip: 6.12 kB
212
+ dist/assets/index-BoBcXTHi.js 69.61 kB │ gzip: 24.35 kB
205
213
  ```
206
214
 
207
215
  > [!NOTE]
208
- > This is a plugin and not a Svelte preprocessor. It should be added to the list of `vite.plugins`. For Vite set-ups, this plugin is only run when building the app. For Rollup and Webpack, you should conditionally apply the plugin to only execute when building for production.
216
+ > This is a plugin and not a Svelte preprocessor. Add it to your bundler's `plugins`. Vite runs it on `vite build` only, and `OptimizeCssPlugin` runs in Webpack's production mode only. Under Rollup and Rolldown, add it to production builds only.
217
+
218
+ #### Prop-aware pruning
219
+
220
+ Set `propAware: true` to also remove styles for the prop values your app never passes.
221
+
222
+ ```js
223
+ optimizeCss({ propAware: true });
224
+ ```
225
+
226
+ ```svelte
227
+ <Button kind="tertiary">Save</Button>
228
+ <!-- kept: .bx--btn, .bx--btn--tertiary
229
+ pruned: the other kinds and sizes, .bx--skeleton, the icon-only tooltip -->
230
+ ```
231
+
232
+ It reads literal props, constants and state nothing reassigns (including constants your own modules export), your own wrapper components, props forwarded with `{...$$restProps}` or `...rest`, object and array literals, and your own `{#if}` and `{#each}`. A value it can't read keeps every variant: a reassigned variable, a writable store, `bind:`, a spread of anything but a literal or forwarded props, or data fetched at runtime.
233
+
234
+ Refer to the [carbon-preprocess-svelte documentation](https://github.com/carbon-design-system/carbon-preprocess-svelte#prop-aware-pruning) for details.
235
+
236
+ ### `optimizeComponents`
237
+
238
+ `optimizeComponents` rewrites each Carbon component your app renders for the props it passes. Values that never change become literals, and branches that can't run are removed, along with child components only those branches render (a skeleton, a tooltip portal). It is the JavaScript counterpart of prop-aware CSS pruning and uses the same analysis. In typical apps it removes 18–27% of the production JavaScript.
239
+
240
+ Your own wrapper components are rewritten the same way when every place that renders them is in `content`.
241
+
242
+ ```js
243
+ // vite.config.js
244
+ import { svelte } from "@sveltejs/vite-plugin-svelte";
245
+ import {
246
+ optimizeComponents,
247
+ optimizeCss,
248
+ optimizeImports,
249
+ } from "carbon-preprocess-svelte";
250
+
251
+ export default {
252
+ plugins: [
253
+ optimizeComponents(),
254
+ svelte({ preprocess: [optimizeImports()] }),
255
+ optimizeCss({ propAware: true }),
256
+ ],
257
+ };
258
+ ```
259
+
260
+ | Bundler | Set-up | Runs on |
261
+ | :--- | :--- | :--- |
262
+ | Vite, SvelteKit, Astro | add `optimizeComponents()` to `vite.plugins`; it orders itself first | `vite build` only, never `vite dev` |
263
+ | Rollup, Rolldown | list `optimizeComponents()` before the Svelte plugin | production builds only (add it conditionally) |
264
+ | Webpack, Rspack | add `new OptimizeComponentsPlugin()` to `plugins` | `mode: "production"` only |
265
+
266
+ - It analyzes the files matched by `content` (default: source files under `src/`) before the build. If a module outside `content` renders a Carbon component, or one of your rewritten wrappers, including through a re-export or a dynamic `import()`, the build fails instead of shipping wrong code.
267
+ - Wrappers imported through an alias (`$lib/Card.svelte`, `#lib/Card.svelte`) are resolved with the bundler's own resolver.
268
+ - SvelteKit and Astro server and client builds are rewritten alike, so prerendered pages hydrate as before.
269
+ - Set `report: true` to print what each build rewrote.
270
+
271
+ Refer to the [carbon-preprocess-svelte documentation](https://github.com/carbon-design-system/carbon-preprocess-svelte#optimizecomponents) for every option.
209
272
 
210
273
  ### Configure your bundler
211
274
 
@@ -236,23 +299,20 @@ import adapter from "@sveltejs/adapter-static";
236
299
  import { vitePreprocess } from "@sveltejs/vite-plugin-svelte";
237
300
  import { optimizeImports } from "carbon-preprocess-svelte";
238
301
 
239
- const config = {
302
+ export default {
240
303
  preprocess: [vitePreprocess(), optimizeImports()],
241
304
  kit: { adapter: adapter() },
242
305
  };
243
-
244
- export default config;
245
306
  ```
246
307
 
247
308
  ```js
248
309
  // vite.config.js
249
310
  import { sveltekit } from "@sveltejs/kit/vite";
250
311
  import { optimizeCss } from "carbon-preprocess-svelte";
251
- import { defineConfig } from "vite";
252
312
 
253
- export default defineConfig({
313
+ export default {
254
314
  plugins: [sveltekit(), optimizeCss()],
255
- });
315
+ };
256
316
  ```
257
317
 
258
318
  **Rollup**
@@ -276,6 +336,8 @@ export default {
276
336
 
277
337
  **Webpack**
278
338
 
339
+ Rspack implements Webpack's plugin and loader APIs, so the same configuration works in `rspack.config.mjs`.
340
+
279
341
  ```js
280
342
  // webpack.config.mjs
281
343
  import { OptimizeCssPlugin, optimizeImports } from "carbon-preprocess-svelte";
@@ -370,7 +432,7 @@ Documentation is available in LLM-friendly plain text for use with coding assist
370
432
 
371
433
  ## TypeScript support
372
434
 
373
- [TypeScript definitions](types) are generated by [sveld](https://github.com/carbon-design-system/sveld).
435
+ Every component ships TypeScript definitions for its props, events, and slots (`src/**/*.svelte.d.ts`), generated from the component source by [sveld](https://github.com/carbon-design-system/sveld).
374
436
 
375
437
  ## Contributing
376
438