diff --git a/COMPONENT_INDEX.md b/COMPONENT_INDEX.md index a931eb43..07454755 100644 --- a/COMPONENT_INDEX.md +++ b/COMPONENT_INDEX.md @@ -336,13 +336,13 @@ None. | Prop name | Kind | Reactive | Type | Default value | Description | | :--------------- | :--------------- | :------- | :---------------------------------------------------------------------------------------------------------------------------------------- | ---------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | ref | let | Yes | null | HTMLAnchorElement | HTMLButtonElement | null | Obtain a reference to the HTML element | +| hasIconOnly | let | Yes | boolean | false | Set to `true` for the icon-only variant | | kind | let | No | "primary" | "secondary" | "tertiary" | "ghost" | "danger" | "danger-tertiary" | "danger-ghost" | "primary" | Specify the kind of button | | size | let | No | "default" | "field" | "small" | "default" | Specify the size of button | -| hasIconOnly | let | No | boolean | false | Set to `true` for the icon-only variant | | icon | let | No | typeof import("carbon-icons-svelte").CarbonIcon | -- | Specify the icon from `carbon-icons-svelte` to render | | iconDescription | let | No | string | -- | Specify the ARIA label for the button icon | -| tooltipAlignment | let | No | "start" | "center" | "end" | -- | Set the alignment of the tooltip relative to the icon
`hasIconOnly` must be set to `true` | -| tooltipPosition | let | No | "top" | "right" | "bottom" | "left" | -- | Set the position of the tooltip relative to the icon | +| tooltipAlignment | let | No | "start" | "center" | "end" | "center" | Set the alignment of the tooltip relative to the icon
`hasIconOnly` must be set to `true` | +| tooltipPosition | let | No | "top" | "right" | "bottom" | "left" | "bottom" | Set the position of the tooltip relative to the icon | | as | let | No | boolean | false | Set to `true` to render a custom HTML element
Props are destructured as `props` in the default slot (e.g., <Button let:props><div {...props}>...</div></Button>) | | skeleton | let | No | boolean | false | Set to `true` to display the skeleton state | | disabled | let | No | boolean | false | Set to `true` to disable the button | @@ -496,6 +496,7 @@ None. | type | let | No | "single" | "inline" | "multi" | "single" | Set the type of code snippet | | code | let | No | string | -- | Set the code snippet text
Alternatively, use the default slot (e.g., <CodeSnippet>{`code`}</CodeSnippet>) | | hideCopyButton | let | No | boolean | false | Set to `true` to hide the copy button | +| disabled | let | No | boolean | false | Set to `true` for the disabled variant
Only applies to the "single", "multi" types | | wrapText | let | No | boolean | false | Set to `true` to wrap the text
Note that `type` must be "multi" | | light | let | No | boolean | false | Set to `true` to enable the light variant | | skeleton | let | No | boolean | false | Set to `true` to display the skeleton state | @@ -982,6 +983,8 @@ export interface DropdownItem { | titleText | let | No | string | "" | Specify the title text | | invalid | let | No | boolean | false | Set to `true` to indicate an invalid state | | invalidText | let | No | string | "" | Specify the invalid state text | +| warn | let | No | boolean | false | Set to `true` to indicate an warning state | +| warnText | let | No | string | "" | Specify the warning state text | | helperText | let | No | string | "" | Specify the helper text | | label | let | No | string | -- | Specify the list box label | | translateWithId | let | No | (id: any) => string | -- | Override the default translation ids | @@ -1023,17 +1026,19 @@ None. ### Props -| Prop name | Kind | Reactive | Type | Default value | Description | -| :-------------------- | :--------------- | :------- | :-------------------------------------- | ------------------------------------------------ | ----------------------------------------------------- | -| ref | let | Yes | null | HTMLDivElement | null | Obtain a reference to the top-level element | -| tilePadding | let | Yes | number | 0 | Specify the padding of the tile (number of pixels) | -| tileMaxHeight | let | Yes | number | 0 | Specify the max height of the tile (number of pixels) | -| expanded | let | Yes | boolean | false | Set to `true` to expand the tile | -| light | let | No | boolean | false | Set to `true` to enable the light variant | -| tileCollapsedIconText | let | No | string | "Interact to expand Tile" | Specify the icon text of the collapsed tile | -| tileExpandedIconText | let | No | string | "Interact to collapse Tile" | Specify the icon text of the expanded tile | -| tabindex | let | No | string | "0" | Specify the tabindex | -| id | let | No | string | "ccs-" + Math.random().toString(36) | Set an id for the top-level div element | +| Prop name | Kind | Reactive | Type | Default value | Description | +| :-------------------- | :--------------- | :------- | :----------------------------------------- | ------------------------------------------------ | ----------------------------------------------------- | +| ref | let | Yes | null | HTMLButtonElement | null | Obtain a reference to the top-level element | +| tilePadding | let | Yes | number | 0 | Specify the padding of the tile (number of pixels) | +| tileMaxHeight | let | Yes | number | 0 | Specify the max height of the tile (number of pixels) | +| expanded | let | Yes | boolean | false | Set to `true` to expand the tile | +| light | let | No | boolean | false | Set to `true` to enable the light variant | +| tileCollapsedIconText | let | No | string | "Interact to expand Tile" | Specify the icon text of the collapsed tile | +| tileExpandedIconText | let | No | string | "Interact to collapse Tile" | Specify the icon text of the expanded tile | +| tileExpandedLabel | let | No | string | "" | Specify the icon label of the expanded tile | +| tileCollapsedLabel | let | No | string | "" | Specify the icon label of the collapsed tile | +| tabindex | let | No | string | "0" | Specify the tabindex | +| id | let | No | string | "ccs-" + Math.random().toString(36) | Set an id for the top-level div element | ### Slots @@ -1231,7 +1236,9 @@ None. ### Events -None. +| Event name | Type | Detail | +| :--------- | :-------- | :----- | +| submit | forwarded | -- | ## `Form` @@ -1735,17 +1742,16 @@ None. ### Props -| Prop name | Kind | Reactive | Type | Default value | Description | -| :--------------- | :--------------- | :------- | :------------------------------------------------------------------------------------------------------------- | ---------------------------------- | ----------------------------------------------------------------------- | -| notificationType | let | No | "toast" | "inline" | "inline" | Set the type of notification | -| kind | let | No | "error" | "info" | "info-square" | "success" | "warning" | "warning-alt" | "error" | Specify the kind of notification | -| lowContrast | let | No | boolean | false | Set to `true` to use the low contrast variant | -| timeout | let | No | number | 0 | Set the timeout duration (ms) to hide the notification after opening it | -| role | let | No | string | "alert" | Set the `role` attribute | -| title | let | No | string | "Title" | Specify the title text | -| subtitle | let | No | string | "" | Specify the subtitle text | -| hideCloseButton | let | No | boolean | false | Set to `true` to hide the close button | -| iconDescription | let | No | string | "Closes notification" | Specify the ARIA label for the icon | +| Prop name | Kind | Reactive | Type | Default value | Description | +| :-------------- | :--------------- | :------- | :------------------------------------------------------------------------------------------------------------- | ---------------------------------- | ----------------------------------------------------------------------- | +| kind | let | No | "error" | "info" | "info-square" | "success" | "warning" | "warning-alt" | "error" | Specify the kind of notification | +| lowContrast | let | No | boolean | false | Set to `true` to use the low contrast variant | +| timeout | let | No | number | 0 | Set the timeout duration (ms) to hide the notification after opening it | +| role | let | No | string | "alert" | Set the `role` attribute | +| title | let | No | string | "Title" | Specify the title text | +| subtitle | let | No | string | "" | Specify the subtitle text | +| hideCloseButton | let | No | boolean | false | Set to `true` to hide the close button | +| iconDescription | let | No | string | "Closes notification" | Specify the ARIA label for the icon | ### Slots @@ -1756,13 +1762,13 @@ None. ### Events -| Event name | Type | Detail | -| :--------- | :--------- | :----- | -| click | forwarded | -- | -| mouseover | forwarded | -- | -| mouseenter | forwarded | -- | -| mouseleave | forwarded | -- | -| close | dispatched | -- | +| Event name | Type | Detail | +| :--------- | :--------- | :-------------------------------- | +| close | dispatched | { timeout: boolean } | +| click | forwarded | -- | +| mouseover | forwarded | -- | +| mouseenter | forwarded | -- | +| mouseleave | forwarded | -- | ## `Link` @@ -1805,6 +1811,8 @@ None. | disabled | let | No | boolean | false | Set to `true` to disable the list box | | invalid | let | No | boolean | false | Set to `true` to indicate an invalid state | | invalidText | let | No | string | "" | Specify the invalid state text | +| warn | let | No | boolean | false | Set to `true` to indicate an warning state | +| warnText | let | No | string | "" | Specify the warning state text | ### Slots @@ -2150,6 +2158,8 @@ export interface MultiSelectItem { | useTitleInItem | let | No | boolean | false | Set to `true` to pass the item to `itemToString` in the checkbox | | invalid | let | No | boolean | false | Set to `true` to indicate an invalid state | | invalidText | let | No | string | "" | Specify the invalid state text | +| warn | let | No | boolean | false | Set to `true` to indicate an warning state | +| warnText | let | No | string | "" | Specify the warning state text | | helperText | let | No | string | "" | Specify the helper text | | label | let | No | string | "" | Specify the list box label | | id | let | No | string | "ccs-" + Math.random().toString(36) | Set an id for the list box component | @@ -2279,6 +2289,8 @@ export type NumberInputTranslationId = "increment" | "decrement"; | iconDescription | let | No | string | "" | Specify the ARIA label for the increment icons | | invalid | let | No | boolean | false | Set to `true` to indicate an invalid state | | invalidText | let | No | string | "" | Specify the invalid state text | +| warn | let | No | boolean | false | Set to `true` to indicate an warning state | +| warnText | let | No | string | "" | Specify the warning state text | | helperText | let | No | string | "" | Specify the helper text | | label | let | No | string | "" | Specify the label text | | hideLabel | let | No | boolean | false | Set to `true` to visually hide the label text | @@ -2505,8 +2517,8 @@ None. | placeholder | let | No | string | "" | Specify the placeholder text | | hidePasswordLabel | let | No | string | "Hide password" | Specify the hide password label text | | showPasswordLabel | let | No | string | "Show password" | Specify the show password label text | -| tooltipAlignment | let | No | "start" | "center" | "end" | -- | Set the alignment of the tooltip relative to the icon | -| tooltipPosition | let | No | "top" | "right" | "bottom" | "left" | -- | Set the position of the tooltip relative to the icon | +| tooltipAlignment | let | No | "start" | "center" | "end" | "center" | Set the alignment of the tooltip relative to the icon | +| tooltipPosition | let | No | "top" | "right" | "bottom" | "left" | "bottom" | Set the position of the tooltip relative to the icon | | light | let | No | boolean | false | Set to `true` to enable the light variant | | disabled | let | No | boolean | false | Set to `true` to disable the input | | helperText | let | No | string | "" | Specify the helper text | @@ -3594,6 +3606,7 @@ None. | disabled | let | No | boolean | false | Set to `true` to disable a filterable tag | | skeleton | let | No | boolean | false | Set to `true` to display the skeleton state | | title | let | No | string | "Clear filter" | Set the title for the close button in a filterable tag | +| icon | let | No | typeof import("carbon-icons-svelte").CarbonIcon | -- | Specify the icon from `carbon-icons-svelte` to render | | id | let | No | string | "ccs-" + Math.random().toString(36) | Set an id for the filterable tag | ### Slots @@ -3873,18 +3886,17 @@ None. ### Props -| Prop name | Kind | Reactive | Type | Default value | Description | -| :--------------- | :--------------- | :------- | :------------------------------------------------------------------------------------------------------------- | ---------------------------------- | ----------------------------------------------------------------------- | -| notificationType | let | No | "toast" | "inline" | "toast" | Set the type of notification | -| kind | let | No | "error" | "info" | "info-square" | "success" | "warning" | "warning-alt" | "error" | Specify the kind of notification | -| lowContrast | let | No | boolean | false | Set to `true` to use the low contrast variant | -| timeout | let | No | number | 0 | Set the timeout duration (ms) to hide the notification after opening it | -| role | let | No | string | "alert" | Set the `role` attribute | -| title | let | No | string | "Title" | Specify the title text | -| subtitle | let | No | string | "" | Specify the subtitle text | -| caption | let | No | string | "Caption" | Specify the caption text | -| iconDescription | let | No | string | "Closes notification" | Specify the ARIA label for the icon | -| hideCloseButton | let | No | boolean | false | Set to `true` to hide the close button | +| Prop name | Kind | Reactive | Type | Default value | Description | +| :-------------- | :--------------- | :------- | :------------------------------------------------------------------------------------------------------------- | ---------------------------------- | ----------------------------------------------------------------------- | +| kind | let | No | "error" | "info" | "info-square" | "success" | "warning" | "warning-alt" | "error" | Specify the kind of notification | +| lowContrast | let | No | boolean | false | Set to `true` to use the low contrast variant | +| timeout | let | No | number | 0 | Set the timeout duration (ms) to hide the notification after opening it | +| role | let | No | string | "alert" | Set the `role` attribute | +| title | let | No | string | "Title" | Specify the title text | +| subtitle | let | No | string | "" | Specify the subtitle text | +| caption | let | No | string | "Caption" | Specify the caption text | +| iconDescription | let | No | string | "Closes notification" | Specify the ARIA label for the icon | +| hideCloseButton | let | No | boolean | false | Set to `true` to hide the close button | ### Slots @@ -3894,13 +3906,13 @@ None. ### Events -| Event name | Type | Detail | -| :--------- | :--------- | :----- | -| click | forwarded | -- | -| mouseover | forwarded | -- | -| mouseenter | forwarded | -- | -| mouseleave | forwarded | -- | -| close | dispatched | -- | +| Event name | Type | Detail | +| :--------- | :--------- | :-------------------------------- | +| close | dispatched | { timeout: boolean } | +| click | forwarded | -- | +| mouseover | forwarded | -- | +| mouseenter | forwarded | -- | +| mouseleave | forwarded | -- | ## `Toggle` diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 318b98a2..28575db3 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,12 +1,10 @@ # Contributing -Note: before submitting a pull request (PR), it is recommended to first [file an issue](https://github.com/IBM/carbon-components-svelte/issues). +Before submitting a pull request (PR), consider [filing an issue](https://github.com/IBM/carbon-components-svelte/issues) to gain clarity and direction. ## Prerequisites -This project requires Node.js (version 12 or greater) and Yarn (version 1 or greater). - -- [Node.js](https://nodejs.org/en/download/package-manager/) +- [Node.js](https://nodejs.org/en/download/package-manager/) (version >=12) - [Yarn](https://classic.yarnpkg.com/en/docs/install) ## Project set-up @@ -65,6 +63,12 @@ If linked correctly, any change to a component in the `src` folder should be ref ## Development workflow +Create a topic branch from `master`. Keep your PR focused and branch up-to-date with upstream `master`. + +```sh +git checkout -b new-feature +``` + Preview changes to components from the `src` folder in the documentation website located in `docs/`. In the `docs` folder, run: diff --git a/README.md b/README.md index fe246f5d..cc9e309e 100644 --- a/README.md +++ b/README.md @@ -11,8 +11,8 @@ Design systems facilitate design and development through reuse, consistency, and The Carbon Svelte portfolio also includes: -- **[Carbon Icons Svelte](https://github.com/IBM/carbon-icons-svelte)**: 5800+ Carbon icons as Svelte components -- **[Carbon Pictograms Svelte](https://github.com/IBM/carbon-pictograms-svelte)**: 600+ Carbon pictograms as Svelte components +- **[Carbon Icons Svelte](https://github.com/IBM/carbon-icons-svelte)**: 6000+ Carbon icons as Svelte components +- **[Carbon Pictograms Svelte](https://github.com/IBM/carbon-pictograms-svelte)**: 700+ Carbon pictograms as Svelte components - **[Carbon Charts Svelte](https://github.com/carbon-design-system/carbon-charts/tree/master/packages/svelte)**: 16 chart types, powered by d3 ## [Documentation](http://ibm.biz/carbon-svelte) @@ -130,6 +130,34 @@ export default app; See [webpack.config.js](examples/webpack/webpack.config.js) in [examples/webpack](examples/webpack). +#### Dynamic theming + +Use `carbon-components-svelte/css/all.css` for dynamic, client-side styling. + +Update the theme by setting the `theme` attribute on the `html` element. The default `theme` is `"white"`. + +```html + + + + ... + + +``` + +Using JavaScript: + +```svelte + + + +``` + ### TypeScript support [TypeScript definitions](types) are generated by [sveld](https://github.com/IBM/sveld). diff --git a/docs/package.json b/docs/package.json index f307dfa6..3af7ad64 100644 --- a/docs/package.json +++ b/docs/package.json @@ -9,10 +9,10 @@ "build:svite": "svite build" }, "devDependencies": { - "@carbon/themes": "^10.22.1", + "@carbon/themes": "10.26.0", "@sveltech/routify": "^1.9.9", "autoprefixer": "^10.0.1", - "carbon-components": "^10.25.0", + "carbon-components": "10.27.0", "carbon-components-svelte": "../", "clipboard-copy": "^3.1.0", "mdsvex": "^0.8.8", diff --git a/docs/src/COMPONENT_API.json b/docs/src/COMPONENT_API.json index 2e1822ad..ab8ee008 100644 --- a/docs/src/COMPONENT_API.json +++ b/docs/src/COMPONENT_API.json @@ -547,7 +547,7 @@ "value": "false", "isFunction": false, "constant": false, - "reactive": false + "reactive": true }, { "name": "icon", @@ -572,6 +572,7 @@ "kind": "let", "description": "Set the alignment of the tooltip relative to the icon\n`hasIconOnly` must be set to `true`", "type": "\"start\" | \"center\" | \"end\"", + "value": "\"center\"", "isFunction": false, "constant": false, "reactive": false @@ -581,6 +582,7 @@ "kind": "let", "description": "Set the position of the tooltip relative to the icon", "type": "\"top\" | \"right\" | \"bottom\" | \"left\"", + "value": "\"bottom\"", "isFunction": false, "constant": false, "reactive": false @@ -1123,6 +1125,26 @@ "isFunction": false, "constant": false, "reactive": false + }, + { + "name": "warn", + "kind": "let", + "description": "Set to `true` to indicate an warning state", + "type": "boolean", + "value": "false", + "isFunction": false, + "constant": false, + "reactive": false + }, + { + "name": "warnText", + "kind": "let", + "description": "Specify the warning state text", + "type": "string", + "value": "\"\"", + "isFunction": false, + "constant": false, + "reactive": false } ], "slots": [{ "name": "__default__", "default": true, "slot_props": "{}" }], @@ -1949,6 +1971,16 @@ "constant": false, "reactive": false }, + { + "name": "disabled", + "kind": "let", + "description": "Set to `true` for the disabled variant\nOnly applies to the \"single\", \"multi\" types", + "type": "boolean", + "value": "false", + "isFunction": false, + "constant": false, + "reactive": false + }, { "name": "wrapText", "kind": "let", @@ -2677,6 +2709,94 @@ ], "rest_props": { "type": "InlineComponent", "name": "TableContainer" } }, + { + "moduleName": "DataTableSkeleton", + "filePath": "/src/DataTable/DataTableSkeleton.svelte", + "props": [ + { + "name": "columns", + "kind": "let", + "description": "Specify the number of columns\nSuperseded by `headers` if `headers` is a non-empty array", + "type": "number", + "value": "5", + "isFunction": false, + "constant": false, + "reactive": false + }, + { + "name": "rows", + "kind": "let", + "description": "Specify the number of rows", + "type": "number", + "value": "5", + "isFunction": false, + "constant": false, + "reactive": false + }, + { + "name": "size", + "kind": "let", + "description": "Set the size of the data table", + "type": "\"compact\" | \"short\" | \"tall\"", + "isFunction": false, + "constant": false, + "reactive": false + }, + { + "name": "zebra", + "kind": "let", + "description": "Set to `true` to apply zebra styles to the datatable rows", + "type": "boolean", + "value": "false", + "isFunction": false, + "constant": false, + "reactive": false + }, + { + "name": "showHeader", + "kind": "let", + "description": "Set to `false` to hide the header", + "type": "boolean", + "value": "true", + "isFunction": false, + "constant": false, + "reactive": false + }, + { + "name": "headers", + "kind": "let", + "description": "Set the column headers\nSupersedes `columns` if value is a non-empty array", + "type": "string[] | Partial[]", + "value": "[]", + "isFunction": false, + "constant": false, + "reactive": false + }, + { + "name": "showToolbar", + "kind": "let", + "description": "Set to `false` to hide the toolbar", + "type": "boolean", + "value": "true", + "isFunction": false, + "constant": false, + "reactive": false + } + ], + "slots": [], + "events": [ + { "type": "forwarded", "name": "click", "element": "table" }, + { "type": "forwarded", "name": "mouseover", "element": "table" }, + { "type": "forwarded", "name": "mouseenter", "element": "table" }, + { "type": "forwarded", "name": "mouseleave", "element": "table" } + ], + "typedefs": [], + "rest_props": { "type": "Element", "name": "div" }, + "extends": { + "interface": "DataTableHeader", + "import": "\"../DataTable/DataTable\"" + } + }, { "moduleName": "Toolbar", "filePath": "/src/DataTable/Toolbar.svelte", @@ -3284,94 +3404,6 @@ "import": "\"../OverflowMenu/OverflowMenuItem\"" } }, - { - "moduleName": "DataTableSkeleton", - "filePath": "/src/DataTableSkeleton/DataTableSkeleton.svelte", - "props": [ - { - "name": "columns", - "kind": "let", - "description": "Specify the number of columns\nSuperseded by `headers` if `headers` is a non-empty array", - "type": "number", - "value": "5", - "isFunction": false, - "constant": false, - "reactive": false - }, - { - "name": "rows", - "kind": "let", - "description": "Specify the number of rows", - "type": "number", - "value": "5", - "isFunction": false, - "constant": false, - "reactive": false - }, - { - "name": "size", - "kind": "let", - "description": "Set the size of the data table", - "type": "\"compact\" | \"short\" | \"tall\"", - "isFunction": false, - "constant": false, - "reactive": false - }, - { - "name": "zebra", - "kind": "let", - "description": "Set to `true` to apply zebra styles to the datatable rows", - "type": "boolean", - "value": "false", - "isFunction": false, - "constant": false, - "reactive": false - }, - { - "name": "showHeader", - "kind": "let", - "description": "Set to `false` to hide the header", - "type": "boolean", - "value": "true", - "isFunction": false, - "constant": false, - "reactive": false - }, - { - "name": "headers", - "kind": "let", - "description": "Set the column headers\nSupersedes `columns` if value is a non-empty array", - "type": "string[] | Partial[]", - "value": "[]", - "isFunction": false, - "constant": false, - "reactive": false - }, - { - "name": "showToolbar", - "kind": "let", - "description": "Set to `false` to hide the toolbar", - "type": "boolean", - "value": "true", - "isFunction": false, - "constant": false, - "reactive": false - } - ], - "slots": [], - "events": [ - { "type": "forwarded", "name": "click", "element": "table" }, - { "type": "forwarded", "name": "mouseover", "element": "table" }, - { "type": "forwarded", "name": "mouseenter", "element": "table" }, - { "type": "forwarded", "name": "mouseleave", "element": "table" } - ], - "typedefs": [], - "rest_props": { "type": "Element", "name": "div" }, - "extends": { - "interface": "DataTableHeader", - "import": "\"../DataTable/DataTable\"" - } - }, { "moduleName": "DatePicker", "filePath": "/src/DatePicker/DatePicker.svelte", @@ -3787,6 +3819,26 @@ "constant": false, "reactive": false }, + { + "name": "warn", + "kind": "let", + "description": "Set to `true` to indicate an warning state", + "type": "boolean", + "value": "false", + "isFunction": false, + "constant": false, + "reactive": false + }, + { + "name": "warnText", + "kind": "let", + "description": "Specify the warning state text", + "type": "string", + "value": "\"\"", + "isFunction": false, + "constant": false, + "reactive": false + }, { "name": "helperText", "kind": "let", @@ -4494,7 +4546,7 @@ "filePath": "/src/FluidForm/FluidForm.svelte", "props": [], "slots": [{ "name": "__default__", "default": true, "slot_props": "{}" }], - "events": [], + "events": [{ "type": "forwarded", "name": "submit", "element": "Form" }], "typedefs": [], "rest_props": { "type": "InlineComponent", "name": "Form" } }, @@ -5247,6 +5299,26 @@ "constant": false, "reactive": false }, + { + "name": "warn", + "kind": "let", + "description": "Set to `true` to indicate an warning state", + "type": "boolean", + "value": "false", + "isFunction": false, + "constant": false, + "reactive": false + }, + { + "name": "warnText", + "kind": "let", + "description": "Specify the warning state text", + "type": "string", + "value": "\"\"", + "isFunction": false, + "constant": false, + "reactive": false + }, { "name": "helperText", "kind": "let", @@ -5679,16 +5751,6 @@ "moduleName": "ToastNotification", "filePath": "/src/Notification/ToastNotification.svelte", "props": [ - { - "name": "notificationType", - "kind": "let", - "description": "Set the type of notification", - "type": "\"toast\" | \"inline\"", - "value": "\"toast\"", - "isFunction": false, - "constant": false, - "reactive": false - }, { "name": "kind", "kind": "let", @@ -5782,11 +5844,15 @@ ], "slots": [{ "name": "__default__", "default": true, "slot_props": "{}" }], "events": [ + { + "type": "dispatched", + "name": "close", + "detail": "{ timeout: boolean }" + }, { "type": "forwarded", "name": "click", "element": "div" }, { "type": "forwarded", "name": "mouseover", "element": "div" }, { "type": "forwarded", "name": "mouseenter", "element": "div" }, - { "type": "forwarded", "name": "mouseleave", "element": "div" }, - { "type": "dispatched", "name": "close" } + { "type": "forwarded", "name": "mouseleave", "element": "div" } ], "typedefs": [], "rest_props": { "type": "Element", "name": "div" } @@ -5795,16 +5861,6 @@ "moduleName": "InlineNotification", "filePath": "/src/Notification/InlineNotification.svelte", "props": [ - { - "name": "notificationType", - "kind": "let", - "description": "Set the type of notification", - "type": "\"toast\" | \"inline\"", - "value": "\"inline\"", - "isFunction": false, - "constant": false, - "reactive": false - }, { "name": "kind", "kind": "let", @@ -5891,11 +5947,15 @@ { "name": "actions", "default": false, "slot_props": "{}" } ], "events": [ + { + "type": "dispatched", + "name": "close", + "detail": "{ timeout: boolean }" + }, { "type": "forwarded", "name": "click", "element": "div" }, { "type": "forwarded", "name": "mouseover", "element": "div" }, { "type": "forwarded", "name": "mouseenter", "element": "div" }, - { "type": "forwarded", "name": "mouseleave", "element": "div" }, - { "type": "dispatched", "name": "close" } + { "type": "forwarded", "name": "mouseleave", "element": "div" } ], "typedefs": [], "rest_props": { "type": "Element", "name": "div" } @@ -6045,6 +6105,26 @@ "constant": false, "reactive": false }, + { + "name": "warn", + "kind": "let", + "description": "Set to `true` to indicate an warning state", + "type": "boolean", + "value": "false", + "isFunction": false, + "constant": false, + "reactive": false + }, + { + "name": "warnText", + "kind": "let", + "description": "Specify the warning state text", + "type": "string", + "value": "\"\"", + "isFunction": false, + "constant": false, + "reactive": false + }, { "name": "helperText", "kind": "let", @@ -7732,6 +7812,15 @@ "constant": false, "reactive": false }, + { + "name": "icon", + "kind": "let", + "description": "Specify the icon from `carbon-icons-svelte` to render", + "type": "typeof import(\"carbon-icons-svelte\").CarbonIcon", + "isFunction": false, + "constant": false, + "reactive": false + }, { "name": "id", "kind": "let", @@ -8233,6 +8322,7 @@ "kind": "let", "description": "Set the alignment of the tooltip relative to the icon", "type": "\"start\" | \"center\" | \"end\"", + "value": "\"center\"", "isFunction": false, "constant": false, "reactive": false @@ -8242,6 +8332,7 @@ "kind": "let", "description": "Set the position of the tooltip relative to the icon", "type": "\"top\" | \"right\" | \"bottom\" | \"left\"", + "value": "\"bottom\"", "isFunction": false, "constant": false, "reactive": false @@ -8495,6 +8586,26 @@ "constant": false, "reactive": false }, + { + "name": "tileExpandedLabel", + "kind": "let", + "description": "Specify the icon label of the expanded tile", + "type": "string", + "value": "\"\"", + "isFunction": false, + "constant": false, + "reactive": false + }, + { + "name": "tileCollapsedLabel", + "kind": "let", + "description": "Specify the icon label of the collapsed tile", + "type": "string", + "value": "\"\"", + "isFunction": false, + "constant": false, + "reactive": false + }, { "name": "tabindex", "kind": "let", @@ -8519,7 +8630,7 @@ "name": "ref", "kind": "let", "description": "Obtain a reference to the top-level element", - "type": "null | HTMLDivElement", + "type": "null | HTMLButtonElement", "value": "null", "isFunction": false, "constant": false, @@ -8531,14 +8642,14 @@ { "name": "below", "default": false, "slot_props": "{}" } ], "events": [ - { "type": "forwarded", "name": "click", "element": "div" }, - { "type": "forwarded", "name": "keypress", "element": "div" }, - { "type": "forwarded", "name": "mouseover", "element": "div" }, - { "type": "forwarded", "name": "mouseenter", "element": "div" }, - { "type": "forwarded", "name": "mouseleave", "element": "div" } + { "type": "forwarded", "name": "click", "element": "button" }, + { "type": "forwarded", "name": "keypress", "element": "button" }, + { "type": "forwarded", "name": "mouseover", "element": "button" }, + { "type": "forwarded", "name": "mouseenter", "element": "button" }, + { "type": "forwarded", "name": "mouseleave", "element": "button" } ], "typedefs": [], - "rest_props": { "type": "Element", "name": "div" } + "rest_props": { "type": "Element", "name": "button" } }, { "moduleName": "SelectableTile", diff --git a/docs/src/components/Preview.svelte b/docs/src/components/Preview.svelte index 80e9c01a..280f10ec 100644 --- a/docs/src/components/Preview.svelte +++ b/docs/src/components/Preview.svelte @@ -106,7 +106,7 @@ border: 1px solid var(--cds-ui-03); border-bottom: 0; position: relative; - z-index: 1; + z-index: 9999; } .preview-viewer:not(.framed) { diff --git a/docs/src/pages/components/Button.svx b/docs/src/pages/components/Button.svx index 2507c9e0..64c05e2d 100644 --- a/docs/src/pages/components/Button.svx +++ b/docs/src/pages/components/Button.svx @@ -1,10 +1,7 @@ ---- -description: High-level description ---- - @@ -32,6 +29,12 @@ description: High-level description +### Danger tertiary, icon-only button + +**Note:** you must provide an `iconDescription` for the button tooltip. + + @@ -42,13 +45,15 @@ description: High-level description ### Icon-only button -Set `hasIconOnly` to `true` to use the icon-only button variant. - **Note:** you must provide an `iconDescription` for the button tooltip. -The tooltip position and alignment can be controlled by the `tooltipPosition`, `tooltipAlignment` props, respectively. + diff --git a/src/Notification/NotificationIcon.svelte b/src/Notification/NotificationIcon.svelte index b2fa10dc..5b49cb68 100644 --- a/src/Notification/NotificationIcon.svelte +++ b/src/Notification/NotificationIcon.svelte @@ -14,12 +14,12 @@ /** Specify the ARIA label for the icon */ export let iconDescription = "Closes notification"; - import CheckmarkFilled20 from "carbon-icons-svelte/lib/CheckmarkFilled20"; - import ErrorFilled20 from "carbon-icons-svelte/lib/ErrorFilled20"; - import InformationFilled20 from "carbon-icons-svelte/lib/InformationFilled20"; - import InformationSquareFilled20 from "carbon-icons-svelte/lib/InformationSquareFilled20"; - import WarningFilled20 from "carbon-icons-svelte/lib/WarningFilled20"; - import WarningAltFilled20 from "carbon-icons-svelte/lib/WarningAltFilled20"; + import CheckmarkFilled20 from "carbon-icons-svelte/lib/CheckmarkFilled20/CheckmarkFilled20.svelte"; + import ErrorFilled20 from "carbon-icons-svelte/lib/ErrorFilled20/ErrorFilled20.svelte"; + import InformationFilled20 from "carbon-icons-svelte/lib/InformationFilled20/InformationFilled20.svelte"; + import InformationSquareFilled20 from "carbon-icons-svelte/lib/InformationSquareFilled20/InformationSquareFilled20.svelte"; + import WarningFilled20 from "carbon-icons-svelte/lib/WarningFilled20/WarningFilled20.svelte"; + import WarningAltFilled20 from "carbon-icons-svelte/lib/WarningAltFilled20/WarningAltFilled20.svelte"; const icons = { error: ErrorFilled20, diff --git a/src/Notification/ToastNotification.svelte b/src/Notification/ToastNotification.svelte index 597295fc..84b33b15 100644 --- a/src/Notification/ToastNotification.svelte +++ b/src/Notification/ToastNotification.svelte @@ -1,9 +1,7 @@ -
- +
- +
- +
- + diff --git a/src/index.js b/src/index.js index 522bc154..5ce9120d 100644 --- a/src/index.js +++ b/src/index.js @@ -16,6 +16,7 @@ export { export { CodeSnippet, CodeSnippetSkeleton } from "./CodeSnippet"; export { DataTable, + DataTableSkeleton, Table, TableBody, TableCell, @@ -30,7 +31,6 @@ export { ToolbarMenu, ToolbarMenuItem, } from "./DataTable"; -export { DataTableSkeleton } from "./DataTableSkeleton"; export { DatePicker, DatePickerInput, DatePickerSkeleton } from "./DatePicker"; export { Dropdown, DropdownSkeleton } from "./Dropdown"; export { diff --git a/tests/CodeSnippet.test.svelte b/tests/CodeSnippet.test.svelte index ecc342ea..c7c14389 100644 --- a/tests/CodeSnippet.test.svelte +++ b/tests/CodeSnippet.test.svelte @@ -47,4 +47,4 @@ export function subtract(a: number, b: number) { - + diff --git a/tests/ExpandableTile.test.svelte b/tests/ExpandableTile.test.svelte index a0353959..53c60474 100644 --- a/tests/ExpandableTile.test.svelte +++ b/tests/ExpandableTile.test.svelte @@ -12,7 +12,11 @@
Below the fold content here
- +
Above the fold content here
Below the fold content here
diff --git a/tests/InlineNotification.test.svelte b/tests/InlineNotification.test.svelte index 74d884a1..6eacee66 100644 --- a/tests/InlineNotification.test.svelte +++ b/tests/InlineNotification.test.svelte @@ -8,6 +8,9 @@ hideCloseButton kind="warning" title="Upcoming scheduled maintenance" + on:close="{(e) => { + console.log(e.detail.timeout); + }}" /> diff --git a/tests/Tag.test.svelte b/tests/Tag.test.svelte index db53c202..7e5cc57e 100644 --- a/tests/Tag.test.svelte +++ b/tests/Tag.test.svelte @@ -1,5 +1,6 @@ IBM Cloud @@ -28,4 +29,6 @@ Filterable +Custom icon + diff --git a/tests/ToastNotification.test.svelte b/tests/ToastNotification.test.svelte index de2c3176..17a84883 100644 --- a/tests/ToastNotification.test.svelte +++ b/tests/ToastNotification.test.svelte @@ -8,6 +8,9 @@ hideCloseButton kind="warning" title="Upcoming scheduled maintenance" + on:close="{(e) => { + console.log(e.detail.timeout); + }}" /> diff --git a/types/Button/Button.d.ts b/types/Button/Button.d.ts index dec19519..5aa6fc4c 100644 --- a/types/Button/Button.d.ts +++ b/types/Button/Button.d.ts @@ -37,11 +37,13 @@ export interface ButtonProps /** * Set the alignment of the tooltip relative to the icon * `hasIconOnly` must be set to `true` + * @default "center" */ tooltipAlignment?: "start" | "center" | "end"; /** * Set the position of the tooltip relative to the icon + * @default "bottom" */ tooltipPosition?: "top" | "right" | "bottom" | "left"; diff --git a/types/CodeSnippet/CodeSnippet.d.ts b/types/CodeSnippet/CodeSnippet.d.ts index b1e1f2b4..2d31d91c 100644 --- a/types/CodeSnippet/CodeSnippet.d.ts +++ b/types/CodeSnippet/CodeSnippet.d.ts @@ -25,6 +25,13 @@ export interface CodeSnippetProps { */ hideCopyButton?: boolean; + /** + * Set to `true` for the disabled variant + * Only applies to the "single", "multi" types + * @default false + */ + disabled?: boolean; + /** * Set to `true` to wrap the text * Note that `type` must be "multi" diff --git a/types/DataTableSkeleton/DataTableSkeleton.d.ts b/types/DataTable/DataTableSkeleton.d.ts similarity index 100% rename from types/DataTableSkeleton/DataTableSkeleton.d.ts rename to types/DataTable/DataTableSkeleton.d.ts diff --git a/types/Dropdown/Dropdown.d.ts b/types/Dropdown/Dropdown.d.ts index b4961bc0..61589f60 100644 --- a/types/Dropdown/Dropdown.d.ts +++ b/types/Dropdown/Dropdown.d.ts @@ -81,6 +81,18 @@ export interface DropdownProps extends svelte.JSX.HTMLAttributes void): () => void; $on(eventname: string, cb: (event: Event) => void): () => void; } diff --git a/types/ListBox/ListBox.d.ts b/types/ListBox/ListBox.d.ts index d82cfc8f..07a5fcec 100644 --- a/types/ListBox/ListBox.d.ts +++ b/types/ListBox/ListBox.d.ts @@ -41,6 +41,18 @@ export interface ListBoxProps extends svelte.JSX.HTMLAttributes export interface InlineNotificationProps extends svelte.JSX.HTMLAttributes { - /** - * Set the type of notification - * @default "inline" - */ - notificationType?: "toast" | "inline"; - /** * Specify the kind of notification * @default "error" @@ -63,10 +57,10 @@ export default class InlineNotification { actions: {}; }; + $on(eventname: "close", cb: (event: CustomEvent<{ timeout: boolean }>) => void): () => void; $on(eventname: "click", cb: (event: WindowEventMap["click"]) => void): () => void; $on(eventname: "mouseover", cb: (event: WindowEventMap["mouseover"]) => void): () => void; $on(eventname: "mouseenter", cb: (event: WindowEventMap["mouseenter"]) => void): () => void; $on(eventname: "mouseleave", cb: (event: WindowEventMap["mouseleave"]) => void): () => void; - $on(eventname: "close", cb: (event: CustomEvent) => void): () => void; $on(eventname: string, cb: (event: Event) => void): () => void; } diff --git a/types/Notification/ToastNotification.d.ts b/types/Notification/ToastNotification.d.ts index 1894d000..8037b08b 100644 --- a/types/Notification/ToastNotification.d.ts +++ b/types/Notification/ToastNotification.d.ts @@ -1,12 +1,6 @@ /// export interface ToastNotificationProps extends svelte.JSX.HTMLAttributes { - /** - * Set the type of notification - * @default "toast" - */ - notificationType?: "toast" | "inline"; - /** * Specify the kind of notification * @default "error" @@ -68,10 +62,10 @@ export default class ToastNotification { default: {}; }; + $on(eventname: "close", cb: (event: CustomEvent<{ timeout: boolean }>) => void): () => void; $on(eventname: "click", cb: (event: WindowEventMap["click"]) => void): () => void; $on(eventname: "mouseover", cb: (event: WindowEventMap["mouseover"]) => void): () => void; $on(eventname: "mouseenter", cb: (event: WindowEventMap["mouseenter"]) => void): () => void; $on(eventname: "mouseleave", cb: (event: WindowEventMap["mouseleave"]) => void): () => void; - $on(eventname: "close", cb: (event: CustomEvent) => void): () => void; $on(eventname: string, cb: (event: Event) => void): () => void; } diff --git a/types/NumberInput/NumberInput.d.ts b/types/NumberInput/NumberInput.d.ts index 715560b9..fa040b1c 100644 --- a/types/NumberInput/NumberInput.d.ts +++ b/types/NumberInput/NumberInput.d.ts @@ -78,6 +78,18 @@ export interface NumberInputProps extends svelte.JSX.HTMLAttributes -export interface ExpandableTileProps extends svelte.JSX.HTMLAttributes { +export interface ExpandableTileProps extends svelte.JSX.HTMLAttributes { /** * Set to `true` to expand the tile * @default false @@ -37,6 +37,18 @@ export interface ExpandableTileProps extends svelte.JSX.HTMLAttributes=0.0.4" +source-map@^0.5.0: + version "0.5.7" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= + source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: version "0.6.1" resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" @@ -2539,6 +3049,11 @@ sshpk@^1.7.0: safer-buffer "^2.0.2" tweetnacl "~0.14.0" +stack-trace@0.0.x: + version "0.0.10" + resolved "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz#547c70b347e8d32b4e108ea1a2a159e5fdde19c0" + integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= + stdout-stream@^1.4.0: version "1.4.1" resolved "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz#5ac174cdd5cd726104aa0c0b2bd83815d8d535de" @@ -2615,6 +3130,13 @@ string.prototype.trimstart@^1.0.1: define-properties "^1.1.3" es-abstract "^1.17.5" +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + string_decoder@~1.1.1: version "1.1.1" resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" @@ -2741,10 +3263,10 @@ sveld@0.3.0: rollup-plugin-svelte "^6.1.1" svelte "^3.30.0" -svelte-check@^1.1.15: - version "1.1.15" - resolved "https://registry.npmjs.org/svelte-check/-/svelte-check-1.1.15.tgz#b645f4d63d7a20587f7b9755a44eb247335b669f" - integrity sha512-3TO5xZiH/bJtlEmQoh2zwUNIF0Fy153kXB3Q/KTjVdeqmM7Ws73rMY7tiOeTub777fv83yip0PaJpgGORyL5ZA== +svelte-check@^1.1.28: + version "1.1.28" + resolved "https://registry.npmjs.org/svelte-check/-/svelte-check-1.1.28.tgz#f7ef1cff9a0b05368880c6a4a523cdc9c1edeb1a" + integrity sha512-jp1i8JImIwyH8gp2G9nLZ1+HXUgxPbuuT4StzeAvHdQ27b0u8XANoODcjl2w15i1J33EiH4S4CE9M3o9kau4cg== dependencies: chalk "^4.0.0" chokidar "^3.4.1" @@ -2755,19 +3277,6 @@ svelte-check@^1.1.15: svelte-preprocess "^4.0.0" typescript "*" -svelte-dev-helper@^1.1.9: - version "1.1.9" - resolved "https://registry.npmjs.org/svelte-dev-helper/-/svelte-dev-helper-1.1.9.tgz#7d187db5c6cdbbd64d75a32f91b8998bde3273c3" - integrity sha1-fRh9tcbNu9ZNdaMvkbiZi94yc8M= - -svelte-loader@^2.13.6: - version "2.13.6" - resolved "https://registry.npmjs.org/svelte-loader/-/svelte-loader-2.13.6.tgz#3d5efd5886c2bab034606d5af0cce659da3ee555" - integrity sha512-7uf7ZQdPAl+lwb1ldUYJFY/raZRUCuaNx7lMJ+F16jrVwN1+c35C2pBMGIY0mCqdKm5sm45jqELJJLGM3UG9Pw== - dependencies: - loader-utils "^1.1.0" - svelte-dev-helper "^1.1.9" - svelte-preprocess@^4.0.0: version "4.5.2" resolved "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-4.5.2.tgz#37976d1e0d866eb382411d486f7468d2275087e9" @@ -2778,16 +3287,16 @@ svelte-preprocess@^4.0.0: detect-indent "^6.0.0" strip-indent "^3.0.0" -svelte@^3.29.7: - version "3.29.7" - resolved "https://registry.npmjs.org/svelte/-/svelte-3.29.7.tgz#e254eb2d0d609ce0fd60f052d444ac4a66d90f7d" - integrity sha512-rx0g311kBODvEWUU01DFBUl3MJuJven04bvTVFUG/w0On/wuj0PajQY/QlXcJndFxG+W1s8iXKaB418tdHWc3A== - svelte@^3.30.0: version "3.30.0" resolved "https://registry.npmjs.org/svelte/-/svelte-3.30.0.tgz#cbde341e96bf34f4ac73c8f14f8a014e03bfb7d6" integrity sha512-z+hdIACb9TROGvJBQWcItMtlr4s0DBUgJss6qWrtFkOoIInkG+iAMo/FJZQFyDBQZc+dul2+TzYSi/tpTT5/Ag== +svelte@^3.32.0: + version "3.32.0" + resolved "https://registry.npmjs.org/svelte/-/svelte-3.32.0.tgz#06d7dcdf65e62a708c74231f7099569df43e3af6" + integrity sha512-+EA3qfKDG0uB16s7m1z9Nc1o01G7YC4eq1cnHOzCy+fKsvGAJrjhjBIM3zCW2eZUu639UbHQElaOPQWUjBN3Yw== + tar@^2.0.0: version "2.2.2" resolved "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz#0ca8848562c7299b8b446ff6a4d60cdbb23edc40" @@ -2806,11 +3315,21 @@ terser@^5.0.0: source-map "~0.6.1" source-map-support "~0.5.12" +text-hex@1.0.x: + version "1.0.0" + resolved "https://registry.npmjs.org/text-hex/-/text-hex-1.0.0.tgz#69dc9c1b17446ee79a92bf5b884bb4b9127506f5" + integrity sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg== + through@^2.3.8: version "2.3.8" resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= +to-fast-properties@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= + to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -2838,6 +3357,11 @@ trim-repeated@^1.0.0: dependencies: escape-string-regexp "^1.0.2" +triple-beam@^1.2.0, triple-beam@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/triple-beam/-/triple-beam-1.3.0.tgz#a595214c7298db8339eeeee083e4d10bd8cb8dd9" + integrity sha512-XrHUvV5HpdLmIj4uVMxHggLbFSZYIn7HEWsqePZcI50pco+MPqJ50wMGY794X7AOOhxOBAjbkqfAbEe/QMp2Lw== + "true-case-path@^1.0.2": version "1.0.3" resolved "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz#f813b5a8c86b40da59606722b144e3225799f47d" @@ -2867,15 +3391,29 @@ type-fest@^0.11.0: resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz#97abf0872310fed88a5c466b25681576145e33f1" integrity sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ== +typedarray-to-buffer@^3.1.5: + version "3.1.5" + resolved "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" + integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== + dependencies: + is-typedarray "^1.0.0" + typescript@*: version "4.0.5" resolved "https://registry.npmjs.org/typescript/-/typescript-4.0.5.tgz#ae9dddfd1069f1cb5beb3ef3b2170dd7c1332389" integrity sha512-ywmr/VrTVCmNTJ6iV2LwIrfG1P+lv6luD8sUJs+2eI9NLGigaN+nUQc13iHqisq7bra9lnmUSYqbJvegraBOPQ== -typescript@^4.1.2: - version "4.1.2" - resolved "https://registry.npmjs.org/typescript/-/typescript-4.1.2.tgz#6369ef22516fe5e10304aae5a5c4862db55380e9" - integrity sha512-thGloWsGH3SOxv1SoY7QojKi0tc+8FnOmiarEGMbd/lar7QOEd3hvlx3Fp5y6FlDUGl9L+pd4n2e+oToGMmhRQ== +typescript@^4.1.3: + version "4.1.3" + resolved "https://registry.npmjs.org/typescript/-/typescript-4.1.3.tgz#519d582bd94cba0cf8934c7d8e8467e473f53bb7" + integrity sha512-B3ZIOf1IKeH2ixgHhj6la6xdwR9QrLC5d1VKeCSY4tvkqhF2eqd9O7txNlS0PO3GrBAFIdr3L1ndNwteUbZLYg== + +unique-string@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz#39c6451f81afb2749de2b233e3f7c5e8843bd89d" + integrity sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg== + dependencies: + crypto-random-string "^2.0.0" universalify@^0.1.0: version "0.1.2" @@ -2899,7 +3437,7 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -util-deprecate@~1.0.1: +util-deprecate@^1.0.1, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= @@ -2964,6 +3502,29 @@ wide-align@^1.1.0: dependencies: string-width "^1.0.2 || 2" +winston-transport@^4.4.0: + version "4.4.0" + resolved "https://registry.npmjs.org/winston-transport/-/winston-transport-4.4.0.tgz#17af518daa690d5b2ecccaa7acf7b20ca7925e59" + integrity sha512-Lc7/p3GtqtqPBYYtS6KCN3c77/2QCev51DvcJKbkFPQNoj1sinkGwLGFDxkXY9J6p9+EPnYs+D90uwbnaiURTw== + dependencies: + readable-stream "^2.3.7" + triple-beam "^1.2.0" + +winston@^3.3.3: + version "3.3.3" + resolved "https://registry.npmjs.org/winston/-/winston-3.3.3.tgz#ae6172042cafb29786afa3d09c8ff833ab7c9170" + integrity sha512-oEXTISQnC8VlSAKf1KYSSd7J6IWuRPQqDdo8eoRNaYKLvwSb5+79Z3Yi1lrl6KDpU6/VWaxpakDAtb1oQ4n9aw== + dependencies: + "@dabh/diagnostics" "^2.0.2" + async "^3.1.0" + is-stream "^2.0.0" + logform "^2.2.0" + one-time "^1.0.0" + readable-stream "^3.4.0" + stack-trace "0.0.x" + triple-beam "^1.3.0" + winston-transport "^4.4.0" + wrap-ansi@^5.1.0: version "5.1.0" resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" @@ -2982,21 +3543,55 @@ wrap-ansi@^6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrappy@1: version "1.0.2" resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= +write-file-atomic@^3.0.0: + version "3.0.3" + resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" + integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== + dependencies: + imurmurhash "^0.1.4" + is-typedarray "^1.0.0" + signal-exit "^3.0.2" + typedarray-to-buffer "^3.1.5" + +xdg-basedir@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz#4bc8d9984403696225ef83a1573cbbcb4e79db13" + integrity sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q== + y18n@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz#95ef94f85ecc81d007c264e190a120f0a3c8566b" integrity sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w== +y18n@^5.0.5: + version "5.0.5" + resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.5.tgz#8769ec08d03b1ea2df2500acef561743bbb9ab18" + integrity sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg== + yallist@^2.1.2: version "2.1.2" resolved "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + yaml@^1.10.0: version "1.10.0" resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz#3b593add944876077d4d683fee01081bd9fff31e" @@ -3010,6 +3605,11 @@ yargs-parser@^13.1.2: camelcase "^5.0.0" decamelize "^1.2.0" +yargs-parser@^20.2.2: + version "20.2.4" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" + integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== + yargs@^13.3.2: version "13.3.2" resolved "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz#ad7ffefec1aa59565ac915f82dccb38a9c31a2dd" @@ -3025,3 +3625,21 @@ yargs@^13.3.2: which-module "^2.0.0" y18n "^4.0.0" yargs-parser "^13.1.2" + +yargs@^16.1.1: + version "16.2.0" + resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + +yocto-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==