Commit graph

43 commits

Author SHA1 Message Date
Eric Liu
6bf72d4602
fix(types): loosen icon prop type to any (#2095)
Fixes https://github.com/carbon-design-system/carbon-icons-svelte/issues/207

`carbon-icons-svelte@13` and `carbon-pictograms-svelte@13` now  
only support TypeScript for Svelte 4/5.

The new `Component` type is incompatible with the `icon` prop in  
`carbon-components-svelte`, causing a type error with Svelte 5, as  
`typeof SvelteComponent` doesn't match the new `Component` type.

Since `Component` isn't available in Svelte 3/4, this PR changes  
the `icon` prop type to `any` for compatibility across Svelte 3, 4, and 5.
2025-02-02 19:49:53 -08:00
Eric Liu
8e996dc683 chore: format files with Prettier 3 2024-11-11 21:35:48 -08:00
Eric Liu
2f026f792a
feat(typescript)!: support svelte 4 (#1773)
Closes #1753 

The minimum Svelte version required for TypeScript users is now 3.55.
2023-07-19 09:44:56 -07:00
Eric Liu
b015d76f15 chore(a11y): ignore svelte@4 a11y warnings (#1769) 2023-07-13 10:50:51 -07:00
metonym
c6373dc9b6
fix(a11y): ignore false positive a11y warnings (#1522)
Fixes #1517
2022-10-13 21:37:52 -07:00
metonym
9fcf9855e6
fix(composed-modal): node to focus is possibly null (#1364)
Fixes #1360
2022-06-22 06:24:02 -07:00
brunnerh
37aa207c85
refactor(modal): simply nested modals logic (#1339)
Cleans up #1331 to reuse shared logic between `Modal`, `ComposedModal`.
2022-06-07 07:43:02 -07:00
metonym
22f93ee675
fix(modal): nested modals should correctly toggle the body class (#1331)
Fixes #1324
2022-06-02 17:56:07 -07:00
metonym
cae1f1939e
fix(modal): remove close button title attribute, add aria-hidden to icons (#1308)
* fix(modal): close button should not have a title

* fix(modal): close icon should not have aria-label

* fix(modal): close button icons should have `aria-hidden="true"
2022-05-18 19:00:21 -07:00
metonym
ba58ba8f00
refactor: use icons from carbon-icons-svelte@11 (#1227)
* chore: update ignore rules, remove unused files

* refactor(icons): use icons from carbon-icons-svelte@11

* docs(time-picker): fix default value

* chore: upgrade carbon-icons-svelte to v11

* docs: update examples to use icons from carbon-icons-svelte@11

* docs: update number of icons [ci skip]
2022-04-03 11:57:28 -07:00
metonym
2657ce71c2
docs: fix formatting, broken link (#1172)
* chore: remove extra space in description comment

* docs(data-table): fix formatting

* docs(checkbox): fix broken link

* chore(deps-dev): bump deps

* Run "yarn build:docs"
2022-03-13 19:03:15 -07:00
Gregor Wassmann
a8039a4d1e
feat(modal): support primaryButtonIcon prop (#1047) 2022-01-29 09:35:08 -08:00
Eric Liu
dfd53ce09b
Refactor onDestroy to use onMount return function (#914)
* refactor(select-item): replace onDestroy with onMount return function

* refactor(date-picker): replace onDestroy with onMount return function

* refactor(switch): replace onDestroy with onMount return function

* refactor(composed-modal): replace onDestroy with onMount return function
2021-11-17 13:20:26 -08:00
Eric Liu
040e3d3372
Inline carbon icons, remove carbon-icons-svelte from dependencies (#904)
* feat(icons): inline carbon icons used by components

* feat(icons): update svelte components to use inlined carbon icons

* breaking(deps): remove carbon-icons-svelte

* chore(deps-dev): install carbon-icons-svelte as a devDependency
2021-11-11 08:54:45 -08:00
Eric
6db4112b40
Fix a11y-mouse-events warning, update docs (#765)
* docs: update number of available Carbon icons

* docs: add svelte:head example for loading CDN styles

* chore(deps-dev): upgrade svelte to 3.40.1

* fix(a11y): disable a11y-mouse-events-have-key-events warning #760

* fix(deps): upgrade carbon-icons-svelte to v10.36.0 to avoid a11y warnings #760

* refactor(overflow-menu): remove formatStyle utility

* docs: links in paragraphs should be inline

* docs: add note on using all styles for dynamic theming
2021-07-26 08:40:05 -07:00
Eric Liu
0a69f8ec74
Various features/fixes (#727)
* fix(data-table): export useStaticWidth prop

* docs(data-table): add static width example

* fix(data-table): do not render table header if title/description not provided

* feat(modal): dispatch "click:button--primary" as an alias to "submit"

* test: update DataTable types test

* test(modal): update modal type tests

* docs(data-table): add clear reminder to key headers/rows
2021-07-05 13:22:56 -07:00
Eric Liu
f4a3646cb4
feat(modal): support 3-button Modal, ComposedModal (#724)
* feat(modal): support 3-button modal #528, #472

* fix(modal): "supercede" --> "supersede"

* test(modal): test secondaryButtons prop, updated click:button--secondary custom event

* docs(modal): add multiple secondary button example for ComposedModal

* docs(modal): rename example

* fix(modal): do not render secondary button if secondaryButtonText is falsy

* docs(composed-modal): add button to re-open modal
2021-07-05 08:44:51 -07:00
dqzx
ab04bb7564
Fix: trap tab focus within modal (#716)
* Fix: trap tab focus within modal

* Fix: trap tab focus within ComposedModal

* change selector criteria for tabbable elements based on react component logic
2021-07-03 03:42:35 -07:00
Eric Liu
fa9b90cd79
Alignment with Carbon version 10.32 (#588)
* feat(code-snippet): add copy functionality

- docs: add custom feedback copy text example

* feat(tile): support disabled state for SelectableTile, RadioTile

Closes #539

* build(rollup): add clipboard-copy to globals

* feat(copy-button): add copy functionality

* feat(content-switcher): deprecate the light prop

- docs: remove the light variant example

* fix(toolbar-search): remove outer div

* feat(search): add searchClass prop

* fix(composed-modal): set hasScrollingContent class on ModalBody

* docs(data-table): add expandable size examples

* feat(tooltip): add TooltipFooter component

* fix(time-picker): correctly display invalidText

* feat(breadcrumb): support overflow menu

* feat(multi-select): export inputRef prop

* chore(deps-dev): upgrade carbon-components to v10.32.0

* feat(form): add noMargin prop to FormGroup

* docs(tooltip): document TooltipFooter

* feat(context-menu): support danger kind for ContextMenuOption

* feat(data-table): support rendering empty table header in skeleton

* refactor(types): use shorter import path in DataTableSkeleton

* feat(data-table): allow sorting to be disabled for a specific header

* docs(data-table): update example to desort the Protocol header

As an example, it makes more sense because all the values ("http") are the same.

* fix(context-menu): set initial y offset of context menu based on window height #577

* fix(context-menu): render submenu based on viewport constraints #577
2021-04-02 13:31:53 -07:00
Eric Liu
7cd3723960
Alignment with Carbon version 10.28 (#505)
* chore(deps-dev): remove @carbon/themes

* chore(deps-dev): bump devDependencies

* fix(tabs): forward click event to Tab

* feat(toggle): dispatch toggle event

* feat(tag): dispatch close event

* feat(tooltip-icon): make tooltipText slottable

* feat(dropdown): add hideLabel prop

* docs(select): add "Hidden label" example

* refactor(modal): use class directive

* feat(modal): dispatch transitionend event

* chore(deps-dev): upgrade carbon-components to 10.28.0-rc.0

* feat(date-picker): add warn state

* feat(tag): support small size variant

* fix(search): add semantic role

* feat(toolbar-search): add disabled state

* fix(composed-modal): add aria-label prop, update header semantic tags

* chore(deps-dev): upgrade carbon-components to v10.28

* docs(overflow-menu): add light variant example

* docs(link): document OutboundLink in Component API

* chore(tooltip-icon): rename slot to "tooltipText"

* docs(component-api): wrap code blocks to minimize width

* docs(aspect-ratio): remove inline outline style

* fix(tab): do not trigger focus when mounting

* docs(tabs): add reactive example

Closes #438
2021-02-05 05:59:10 -08:00
Eric Liu
f2a3f8d2e1
Alignment with Carbon version 10.27 (#495)
* chore(deps-dev): bump devDependencies

* docs: update number of available carbon icons

* feat(notification): distinguish dispatched close event between click/timeout

* fix(notification): prevent class from being overriden by $$restProps

* docs(notification): improve example body copy

* fix(notification): remove notificationType prop

* refactor(notification): resolve svelte file in imports

* fix(notification): prevent class from being overridden by $$restProps

* feat(notification): update TS signature for dispatched close event

* docs: update contributing

* fix(loading): adjust spinner styles

* feat(tag): support custom icon variant

* feat(tile): add optional expand/collapse icon labels to ExpandableTile

* feat(code-snippet): support disabled state for single and multi-line types

* fix(code-snippet): remove impossible class directive

* fix(code-snippet): showMoreLess button size should be "field", not "small"

* fix(password-input): disable visibility button

- set default values for tooltipAlignment, tooltipPosition

* fix(text-input): add missing warning field wrapper class

* feat(button): infer hasIconOnly using $$slots API

- requires Svelte version >=3.25

* docs(button): add danger tertiary, icon-only example

* feat(button): set default values for tooltip alignment, position

* docs: document dynamic theming

* fix(modal): correctly set class props #482

* fix(form): forward submit event in FluidForm #487

* feat(dropdown): support warning state

* feat(multi-select): support warning state

* fix(multi-select): prevent dropdown from opening if disabled

* feat(number-input): support warning state

* chore(deps-dev): upgrade devDependencies

* docs:  bump @carbon/themes, carbon-components

* refactor(data-table): co-locate DataTableSkeleton with DataTable

* docs: update number of pictograms

* fix(password-input): add missing "bx--btn" class to visibility toggle

* docs: increase z-index for component preview
2021-01-27 13:29:20 -08:00
Eric Liu
3921c0606d
fix(modal): remove exraneous focus ring (#491) 2021-01-22 06:17:24 -08:00
Eric Liu
3214d8563f
Reactive audit (#449)
* refactor(search): resolve svelte file paths

* docs(Search): add reactive example

* refactor(tag): use class name directive for tag types, resolve svelte icon path

* chore(button-skeleton): deprecate small prop

* fix(breadcrumb-item): type default slot

* refactor(breadcrumb-skeleton): omit unused index

* refactor(aspect-ratio): use class name directive

* refactor(accordion): use the class name directive, resolve svelte icon paths

* refactor(code-snippet): use class name directive, resolve svelte icon paths

* fix(code-snippet-skeleton): CodeSnippetSkeleton can only be single or multi

* refactor(content-switcher): use class name directive

* docs(content-switcher): add reactive example

* docs(content-switcher): remove unused import

* docs(toggle): add reactive example

* refactor(tooltip-definition): use class name directive

* refactor(tooltip-icon): use class name directive

* refactor(tooltip): resolve svelte icon import

* fix(select): type dispatched change event

* refactor(select): resolve svelte icon import

* feat(select-item): spread rest props, avoid $ variable name

* fix(pagination-nav): type dispatched events

* refactor(pagination): resolve svelte imports

* fix(pagination): type dispatched update event

* fix(overflow-menu): type dispatched close event

* fix(number-input): type dispatched change event

* refactor(modal): use class name directive, resolve svelte imports

* refactor(inline-loading): use class name directive, resolve svelte imports

* refactor(composed-modal): resolve svelte icon imports

* refactor(combo-box): resolve svelte imports

* fix(fluid-form): rest props should not override Form class

* refactor(progress-step): resolve svelte icon imports
2020-12-06 03:59:30 -08:00
Eric Liu
eed617433b test: add TS types 2020-11-19 14:16:01 -08:00
Eric Liu
56718c633d
Merge branch 'master' into rewrite-tyepscript-definitions 2020-11-19 06:16:50 -08:00
weaseldotro
c95e1fe994
Use loose equal in ComposedModal
Co-authored-by: Eric Liu <ericyl.us@gmail.com>
2020-11-17 09:28:53 +02:00
weaseldotro
b754e0cf79
feat(ComposedModal): allow using null for selectorPrimaryFocus to disable auto focus 2020-11-09 11:14:56 +02:00
Eric Liu
75d4b4cf03 refactor(types): shorten ref, id JSDocs, use CarbonIcon type, export component props 2020-11-06 11:30:46 -08:00
Eric Liu
d38e6d8be6 refactor: update/fix JSDoc props 2020-11-04 06:04:25 -08:00
Eric Liu
05932065dc fix(composed-modal): perform null check before focusing element
Fixes error in Sapper
2020-10-21 06:19:23 -07:00
weaseldotro
2afb888485
fix(ComposedModal): remove bx--body--with-modal-open from body classes after destroy
When onMount is async, the returned function is not executed: https://github.com/sveltejs/svelte/issues/4927
Because the class is not remove from the body, the code should be moved to a onDestroy function.
2020-10-20 11:09:33 +03:00
Eric Liu
378fe06e03 chore: remove storybook 2020-10-14 16:23:44 -07:00
weaseldotro
99587ba16c
fix ComposedModal body classes 2020-10-07 16:47:29 +03:00
josefaidt
398887a3d3 feat(prettier): add svelteBracketNewLine 2020-09-24 10:50:34 -05:00
Eric Liu
e75be23a49 feat(modal): add preventCloseOnClickOutside prop
Closes #266
2020-09-19 09:37:36 -07:00
Eric Liu
42b8159b1c chore(prettier): use svelteStrictMode 2020-09-04 16:35:49 -07:00
Eric Liu
322b238cf0 chore(deps-dev): bump prettier, prettier-plugin-svelte 2020-09-04 16:34:28 -07:00
Eric Liu
a5721a36dd chore(changelog): v0.9.6 notes 2020-08-15 06:20:43 -07:00
Eric Liu
52a10d3acd fix(modal): prevent clicking inside inner modal from closing the modal
- revert adding a `stopPropagation` modifier to the PasswordInput "toggle password" button
2020-08-12 12:46:07 -07:00
Eric Liu
6ca6af94eb fix(password-input): stop propagation when toggling input type
#229
2020-08-12 07:18:57 -07:00
Eric Liu
f30755b237 chore: complete first pass of apply jsdoc annotations to component props 2020-07-26 17:42:12 -07:00
Eric Liu
773b18d314 chore: add more prop annotations 2020-07-25 06:26:49 -07:00
Eric Liu
2200b29b92 chore: lift components folder 2020-07-19 09:06:08 -07:00