@ifloppy/maxcraftmc-ui-svelte 0.1.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 (495) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/LICENSE +201 -0
  3. package/NOTICE +11 -0
  4. package/README.md +122 -0
  5. package/css/_popover.scss +325 -0
  6. package/css/all.css +1 -0
  7. package/css/all.scss +81 -0
  8. package/css/g10.css +1 -0
  9. package/css/g10.scss +34 -0
  10. package/css/g100.css +1 -0
  11. package/css/g100.scss +33 -0
  12. package/css/g80.css +1 -0
  13. package/css/g80.scss +34 -0
  14. package/css/g90.css +1 -0
  15. package/css/g90.scss +33 -0
  16. package/css/maxcraft.css +3239 -0
  17. package/css/white.css +1 -0
  18. package/css/white.scss +33 -0
  19. package/docs/compatibility.md +53 -0
  20. package/docs/component-catalog.md +99 -0
  21. package/docs/consumer-checklist.md +42 -0
  22. package/docs/contributing.md +80 -0
  23. package/docs/hugo-integration.md +94 -0
  24. package/docs/installation.md +89 -0
  25. package/docs/publishing.md +74 -0
  26. package/docs/svelte-migration.md +123 -0
  27. package/docs/theme-tokens.md +60 -0
  28. package/examples/component-gallery/index.html +12 -0
  29. package/examples/component-gallery/src/App.svelte +474 -0
  30. package/examples/component-gallery/src/main.js +6 -0
  31. package/examples/component-gallery/vite.config.js +6 -0
  32. package/examples/hugo-head.html +25 -0
  33. package/examples/hugo-module-mounts.toml +34 -0
  34. package/examples/svelte-basic/+layout.svelte +11 -0
  35. package/examples/svelte-basic/+page.svelte +150 -0
  36. package/package.json +80 -0
  37. package/src/Accordion/Accordion.svelte +60 -0
  38. package/src/Accordion/AccordionItem.svelte +79 -0
  39. package/src/Accordion/AccordionSkeleton.svelte +63 -0
  40. package/src/Accordion/index.js +3 -0
  41. package/src/AspectRatio/AspectRatio.svelte +25 -0
  42. package/src/AspectRatio/index.js +1 -0
  43. package/src/Breadcrumb/Breadcrumb.svelte +40 -0
  44. package/src/Breadcrumb/BreadcrumbItem.svelte +46 -0
  45. package/src/Breadcrumb/BreadcrumbSkeleton.svelte +26 -0
  46. package/src/Breadcrumb/index.js +3 -0
  47. package/src/Breakpoint/Breakpoint.svelte +47 -0
  48. package/src/Breakpoint/breakpointObserver.d.ts +28 -0
  49. package/src/Breakpoint/breakpointObserver.js +82 -0
  50. package/src/Breakpoint/breakpoints.d.ts +11 -0
  51. package/src/Breakpoint/breakpoints.js +13 -0
  52. package/src/Breakpoint/index.d.ts +4 -0
  53. package/src/Breakpoint/index.js +3 -0
  54. package/src/Button/Button.svelte +212 -0
  55. package/src/Button/ButtonSet.svelte +12 -0
  56. package/src/Button/ButtonSkeleton.svelte +54 -0
  57. package/src/Button/index.js +3 -0
  58. package/src/Checkbox/Checkbox.svelte +130 -0
  59. package/src/Checkbox/CheckboxSkeleton.svelte +14 -0
  60. package/src/Checkbox/InlineCheckbox.svelte +41 -0
  61. package/src/Checkbox/index.js +3 -0
  62. package/src/CodeSnippet/CodeSnippet.svelte +280 -0
  63. package/src/CodeSnippet/CodeSnippetSkeleton.svelte +27 -0
  64. package/src/CodeSnippet/index.js +2 -0
  65. package/src/ComboBox/ComboBox.svelte +432 -0
  66. package/src/ComboBox/index.js +1 -0
  67. package/src/ComposedModal/ComposedModal.svelte +172 -0
  68. package/src/ComposedModal/ModalBody.svelte +22 -0
  69. package/src/ComposedModal/ModalFooter.svelte +90 -0
  70. package/src/ComposedModal/ModalHeader.svelte +65 -0
  71. package/src/ComposedModal/index.js +4 -0
  72. package/src/ContentSwitcher/ContentSwitcher.svelte +74 -0
  73. package/src/ContentSwitcher/Switch.svelte +72 -0
  74. package/src/ContentSwitcher/index.js +2 -0
  75. package/src/ContextMenu/ContextMenu.svelte +196 -0
  76. package/src/ContextMenu/ContextMenuDivider.svelte +1 -0
  77. package/src/ContextMenu/ContextMenuGroup.svelte +36 -0
  78. package/src/ContextMenu/ContextMenuOption.svelte +286 -0
  79. package/src/ContextMenu/ContextMenuRadioGroup.svelte +34 -0
  80. package/src/ContextMenu/index.js +5 -0
  81. package/src/CopyButton/CopyButton.svelte +82 -0
  82. package/src/CopyButton/index.js +1 -0
  83. package/src/DataTable/DataTable.svelte +609 -0
  84. package/src/DataTable/DataTableSkeleton.svelte +102 -0
  85. package/src/DataTable/DataTableTypes.d.ts +18 -0
  86. package/src/DataTable/Table.svelte +60 -0
  87. package/src/DataTable/TableBody.svelte +3 -0
  88. package/src/DataTable/TableCell.svelte +4 -0
  89. package/src/DataTable/TableContainer.svelte +28 -0
  90. package/src/DataTable/TableHead.svelte +5 -0
  91. package/src/DataTable/TableHeader.svelte +76 -0
  92. package/src/DataTable/TableRow.svelte +4 -0
  93. package/src/DataTable/Toolbar.svelte +34 -0
  94. package/src/DataTable/ToolbarBatchActions.svelte +99 -0
  95. package/src/DataTable/ToolbarContent.svelte +3 -0
  96. package/src/DataTable/ToolbarMenu.svelte +23 -0
  97. package/src/DataTable/ToolbarMenuItem.svelte +9 -0
  98. package/src/DataTable/ToolbarSearch.svelte +122 -0
  99. package/src/DataTable/index.js +15 -0
  100. package/src/DatePicker/DatePicker.svelte +271 -0
  101. package/src/DatePicker/DatePickerInput.svelte +173 -0
  102. package/src/DatePicker/DatePickerSkeleton.svelte +36 -0
  103. package/src/DatePicker/createCalendar.js +100 -0
  104. package/src/DatePicker/index.js +3 -0
  105. package/src/Dropdown/Dropdown.svelte +336 -0
  106. package/src/Dropdown/DropdownSkeleton.svelte +23 -0
  107. package/src/Dropdown/index.js +2 -0
  108. package/src/FileUploader/FileUploader.svelte +177 -0
  109. package/src/FileUploader/FileUploaderButton.svelte +125 -0
  110. package/src/FileUploader/FileUploaderDropContainer.svelte +129 -0
  111. package/src/FileUploader/FileUploaderItem.svelte +79 -0
  112. package/src/FileUploader/FileUploaderSkeleton.svelte +19 -0
  113. package/src/FileUploader/Filename.svelte +57 -0
  114. package/src/FileUploader/index.js +6 -0
  115. package/src/FluidForm/FluidForm.svelte +23 -0
  116. package/src/FluidForm/index.js +1 -0
  117. package/src/Form/Form.svelte +20 -0
  118. package/src/Form/index.js +1 -0
  119. package/src/FormGroup/FormGroup.svelte +44 -0
  120. package/src/FormGroup/index.js +1 -0
  121. package/src/FormItem/FormItem.svelte +12 -0
  122. package/src/FormItem/index.js +1 -0
  123. package/src/FormLabel/FormLabel.svelte +18 -0
  124. package/src/FormLabel/index.js +1 -0
  125. package/src/Grid/Column.svelte +119 -0
  126. package/src/Grid/Grid.svelte +58 -0
  127. package/src/Grid/Row.svelte +54 -0
  128. package/src/Grid/index.js +3 -0
  129. package/src/ImageLoader/ImageLoader.svelte +117 -0
  130. package/src/ImageLoader/index.js +1 -0
  131. package/src/InlineLoading/InlineLoading.svelte +82 -0
  132. package/src/InlineLoading/index.js +1 -0
  133. package/src/Link/Link.svelte +89 -0
  134. package/src/Link/OutboundLink.svelte +18 -0
  135. package/src/Link/index.js +2 -0
  136. package/src/ListBox/ListBox.svelte +64 -0
  137. package/src/ListBox/ListBoxField.svelte +67 -0
  138. package/src/ListBox/ListBoxMenu.svelte +18 -0
  139. package/src/ListBox/ListBoxMenuIcon.svelte +38 -0
  140. package/src/ListBox/ListBoxMenuItem.svelte +38 -0
  141. package/src/ListBox/ListBoxSelection.svelte +114 -0
  142. package/src/ListBox/index.js +6 -0
  143. package/src/ListItem/ListItem.svelte +12 -0
  144. package/src/ListItem/index.js +1 -0
  145. package/src/Loading/Loading.svelte +76 -0
  146. package/src/Loading/index.js +1 -0
  147. package/src/LocalStorage/LocalStorage.svelte +71 -0
  148. package/src/LocalStorage/index.js +1 -0
  149. package/src/Modal/Modal.svelte +304 -0
  150. package/src/Modal/index.js +1 -0
  151. package/src/Modal/modalStore.js +36 -0
  152. package/src/MultiSelect/MultiSelect.svelte +557 -0
  153. package/src/MultiSelect/index.js +1 -0
  154. package/src/Notification/InlineNotification.svelte +114 -0
  155. package/src/Notification/NotificationActionButton.svelte +18 -0
  156. package/src/Notification/NotificationButton.svelte +47 -0
  157. package/src/Notification/NotificationIcon.svelte +41 -0
  158. package/src/Notification/ToastNotification.svelte +131 -0
  159. package/src/Notification/index.js +5 -0
  160. package/src/NumberInput/NumberInput.svelte +279 -0
  161. package/src/NumberInput/NumberInputSkeleton.svelte +20 -0
  162. package/src/NumberInput/index.js +2 -0
  163. package/src/OrderedList/OrderedList.svelte +26 -0
  164. package/src/OrderedList/index.js +1 -0
  165. package/src/OverflowMenu/OverflowMenu.svelte +259 -0
  166. package/src/OverflowMenu/OverflowMenuItem.svelte +117 -0
  167. package/src/OverflowMenu/index.js +2 -0
  168. package/src/Pagination/Pagination.svelte +216 -0
  169. package/src/Pagination/PaginationSkeleton.svelte +24 -0
  170. package/src/Pagination/index.js +2 -0
  171. package/src/PaginationNav/PaginationItem.svelte +23 -0
  172. package/src/PaginationNav/PaginationNav.svelte +190 -0
  173. package/src/PaginationNav/PaginationOverflow.svelte +56 -0
  174. package/src/PaginationNav/index.js +1 -0
  175. package/src/Popover/Popover.svelte +73 -0
  176. package/src/Popover/index.js +1 -0
  177. package/src/ProgressBar/ProgressBar.svelte +110 -0
  178. package/src/ProgressBar/index.js +1 -0
  179. package/src/ProgressIndicator/ProgressIndicator.svelte +79 -0
  180. package/src/ProgressIndicator/ProgressIndicatorSkeleton.svelte +38 -0
  181. package/src/ProgressIndicator/ProgressStep.svelte +107 -0
  182. package/src/ProgressIndicator/index.js +3 -0
  183. package/src/RadioButton/RadioButton.svelte +93 -0
  184. package/src/RadioButton/RadioButtonSkeleton.svelte +13 -0
  185. package/src/RadioButton/index.js +2 -0
  186. package/src/RadioButtonGroup/RadioButtonGroup.svelte +120 -0
  187. package/src/RadioButtonGroup/index.js +1 -0
  188. package/src/RecursiveList/RecursiveList.svelte +38 -0
  189. package/src/RecursiveList/RecursiveListItem.svelte +19 -0
  190. package/src/RecursiveList/index.js +1 -0
  191. package/src/Search/Search.svelte +173 -0
  192. package/src/Search/SearchSkeleton.svelte +24 -0
  193. package/src/Search/index.js +2 -0
  194. package/src/Select/Select.svelte +248 -0
  195. package/src/Select/SelectItem.svelte +63 -0
  196. package/src/Select/SelectItemGroup.svelte +11 -0
  197. package/src/Select/SelectSkeleton.svelte +22 -0
  198. package/src/Select/index.js +4 -0
  199. package/src/SkeletonPlaceholder/SkeletonPlaceholder.svelte +10 -0
  200. package/src/SkeletonPlaceholder/index.js +1 -0
  201. package/src/SkeletonText/SkeletonText.svelte +50 -0
  202. package/src/SkeletonText/index.js +1 -0
  203. package/src/Slider/Slider.svelte +232 -0
  204. package/src/Slider/SliderSkeleton.svelte +28 -0
  205. package/src/Slider/index.js +2 -0
  206. package/src/StructuredList/StructuredList.svelte +53 -0
  207. package/src/StructuredList/StructuredListBody.svelte +13 -0
  208. package/src/StructuredList/StructuredListCell.svelte +22 -0
  209. package/src/StructuredList/StructuredListHead.svelte +13 -0
  210. package/src/StructuredList/StructuredListInput.svelte +45 -0
  211. package/src/StructuredList/StructuredListRow.svelte +44 -0
  212. package/src/StructuredList/StructuredListSkeleton.svelte +36 -0
  213. package/src/StructuredList/index.js +7 -0
  214. package/src/Tabs/Tab.svelte +74 -0
  215. package/src/Tabs/TabContent.svelte +26 -0
  216. package/src/Tabs/Tabs.svelte +168 -0
  217. package/src/Tabs/TabsSkeleton.svelte +34 -0
  218. package/src/Tabs/index.js +4 -0
  219. package/src/Tag/Tag.svelte +172 -0
  220. package/src/Tag/TagSkeleton.svelte +17 -0
  221. package/src/Tag/index.js +2 -0
  222. package/src/TextArea/TextArea.svelte +134 -0
  223. package/src/TextArea/TextAreaSkeleton.svelte +20 -0
  224. package/src/TextArea/index.js +2 -0
  225. package/src/TextInput/PasswordInput.svelte +265 -0
  226. package/src/TextInput/TextInput.svelte +249 -0
  227. package/src/TextInput/TextInputSkeleton.svelte +20 -0
  228. package/src/TextInput/index.js +3 -0
  229. package/src/Theme/Theme.svelte +120 -0
  230. package/src/Theme/index.js +1 -0
  231. package/src/Tile/ClickableTile.svelte +43 -0
  232. package/src/Tile/ExpandableTile.svelte +104 -0
  233. package/src/Tile/RadioTile.svelte +95 -0
  234. package/src/Tile/SelectableTile.svelte +95 -0
  235. package/src/Tile/Tile.svelte +18 -0
  236. package/src/Tile/TileGroup.svelte +66 -0
  237. package/src/Tile/index.js +6 -0
  238. package/src/TimePicker/TimePicker.svelte +115 -0
  239. package/src/TimePicker/TimePickerSelect.svelte +78 -0
  240. package/src/TimePicker/index.js +2 -0
  241. package/src/Toggle/Toggle.svelte +107 -0
  242. package/src/Toggle/ToggleSkeleton.svelte +51 -0
  243. package/src/Toggle/index.js +2 -0
  244. package/src/Tooltip/Tooltip.svelte +269 -0
  245. package/src/Tooltip/TooltipFooter.svelte +29 -0
  246. package/src/Tooltip/index.js +2 -0
  247. package/src/TooltipDefinition/TooltipDefinition.svelte +85 -0
  248. package/src/TooltipDefinition/index.js +1 -0
  249. package/src/TooltipIcon/TooltipIcon.svelte +83 -0
  250. package/src/TooltipIcon/index.js +1 -0
  251. package/src/TreeView/TreeView.svelte +266 -0
  252. package/src/TreeView/TreeViewNode.svelte +133 -0
  253. package/src/TreeView/TreeViewNodeList.svelte +179 -0
  254. package/src/TreeView/index.d.ts +1 -0
  255. package/src/TreeView/index.js +1 -0
  256. package/src/Truncate/Truncate.svelte +12 -0
  257. package/src/Truncate/index.js +2 -0
  258. package/src/Truncate/truncate.d.ts +12 -0
  259. package/src/Truncate/truncate.js +29 -0
  260. package/src/UIShell/Content.svelte +24 -0
  261. package/src/UIShell/HamburgerMenu.svelte +45 -0
  262. package/src/UIShell/Header.svelte +103 -0
  263. package/src/UIShell/HeaderAction.svelte +160 -0
  264. package/src/UIShell/HeaderActionLink.svelte +43 -0
  265. package/src/UIShell/HeaderGlobalAction.svelte +33 -0
  266. package/src/UIShell/HeaderNav.svelte +13 -0
  267. package/src/UIShell/HeaderNavItem.svelte +66 -0
  268. package/src/UIShell/HeaderNavMenu.svelte +106 -0
  269. package/src/UIShell/HeaderPanelDivider.svelte +22 -0
  270. package/src/UIShell/HeaderPanelLink.svelte +23 -0
  271. package/src/UIShell/HeaderPanelLinks.svelte +3 -0
  272. package/src/UIShell/HeaderSearch.svelte +338 -0
  273. package/src/UIShell/HeaderUtilities.svelte +3 -0
  274. package/src/UIShell/SideNav.svelte +84 -0
  275. package/src/UIShell/SideNavDivider.svelte +1 -0
  276. package/src/UIShell/SideNavItems.svelte +3 -0
  277. package/src/UIShell/SideNavLink.svelte +54 -0
  278. package/src/UIShell/SideNavMenu.svelte +59 -0
  279. package/src/UIShell/SideNavMenuItem.svelte +32 -0
  280. package/src/UIShell/SkipToContent.svelte +11 -0
  281. package/src/UIShell/index.js +20 -0
  282. package/src/UIShell/navStore.js +7 -0
  283. package/src/UnorderedList/UnorderedList.svelte +22 -0
  284. package/src/UnorderedList/index.js +1 -0
  285. package/src/icons/Add.svelte +28 -0
  286. package/src/icons/ArrowUp.svelte +28 -0
  287. package/src/icons/ArrowsVertical.svelte +28 -0
  288. package/src/icons/Calendar.svelte +28 -0
  289. package/src/icons/CaretDown.svelte +26 -0
  290. package/src/icons/CaretLeft.svelte +26 -0
  291. package/src/icons/CaretRight.svelte +26 -0
  292. package/src/icons/Checkmark.svelte +26 -0
  293. package/src/icons/CheckmarkFilled.svelte +32 -0
  294. package/src/icons/CheckmarkOutline.svelte +30 -0
  295. package/src/icons/ChevronDown.svelte +26 -0
  296. package/src/icons/ChevronRight.svelte +26 -0
  297. package/src/icons/CircleDash.svelte +28 -0
  298. package/src/icons/Close.svelte +28 -0
  299. package/src/icons/Copy.svelte +28 -0
  300. package/src/icons/EditOff.svelte +28 -0
  301. package/src/icons/ErrorFilled.svelte +33 -0
  302. package/src/icons/IconSearch.svelte +28 -0
  303. package/src/icons/Incomplete.svelte +28 -0
  304. package/src/icons/Information.svelte +30 -0
  305. package/src/icons/InformationFilled.svelte +32 -0
  306. package/src/icons/InformationSquareFilled.svelte +32 -0
  307. package/src/icons/Launch.svelte +30 -0
  308. package/src/icons/Menu.svelte +26 -0
  309. package/src/icons/OverflowMenuHorizontal.svelte +27 -0
  310. package/src/icons/OverflowMenuVertical.svelte +27 -0
  311. package/src/icons/Settings.svelte +30 -0
  312. package/src/icons/Subtract.svelte +26 -0
  313. package/src/icons/Switcher.svelte +28 -0
  314. package/src/icons/View.svelte +30 -0
  315. package/src/icons/ViewOff.svelte +30 -0
  316. package/src/icons/Warning.svelte +29 -0
  317. package/src/icons/WarningAltFilled.svelte +34 -0
  318. package/src/icons/WarningFilled.svelte +33 -0
  319. package/src/index.js +155 -0
  320. package/src/utils/toHierarchy.d.ts +21 -0
  321. package/src/utils/toHierarchy.js +49 -0
  322. package/tokens/maxcraft.css +84 -0
  323. package/types/Accordion/Accordion.svelte.d.ts +39 -0
  324. package/types/Accordion/AccordionItem.svelte.d.ts +48 -0
  325. package/types/Accordion/AccordionSkeleton.svelte.d.ts +45 -0
  326. package/types/AspectRatio/AspectRatio.svelte.d.ts +31 -0
  327. package/types/Breadcrumb/Breadcrumb.svelte.d.ts +27 -0
  328. package/types/Breadcrumb/BreadcrumbItem.svelte.d.ts +33 -0
  329. package/types/Breadcrumb/BreadcrumbSkeleton.svelte.d.ts +33 -0
  330. package/types/Breakpoint/Breakpoint.svelte.d.ts +30 -0
  331. package/types/Breakpoint/breakpointObserver.d.ts +28 -0
  332. package/types/Breakpoint/breakpoints.d.ts +11 -0
  333. package/types/Breakpoint/index.d.ts +4 -0
  334. package/types/Button/Button.svelte.d.ts +140 -0
  335. package/types/Button/ButtonSet.svelte.d.ts +22 -0
  336. package/types/Button/ButtonSkeleton.svelte.d.ts +35 -0
  337. package/types/Checkbox/Checkbox.svelte.d.ts +109 -0
  338. package/types/Checkbox/CheckboxSkeleton.svelte.d.ts +21 -0
  339. package/types/CodeSnippet/CodeSnippet.svelte.d.ts +140 -0
  340. package/types/CodeSnippet/CodeSnippetSkeleton.svelte.d.ts +27 -0
  341. package/types/ComboBox/ComboBox.svelte.d.ts +189 -0
  342. package/types/ComposedModal/ComposedModal.svelte.d.ts +69 -0
  343. package/types/ComposedModal/ModalBody.svelte.d.ts +28 -0
  344. package/types/ComposedModal/ModalFooter.svelte.d.ts +65 -0
  345. package/types/ComposedModal/ModalHeader.svelte.d.ts +58 -0
  346. package/types/ContentSwitcher/ContentSwitcher.svelte.d.ts +34 -0
  347. package/types/ContentSwitcher/Switch.svelte.d.ts +53 -0
  348. package/types/ContextMenu/ContextMenu.svelte.d.ts +53 -0
  349. package/types/ContextMenu/ContextMenuDivider.svelte.d.ts +9 -0
  350. package/types/ContextMenu/ContextMenuGroup.svelte.d.ts +20 -0
  351. package/types/ContextMenu/ContextMenuOption.svelte.d.ts +86 -0
  352. package/types/ContextMenu/ContextMenuRadioGroup.svelte.d.ts +21 -0
  353. package/types/CopyButton/CopyButton.svelte.d.ts +50 -0
  354. package/types/DataTable/DataTable.svelte.d.ts +238 -0
  355. package/types/DataTable/DataTableSkeleton.svelte.d.ts +67 -0
  356. package/types/DataTable/DataTableTypes.d.ts +18 -0
  357. package/types/DataTable/Table.svelte.d.ts +52 -0
  358. package/types/DataTable/TableBody.svelte.d.ts +16 -0
  359. package/types/DataTable/TableCell.svelte.d.ts +21 -0
  360. package/types/DataTable/TableContainer.svelte.d.ts +40 -0
  361. package/types/DataTable/TableHead.svelte.d.ts +21 -0
  362. package/types/DataTable/TableHeader.svelte.d.ts +57 -0
  363. package/types/DataTable/TableRow.svelte.d.ts +21 -0
  364. package/types/DataTable/Toolbar.svelte.d.ts +22 -0
  365. package/types/DataTable/ToolbarBatchActions.svelte.d.ts +28 -0
  366. package/types/DataTable/ToolbarContent.svelte.d.ts +9 -0
  367. package/types/DataTable/ToolbarMenu.svelte.d.ts +10 -0
  368. package/types/DataTable/ToolbarMenuItem.svelte.d.ts +10 -0
  369. package/types/DataTable/ToolbarSearch.svelte.d.ts +84 -0
  370. package/types/DatePicker/DatePicker.svelte.d.ts +105 -0
  371. package/types/DatePicker/DatePickerInput.svelte.d.ts +118 -0
  372. package/types/DatePicker/DatePickerSkeleton.svelte.d.ts +33 -0
  373. package/types/Dropdown/Dropdown.svelte.d.ts +160 -0
  374. package/types/Dropdown/DropdownSkeleton.svelte.d.ts +27 -0
  375. package/types/FileUploader/FileUploader.svelte.d.ts +104 -0
  376. package/types/FileUploader/FileUploaderButton.svelte.d.ts +98 -0
  377. package/types/FileUploader/FileUploaderDropContainer.svelte.d.ts +92 -0
  378. package/types/FileUploader/FileUploaderItem.svelte.d.ts +69 -0
  379. package/types/FileUploader/FileUploaderSkeleton.svelte.d.ts +21 -0
  380. package/types/FileUploader/Filename.svelte.d.ts +36 -0
  381. package/types/FluidForm/FluidForm.svelte.d.ts +23 -0
  382. package/types/Form/Form.svelte.d.ts +29 -0
  383. package/types/FormGroup/FormGroup.svelte.d.ts +57 -0
  384. package/types/FormItem/FormItem.svelte.d.ts +21 -0
  385. package/types/FormLabel/FormLabel.svelte.d.ts +27 -0
  386. package/types/Grid/Column.svelte.d.ts +92 -0
  387. package/types/Grid/Grid.svelte.d.ts +65 -0
  388. package/types/Grid/Row.svelte.d.ts +59 -0
  389. package/types/ImageLoader/ImageLoader.svelte.d.ts +64 -0
  390. package/types/InlineLoading/InlineLoading.svelte.d.ts +47 -0
  391. package/types/Link/Link.svelte.d.ts +64 -0
  392. package/types/Link/OutboundLink.svelte.d.ts +15 -0
  393. package/types/ListBox/ListBox.svelte.d.ts +70 -0
  394. package/types/ListBox/ListBoxField.svelte.d.ts +67 -0
  395. package/types/ListBox/ListBoxMenu.svelte.d.ts +28 -0
  396. package/types/ListBox/ListBoxMenuIcon.svelte.d.ts +35 -0
  397. package/types/ListBox/ListBoxMenuItem.svelte.d.ts +38 -0
  398. package/types/ListBox/ListBoxSelection.svelte.d.ts +47 -0
  399. package/types/ListItem/ListItem.svelte.d.ts +21 -0
  400. package/types/Loading/Loading.svelte.d.ts +40 -0
  401. package/types/LocalStorage/LocalStorage.svelte.d.ts +34 -0
  402. package/types/Modal/Modal.svelte.d.ts +156 -0
  403. package/types/MultiSelect/MultiSelect.svelte.d.ts +264 -0
  404. package/types/Notification/InlineNotification.svelte.d.ts +82 -0
  405. package/types/Notification/NotificationActionButton.svelte.d.ts +15 -0
  406. package/types/Notification/NotificationButton.svelte.d.ts +45 -0
  407. package/types/Notification/NotificationIcon.svelte.d.ts +33 -0
  408. package/types/Notification/ToastNotification.svelte.d.ts +95 -0
  409. package/types/NumberInput/NumberInput.svelte.d.ts +168 -0
  410. package/types/NumberInput/NumberInputSkeleton.svelte.d.ts +27 -0
  411. package/types/OrderedList/OrderedList.svelte.d.ts +39 -0
  412. package/types/OverflowMenu/OverflowMenu.svelte.d.ts +96 -0
  413. package/types/OverflowMenu/OverflowMenuItem.svelte.d.ts +71 -0
  414. package/types/Pagination/Pagination.svelte.d.ts +129 -0
  415. package/types/Pagination/PaginationSkeleton.svelte.d.ts +21 -0
  416. package/types/PaginationNav/PaginationNav.svelte.d.ts +63 -0
  417. package/types/Popover/Popover.svelte.d.ts +70 -0
  418. package/types/ProgressBar/ProgressBar.svelte.d.ts +70 -0
  419. package/types/ProgressIndicator/ProgressIndicator.svelte.d.ts +46 -0
  420. package/types/ProgressIndicator/ProgressIndicatorSkeleton.svelte.d.ts +34 -0
  421. package/types/ProgressIndicator/ProgressStep.svelte.d.ts +70 -0
  422. package/types/RadioButton/RadioButton.svelte.d.ts +80 -0
  423. package/types/RadioButton/RadioButtonSkeleton.svelte.d.ts +21 -0
  424. package/types/RadioButtonGroup/RadioButtonGroup.svelte.d.ts +76 -0
  425. package/types/RecursiveList/RecursiveList.svelte.d.ts +34 -0
  426. package/types/Search/Search.svelte.d.ts +128 -0
  427. package/types/Search/SearchSkeleton.svelte.d.ts +27 -0
  428. package/types/Select/Select.svelte.d.ts +124 -0
  429. package/types/Select/SelectItem.svelte.d.ts +46 -0
  430. package/types/Select/SelectItemGroup.svelte.d.ts +28 -0
  431. package/types/Select/SelectSkeleton.svelte.d.ts +27 -0
  432. package/types/SkeletonPlaceholder/SkeletonPlaceholder.svelte.d.ts +21 -0
  433. package/types/SkeletonText/SkeletonText.svelte.d.ts +45 -0
  434. package/types/Slider/Slider.svelte.d.ts +139 -0
  435. package/types/Slider/SliderSkeleton.svelte.d.ts +27 -0
  436. package/types/StructuredList/StructuredList.svelte.d.ts +46 -0
  437. package/types/StructuredList/StructuredListBody.svelte.d.ts +21 -0
  438. package/types/StructuredList/StructuredListCell.svelte.d.ts +33 -0
  439. package/types/StructuredList/StructuredListHead.svelte.d.ts +21 -0
  440. package/types/StructuredList/StructuredListInput.svelte.d.ts +52 -0
  441. package/types/StructuredList/StructuredListRow.svelte.d.ts +40 -0
  442. package/types/StructuredList/StructuredListSkeleton.svelte.d.ts +28 -0
  443. package/types/Tabs/Tab.svelte.d.ts +58 -0
  444. package/types/Tabs/TabContent.svelte.d.ts +22 -0
  445. package/types/Tabs/Tabs.svelte.d.ts +50 -0
  446. package/types/Tabs/TabsSkeleton.svelte.d.ts +33 -0
  447. package/types/Tag/Tag.svelte.d.ts +87 -0
  448. package/types/Tag/TagSkeleton.svelte.d.ts +26 -0
  449. package/types/TextArea/TextArea.svelte.d.ts +124 -0
  450. package/types/TextArea/TextAreaSkeleton.svelte.d.ts +27 -0
  451. package/types/TextInput/PasswordInput.svelte.d.ts +154 -0
  452. package/types/TextInput/TextInput.svelte.d.ts +139 -0
  453. package/types/TextInput/TextInputSkeleton.svelte.d.ts +27 -0
  454. package/types/Theme/Theme.svelte.d.ts +58 -0
  455. package/types/Tile/ClickableTile.svelte.d.ts +46 -0
  456. package/types/Tile/ExpandableTile.svelte.d.ts +88 -0
  457. package/types/Tile/RadioTile.svelte.d.ts +77 -0
  458. package/types/Tile/SelectableTile.svelte.d.ts +84 -0
  459. package/types/Tile/Tile.svelte.d.ts +27 -0
  460. package/types/Tile/TileGroup.svelte.d.ts +46 -0
  461. package/types/TimePicker/TimePicker.svelte.d.ts +112 -0
  462. package/types/TimePicker/TimePickerSelect.svelte.d.ts +63 -0
  463. package/types/Toggle/Toggle.svelte.d.ts +80 -0
  464. package/types/Toggle/ToggleSkeleton.svelte.d.ts +39 -0
  465. package/types/Tooltip/Tooltip.svelte.d.ts +106 -0
  466. package/types/Tooltip/TooltipFooter.svelte.d.ts +15 -0
  467. package/types/TooltipDefinition/TooltipDefinition.svelte.d.ts +60 -0
  468. package/types/TooltipIcon/TooltipIcon.svelte.d.ts +65 -0
  469. package/types/TreeView/TreeView.svelte.d.ts +114 -0
  470. package/types/TreeView/index.d.ts +1 -0
  471. package/types/Truncate/Truncate.svelte.d.ts +21 -0
  472. package/types/Truncate/truncate.d.ts +12 -0
  473. package/types/UIShell/Content.svelte.d.ts +22 -0
  474. package/types/UIShell/Header.svelte.d.ts +93 -0
  475. package/types/UIShell/HeaderAction.svelte.d.ts +80 -0
  476. package/types/UIShell/HeaderActionLink.svelte.d.ts +40 -0
  477. package/types/UIShell/HeaderGlobalAction.svelte.d.ts +28 -0
  478. package/types/UIShell/HeaderNav.svelte.d.ts +16 -0
  479. package/types/UIShell/HeaderNavItem.svelte.d.ts +49 -0
  480. package/types/UIShell/HeaderNavMenu.svelte.d.ts +49 -0
  481. package/types/UIShell/HeaderPanelDivider.svelte.d.ts +9 -0
  482. package/types/UIShell/HeaderPanelLink.svelte.d.ts +28 -0
  483. package/types/UIShell/HeaderPanelLinks.svelte.d.ts +9 -0
  484. package/types/UIShell/HeaderSearch.svelte.d.ts +67 -0
  485. package/types/UIShell/HeaderUtilities.svelte.d.ts +9 -0
  486. package/types/UIShell/SideNav.svelte.d.ts +56 -0
  487. package/types/UIShell/SideNavDivider.svelte.d.ts +16 -0
  488. package/types/UIShell/SideNavItems.svelte.d.ts +9 -0
  489. package/types/UIShell/SideNavLink.svelte.d.ts +46 -0
  490. package/types/UIShell/SideNavMenu.svelte.d.ts +40 -0
  491. package/types/UIShell/SideNavMenuItem.svelte.d.ts +40 -0
  492. package/types/UIShell/SkipToContent.svelte.d.ts +28 -0
  493. package/types/UnorderedList/UnorderedList.svelte.d.ts +33 -0
  494. package/types/index.d.ts +169 -0
  495. package/types/utils/toHierarchy.d.ts +21 -0
@@ -0,0 +1,95 @@
1
+ <script>
2
+ /**
3
+ * @event {string} "select"
4
+ * @event {string} "deselect"
5
+ */
6
+
7
+ /** Set to `true` to select the tile */
8
+ export let selected = false;
9
+
10
+ /** Set to `true` to enable the light variant */
11
+ export let light = false;
12
+
13
+ /** Set to `true` to disable the tile */
14
+ export let disabled = false;
15
+
16
+ /** Specify the title of the selectable tile */
17
+ export let title = "title";
18
+
19
+ /** Specify the value of the selectable tile */
20
+ export let value = "value";
21
+
22
+ /** Specify the tabindex */
23
+ export let tabindex = "0";
24
+
25
+ /** Specify the ARIA label for the selectable tile checkmark icon */
26
+ export let iconDescription = "Tile checkmark";
27
+
28
+ /** Set an id for the input element */
29
+ export let id = "ccs-" + Math.random().toString(36);
30
+
31
+ /**
32
+ * Specify a name attribute for the input
33
+ * @type {string}
34
+ */
35
+ export let name = "";
36
+
37
+ /** Obtain a reference to the input HTML element */
38
+ export let ref = null;
39
+
40
+ import { createEventDispatcher } from "svelte";
41
+ import CheckmarkFilled from "../icons/CheckmarkFilled.svelte";
42
+
43
+ const dispatch = createEventDispatcher();
44
+
45
+ $: if (!disabled) dispatch(selected ? "select" : "deselect", id);
46
+ </script>
47
+
48
+ <input
49
+ bind:this={ref}
50
+ type="checkbox"
51
+ tabindex="-1"
52
+ class:bx--tile-input={true}
53
+ checked={selected}
54
+ {id}
55
+ {value}
56
+ {name}
57
+ {title}
58
+ {disabled}
59
+ />
60
+ <!-- svelte-ignore a11y-mouse-events-have-key-events -->
61
+ <!-- svelte-ignore a11y-no-noninteractive-tabindex -->
62
+ <!-- svelte-ignore a11y-no-noninteractive-element-interactions -->
63
+ <label
64
+ for={id}
65
+ tabindex={disabled ? undefined : tabindex}
66
+ class:bx--tile={true}
67
+ class:bx--tile--selectable={true}
68
+ class:bx--tile--is-selected={selected}
69
+ class:bx--tile--light={light}
70
+ class:bx--tile--disabled={disabled}
71
+ {...$$restProps}
72
+ on:click
73
+ on:click|preventDefault={() => {
74
+ if (disabled) return;
75
+ selected = !selected;
76
+ }}
77
+ on:mouseover
78
+ on:mouseenter
79
+ on:mouseleave
80
+ on:keydown
81
+ on:keydown={(e) => {
82
+ if (disabled) return;
83
+ if (e.key === " " || e.key === "Enter") {
84
+ e.preventDefault();
85
+ selected = !selected;
86
+ }
87
+ }}
88
+ >
89
+ <span class:bx--tile__checkmark={true}>
90
+ <CheckmarkFilled aria-label={iconDescription} title={iconDescription} />
91
+ </span>
92
+ <span class:bx--tile-content={true}>
93
+ <slot />
94
+ </span>
95
+ </label>
@@ -0,0 +1,18 @@
1
+ <script>
2
+ /** Set to `true` to enable the light variant */
3
+ export let light = false;
4
+ </script>
5
+
6
+ <!-- svelte-ignore a11y-mouse-events-have-key-events -->
7
+ <!-- svelte-ignore a11y-no-static-element-interactions -->
8
+ <div
9
+ class:bx--tile={true}
10
+ class:bx--tile--light={light}
11
+ {...$$restProps}
12
+ on:click
13
+ on:mouseover
14
+ on:mouseenter
15
+ on:mouseleave
16
+ >
17
+ <slot />
18
+ </div>
@@ -0,0 +1,66 @@
1
+ <script>
2
+ /**
3
+ * @event {string} select
4
+ */
5
+
6
+ /**
7
+ * Specify the selected tile value
8
+ * @type {string}
9
+ */
10
+ export let selected = undefined;
11
+
12
+ /** Set to `true` to disable the tile group */
13
+ export let disabled = false;
14
+
15
+ /**
16
+ * Set to `true` to require the selection of a radio button
17
+ * @type {boolean}
18
+ */
19
+ export let required = undefined;
20
+
21
+ /**
22
+ * Specify a name attribute for the radio button inputs
23
+ * @type {string}
24
+ */
25
+ export let name = undefined;
26
+
27
+ /** Specify the legend text */
28
+ export let legend = "";
29
+
30
+ import { createEventDispatcher, setContext } from "svelte";
31
+ import { writable, readonly } from "svelte/store";
32
+
33
+ const dispatch = createEventDispatcher();
34
+ const selectedValue = writable(selected);
35
+ const groupName = writable(name);
36
+ const groupRequired = writable(required);
37
+
38
+ setContext("TileGroup", {
39
+ selectedValue,
40
+ groupName: readonly(groupName),
41
+ groupRequired: readonly(groupRequired),
42
+ add: ({ checked, value }) => {
43
+ if (checked) {
44
+ selectedValue.set(value);
45
+ }
46
+ },
47
+ update: (value) => {
48
+ selectedValue.set(value);
49
+ dispatch("select", value);
50
+ },
51
+ });
52
+
53
+ $: selected = $selectedValue;
54
+ $: selectedValue.set(selected);
55
+ $: $groupName = name;
56
+ $: $groupRequired = required;
57
+ </script>
58
+
59
+ <fieldset {disabled} class:bx--tile-group={true} {...$$restProps}>
60
+ {#if legend}
61
+ <legend class:bx--label={true}>{legend}</legend>
62
+ {/if}
63
+ <div>
64
+ <slot />
65
+ </div>
66
+ </fieldset>
@@ -0,0 +1,6 @@
1
+ export { default as Tile } from "./Tile.svelte";
2
+ export { default as ClickableTile } from "./ClickableTile.svelte";
3
+ export { default as ExpandableTile } from "./ExpandableTile.svelte";
4
+ export { default as SelectableTile } from "./SelectableTile.svelte";
5
+ export { default as RadioTile } from "./RadioTile.svelte";
6
+ export { default as TileGroup } from "./TileGroup.svelte";
@@ -0,0 +1,115 @@
1
+ <script>
2
+ /**
3
+ * Specify the size of the input
4
+ * @type {"sm" | "xl"}
5
+ */
6
+ export let size = undefined;
7
+
8
+ /**
9
+ * Specify the input value
10
+ * @type {string}
11
+ */
12
+ export let value = "";
13
+
14
+ /** Specify the input placeholder text */
15
+ export let placeholder = "hh:mm";
16
+
17
+ /** Specify the `pattern` attribute for the input element */
18
+ export let pattern = "(1[012]|[1-9]):[0-5][0-9](\\s)?";
19
+
20
+ /** Specify the `maxlength` input attribute */
21
+ export let maxlength = 5;
22
+
23
+ /** Set to `true` to enable the light variant */
24
+ export let light = false;
25
+
26
+ /** Set to `true` to disable the input */
27
+ export let disabled = false;
28
+
29
+ /** Specify the label text */
30
+ export let labelText = "";
31
+
32
+ /** Set to `true` to visually hide the label text */
33
+ export let hideLabel = false;
34
+
35
+ /** Set to `true` to indicate an invalid state */
36
+ export let invalid = false;
37
+
38
+ /** Specify the invalid state text */
39
+ export let invalidText = "";
40
+
41
+ /** Set an id for the input element */
42
+ export let id = "ccs-" + Math.random().toString(36);
43
+
44
+ /**
45
+ * Specify a name attribute for the input
46
+ * @type {string}
47
+ */
48
+ export let name = undefined;
49
+
50
+ /** Obtain a reference to the input HTML element */
51
+ export let ref = null;
52
+ </script>
53
+
54
+ <!-- svelte-ignore a11y-mouse-events-have-key-events -->
55
+ <!-- svelte-ignore a11y-click-events-have-key-events -->
56
+ <!-- svelte-ignore a11y-no-static-element-interactions -->
57
+ <div
58
+ class:bx--form-item={true}
59
+ on:click
60
+ on:mouseover
61
+ on:mouseenter
62
+ on:mouseleave
63
+ >
64
+ <div
65
+ class:bx--time-picker={true}
66
+ class:bx--time-picker--light={light}
67
+ class:bx--time-picker--invalid={invalid}
68
+ class:bx--time-picker--sm={size === "sm"}
69
+ class:bx--time-picker--xl={size === "xl"}
70
+ class:bx--select--light={light}
71
+ >
72
+ <div class:bx--time-picker__input={true}>
73
+ {#if labelText || $$slots.labelText}
74
+ <label
75
+ for={id}
76
+ class:bx--label={true}
77
+ class:bx--visually-hidden={hideLabel}
78
+ class:bx--label--disabled={disabled}
79
+ >
80
+ <slot name="labelText">
81
+ {labelText}
82
+ </slot>
83
+ </label>
84
+ {/if}
85
+ <input
86
+ bind:this={ref}
87
+ bind:value
88
+ type="text"
89
+ data-invalid={invalid || undefined}
90
+ {pattern}
91
+ {placeholder}
92
+ {maxlength}
93
+ {id}
94
+ {name}
95
+ {disabled}
96
+ {...$$restProps}
97
+ class:bx--time-picker__input-field={true}
98
+ class:bx--text-input={true}
99
+ class:bx--text-input--light={light}
100
+ class:bx--text-input--invalid={invalid}
101
+ on:change
102
+ on:input
103
+ on:keydown
104
+ on:keyup
105
+ on:focus
106
+ on:blur
107
+ on:paste
108
+ />
109
+ </div>
110
+ <slot />
111
+ </div>
112
+ {#if invalid}
113
+ <div class:bx--form-requirement={true}>{invalidText}</div>
114
+ {/if}
115
+ </div>
@@ -0,0 +1,78 @@
1
+ <script>
2
+ /**
3
+ * Specify the select value
4
+ * @type {number | string}
5
+ */
6
+ export let value = "";
7
+
8
+ /** Set to `true` to disable the select */
9
+ export let disabled = false;
10
+
11
+ /** Specify the ARIA label for the chevron icon */
12
+ export let iconDescription = "Open list of options";
13
+
14
+ /** Specify the label text */
15
+ export let labelText = "";
16
+
17
+ /** Set an id for the select element */
18
+ export let id = "ccs-" + Math.random().toString(36);
19
+
20
+ /**
21
+ * Specify a name attribute for the select element
22
+ * @type {string}
23
+ */
24
+ export let name = undefined;
25
+
26
+ /** Obtain a reference to the select HTML element */
27
+ export let ref = null;
28
+
29
+ import { setContext } from "svelte";
30
+ import { writable } from "svelte/store";
31
+ import ChevronDown from "../icons/ChevronDown.svelte";
32
+
33
+ const selectedValue = writable(value);
34
+
35
+ setContext("TimePickerSelect", { selectedValue });
36
+
37
+ $: selectedValue.set(value);
38
+ $: value = $selectedValue;
39
+ </script>
40
+
41
+ <!-- svelte-ignore a11y-mouse-events-have-key-events -->
42
+ <!-- svelte-ignore a11y-no-static-element-interactions -->
43
+ <div
44
+ class:bx--select={true}
45
+ class:bx--time-picker__select={true}
46
+ {...$$restProps}
47
+ on:click
48
+ on:mouseover
49
+ on:mouseenter
50
+ on:mouseleave
51
+ >
52
+ {#if labelText || $$slots.labelText}
53
+ <label for={id} class:bx--label={true} class:bx--visually-hidden={true}>
54
+ <slot name="labelText">
55
+ {labelText}
56
+ </slot>
57
+ </label>
58
+ {/if}
59
+ <!-- svelte-ignore a11y-no-onchange -->
60
+ <select
61
+ bind:this={ref}
62
+ {id}
63
+ {name}
64
+ {disabled}
65
+ {value}
66
+ class:bx--select-input={true}
67
+ on:change={({ target }) => {
68
+ selectedValue.set(target.value);
69
+ }}
70
+ >
71
+ <slot />
72
+ </select>
73
+ <ChevronDown
74
+ aria-label={iconDescription}
75
+ title={iconDescription}
76
+ class="bx--select__arrow"
77
+ />
78
+ </div>
@@ -0,0 +1,2 @@
1
+ export { default as TimePicker } from "./TimePicker.svelte";
2
+ export { default as TimePickerSelect } from "./TimePickerSelect.svelte";
@@ -0,0 +1,107 @@
1
+ <script>
2
+ /**
3
+ * @event {{ toggled: boolean; }} toggle
4
+ */
5
+
6
+ /**
7
+ * Specify the toggle size
8
+ * @type {"default" | "sm"}
9
+ */
10
+ export let size = "default";
11
+
12
+ /** Set to `true` to toggle the checkbox input */
13
+ export let toggled = false;
14
+
15
+ /** Set to `true` to disable checkbox input */
16
+ export let disabled = false;
17
+
18
+ /** Specify the label for the untoggled state */
19
+ export let labelA = "Off";
20
+
21
+ /** Specify the label for the toggled state */
22
+ export let labelB = "On";
23
+
24
+ /** Specify the label text */
25
+ export let labelText = "";
26
+
27
+ /** Set to `true` to visually hide the label text */
28
+ export let hideLabel = false;
29
+
30
+ /** Set an id for the input element */
31
+ export let id = "ccs-" + Math.random().toString(36);
32
+
33
+ /**
34
+ * Specify a name attribute for the checkbox input
35
+ * @type {string}
36
+ */
37
+ export let name = undefined;
38
+
39
+ import { createEventDispatcher } from "svelte";
40
+
41
+ const dispatch = createEventDispatcher();
42
+
43
+ $: dispatch("toggle", { toggled });
44
+ </script>
45
+
46
+ <!-- svelte-ignore a11y-mouse-events-have-key-events -->
47
+ <!-- svelte-ignore a11y-no-static-element-interactions -->
48
+ <div
49
+ class:bx--form-item={true}
50
+ style:user-select="none"
51
+ {...$$restProps}
52
+ on:click
53
+ on:mouseover
54
+ on:mouseenter
55
+ on:mouseleave
56
+ >
57
+ <!-- svelte-ignore a11y-role-has-required-aria-props -->
58
+ <input
59
+ role="switch"
60
+ type="checkbox"
61
+ class:bx--toggle-input={true}
62
+ class:bx--toggle-input--small={size === "sm"}
63
+ checked={toggled}
64
+ on:change={() => {
65
+ toggled = !toggled;
66
+ }}
67
+ on:change
68
+ on:keyup={(e) => {
69
+ if (e.key === " " || e.key === "Enter") {
70
+ e.preventDefault();
71
+ toggled = !toggled;
72
+ }
73
+ }}
74
+ on:keyup
75
+ on:focus
76
+ on:blur
77
+ {disabled}
78
+ {id}
79
+ {name}
80
+ />
81
+ <label
82
+ aria-label={labelText ? undefined : $$props["aria-label"] || "Toggle"}
83
+ for={id}
84
+ class:bx--toggle-input__label={true}
85
+ >
86
+ <span class:bx--visually-hidden={hideLabel}>
87
+ <slot name="labelText">
88
+ {labelText}
89
+ </slot>
90
+ </span>
91
+ <span
92
+ class:bx--toggle__switch={true}
93
+ style:margin-top={hideLabel ? 0 : undefined}
94
+ >
95
+ <span aria-hidden="true" class:bx--toggle__text--off={true}>
96
+ <slot name="labelA">
97
+ {labelA}
98
+ </slot>
99
+ </span>
100
+ <span aria-hidden="true" class:bx--toggle__text--on={true}>
101
+ <slot name="labelB">
102
+ {labelB}
103
+ </slot>
104
+ </span>
105
+ </span>
106
+ </label>
107
+ </div>
@@ -0,0 +1,51 @@
1
+ <script>
2
+ /**
3
+ * Specify the toggle size
4
+ * @type {"default" | "sm"}
5
+ */
6
+ export let size = "default";
7
+
8
+ /** Specify the label text */
9
+ export let labelText = "";
10
+
11
+ /** Set an id for the input element */
12
+ export let id = "ccs-" + Math.random().toString(36);
13
+ </script>
14
+
15
+ <!-- svelte-ignore a11y-mouse-events-have-key-events -->
16
+ <!-- svelte-ignore a11y-no-static-element-interactions -->
17
+ <div
18
+ class:bx--form-item={true}
19
+ {...$$restProps}
20
+ on:click
21
+ on:mouseover
22
+ on:mouseenter
23
+ on:mouseleave
24
+ >
25
+ <input
26
+ type="checkbox"
27
+ {id}
28
+ class:bx--toggle={true}
29
+ class:bx--toggle--small={size === "sm"}
30
+ class:bx--skeleton={true}
31
+ />
32
+ <label
33
+ aria-label={labelText
34
+ ? undefined
35
+ : $$props["aria-label"] || "Toggle is loading"}
36
+ for={id}
37
+ class:bx--toggle__label={true}
38
+ class:bx--skeleton={true}
39
+ >
40
+ {#if labelText || $$slots.labelText}
41
+ <span class:bx--toggle__label-text={true}>
42
+ <slot name="labelText">
43
+ {labelText}
44
+ </slot>
45
+ </span>
46
+ {/if}
47
+ <span class:bx--toggle__text--left={true}></span>
48
+ <span class:bx--toggle__appearance={true}></span>
49
+ <span class:bx--toggle__text--right={true}></span>
50
+ </label>
51
+ </div>
@@ -0,0 +1,2 @@
1
+ export { default as Toggle } from "./Toggle.svelte";
2
+ export { default as ToggleSkeleton } from "./ToggleSkeleton.svelte";