Commit graph

71 commits

Author SHA1 Message Date
metonym
714f47a635
fix(types): dispatched events without a detail value should be null (#1124)
Currently, dispatched events without `e.detail` have a type of `any`.

We can be more specific as a `CustomEvent` detail value is `null`.
2022-02-21 09:42:42 -08:00
metonym
df4ed9d75a
fix(types): use @component comments for deprecation notices (#1111)
The Svelte Language Server allows component-level comments through `<!-- @component ... -->` syntax.

Deprecation notices for components should be moved from the script block to the markup template.
2022-02-19 18:50:25 -08:00
metonym
16790daaa9
fix(ui-shell): use semantic hr in HeaderPanelDivider to render dividers (#1093) 2022-02-12 08:07:21 -08:00
metonym
a3c329a2e8
fix(ui-shell): prevent default behavior when pressing Space (#1084) 2022-02-10 19:27:59 -08:00
metonym
1939e4328d
fix(ui-shell): fix HeaderNavMenu accessibility, undefined context (#1079)
Fixes:

* hotfix: remove toggle accessor from HeaderNavMenu

* hotfix(ui-shell): HeaderNavMenu context is possibly undefined

* fix: apply a11y navigation menubar attributes
2022-02-10 08:11:56 -08:00
metonym
18eb1e2649
fix(ui-shell): HeaderNavMenu should close when pressing Enter (#1073)
Fixes:

- pressing "Enter" on a `HeaderNavMenuItem` should close the menu
- tab blurring the last item in an open menu should close the menu
- remove "role" to fix a11y warning
2022-02-10 06:46:11 -08:00
Eric Liu
502f9379fa
Fix a11y warnings emitted by Svelte v3.45 (#989)
* chore(deps-dev): bump svelte to version 3.45

* fix: resolve a11y violations

Fixes #988
2022-01-10 11:57:52 -10:00
Eric Liu
27ba4350cf
Align v10.48 (#907)
* chore(deps-dev): upgrade carbon-components to v10.48.0

* feat(ui-shell): support HeaderNavMenu with current item

* refactor(tile): remove unnecessary "position: relative" style

* refactor(tile): remove unused ref

* feat(inline-notification): make title/subtitle slottable

Closes #883

* feat(toast-notification): make title/subtitle/caption slottable

* chore(notification): deprecate NotificationTextDetails
2021-11-12 16:25:02 -08:00
Eric Liu
36f6a327b2
hotfix: fix remaining imports from carbon-icons-svelte (#905) 2021-11-12 13:09:43 -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 Liu
7b65a15345
Omit explicit "from carbon-icons-svelte" from icon prop definitions (#866)
* fix(types): update description for icon props #865

* docs(component-api): remove hardcoded Carbon Svelte icon description
2021-10-20 13:48:52 -07:00
Eric Liu
b21600c9d6
feat(types): loosen icon prop type to allow any Svelte component #806 (#853)
* feat(types): loosen type for Carbon icons #806

* Add closeIcon option and remove stopPropagation on:click in HeaderAction (#840)

* Remove stopPropagation on:click

Remove stopPropagation on:click helps when you have more then one acction to switch between actions tabs

* fix bug for default icon

* add closeIcon attribute to HeaderAction

* feat(types): loosen type for Carbon icons #806

* chore: update TreeView, HeaderAction icon types

Co-authored-by: Daniel Miedzik <daniel.miedzik@gmail.com>
2021-10-15 16:40:23 -07:00
Daniel Miedzik
1581bc0122
Add closeIcon option and remove stopPropagation on:click in HeaderAction (#840)
* Remove stopPropagation on:click

Remove stopPropagation on:click helps when you have more then one acction to switch between actions tabs

* fix bug for default icon

* add closeIcon attribute to HeaderAction
2021-10-15 16:23:34 -07:00
Eric Liu
a62e9c0c3c
feat(ui-shell): export expansionBreakpoint as a prop in Header, SideNav #715 (#723)
Closes #715
2021-07-05 08:44:21 -07:00
Eric Liu
e51f50da0c
Align v10.38 (#698)
* chore(deps-dev): upgrade carbon-components to v10.38.0

* feat(text-input): support read-only variant

* docs: use consistent lingo for inline variant examples

* docs(popover): add Popover alignment example

* fix(file-uploader): adjust markup to avoid accessibility errors

Ref: 0dfde60e3

* fix(inline-loading): use error filled icon

* fix(inline-loading): render iconDescription as title in error/warning icons

Ref: 51c53c923

* fix(structured-list): update accessibility attributes

* fix(tooltip-definition): use span instead of div

Ref: cb6de3025

* fix(multi-select): close menu when blurring the last filterable option

* fix(multi-select): open/focus field for filterable multiselect #635

* fix(multi-select): unblock focus when blurring input #635

* fix(combo-box): select correct item with keys, allow input after clearing #195

* fix(combo-box): update input text if item is selected

* feat(combo-box): render checkmark icon for selected item

* fix(ui-shell): toggle SideNav rail when clicking the hamburger menu #699

* fix(context-menu): update context menu classes #684

* docs(context-menu): improve demo instructions #684

* fix(context-menu): close menu when clicking anywhere
2021-06-27 08:46:57 -07:00
Eric Liu
8ddf2def8b
Align v10.36 (#696)
* chore(deps-dev): upgrade carbon-components to v10.36.0

* feat(structured-list): add condensed, flush props

* fix(structured-list): deprecate the border prop

* fix(code-snippet): set min/max height for multi-line code snippet #656

Fixes #656

* fix(image-loader): make SSR compatible using a window type check guard

* docs(tag): add separate disabled example for filterable/interactive tags

* docs: update number of supported chart types

* feat(side-nav): support rail variant

* feat(ui-shell): add isSelected prop to HeaderNavItem

* fix(ui-shell): default isSelected to false in SideNavMenuItem

* fix(text-area): forward missing keydown event #665

Fixes #665

* feat: forward keyup event to components with inputs

* feat(checkbox): make labelText slottable #563

Closes #563

* feat: make labelText slottable

Related #563

* docs(component-api): account for undefined type

* docs(ui-shell): link to correct rail source

* fix(ui-shell): default isSelected in HeaderNavItem to false
2021-06-26 14:39:49 -07:00
Eric Liu
f9909827d0
Align v10.34 (#621)
* feat(theme): add g80 theme

* docs(data-table): use link with icon variant

* feat(search): support expandable variant

* fix(file-uploaded): use semantic p element instead of strong

* feat(side-nav): dispatch open, close, click:overlay events

* refactor(ui-shell): remove usage of deprecated Icon component

* feat(ui-shell): allow custom hamburger menu icons

* feat(button): support xl size

* fix(code-snippet): wrap code element with pre

* refactor(button): use button specific tooltip class for icon-only variant

* feat(password-input): support warning, inline props

* feat(data-table): support medium size
2021-06-25 03:45:30 -07:00
Vegard Andreas Larsen
93f14c92e4
Fix "Cannot use import statement outside a module" (#594)
* Fix "Cannot use import statement outside a module"

Using `HamburgerMenu` from a SvelteKit project would result in the following error:

```
4:01:51 PM [vite] Error when evaluating SSR module /node_modules/carbon-components-svelte/src/UIShell/SideNav/HamburgerMenu.svelte:
/home/vegard/beat/backoffice-sapper/node_modules/carbon-icons-svelte/lib/Close20/index.js:1
import Close20 from "./Close20.svelte";
^^^^^^

SyntaxError: Cannot use import statement outside a module
    at wrapSafe (internal/modules/cjs/loader.js:1101:16)
    at Module._compile (internal/modules/cjs/loader.js:1149:27)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1205:10)
    at Module.load (internal/modules/cjs/loader.js:1034:32)
    at Function.Module._load (internal/modules/cjs/loader.js:923:14)
    at Module.require (internal/modules/cjs/loader.js:1074:19)
    at require (internal/modules/cjs/helpers.js:72:18)
    at nodeRequire (/home/vegard/beat/backoffice-sapper/node_modules/vite/dist/node/chunks/dep-66eb515d.js:69044:17)
    at ssrImport (/home/vegard/beat/backoffice-sapper/node_modules/vite/dist/node/chunks/dep-66eb515d.js:69002:20)
    at eval (/node_modules/carbon-components-svelte/src/UIShell/SideNav/HamburgerMenu.svelte:7:31) (x3)
```

To fix it, we need to reference the `.svelte` files for the icons.

* Fix DataTable icon import.
2021-04-12 16:25:15 -07:00
Eric Liu
63e7965745
Fixes (#575)
* fix(context-menu): only prevent default keydown behavior if menu is open

* docs(notification): update copy

* docs(select): update item groups example to use hidden default option

* docs: increase max-height to render UIShell, UnorderedList items

* fix(ui-shell): remove iconDescription prop from HeaderNavMenu #566

Fixes #566
2021-03-20 16:28:29 -07:00
Eric Liu
1b234ca2e3
Alignment with Carbon version 10.30 (#559)
* feat(toolbar): forward "clear" event in ToolbarSearch

* docs(search): add on:clear example

* fix(ui-shell): set aria-hidden in SideNav

Ref c2b4f1f00

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

* fix(text-input): use bx--text-input class for TextInputSkeleton

* fix(radio-button): only render span if labelText is truthy

* docs(password-input): add custom tooltip example

* feat(button): add isSelected prop for icon-only, ghost buttons

* feat(radio-button): add legendText prop to RadioButtonGroup

* docs(tag): add filterable (disabled) variant

* feat(tag): add interactive prop

* chore(number-input): deprecate the mobile variant

Mobile variant styles will no longer work.

* feat(button): set aria-pressed attribute if icon-only, ghost button is selected

* fix(multi-select): type dispatched select event

* fix(button): remove redundant "button" role

* feat(icon): deprecate Icon, IconSkeleton

* feat(ui-shell): make SideNavMenuItem text slottable

* fix(list-box): update styles for ListBoxSelection

* fix(list-box): temporarily apply override styles to ListBoxMenuIcon for chevron

* fix(tag): set disabled prop on interactive tag

* docs(button): extract selected, icon-only button example

* feat(tooltip): elevate z-index of tooltip when open

* feat: forward restProps to input element

* fix(types): fix TimePicker test to pass svelte-check

* feat: add ImageLoader component

* test: add ImageLoader

* feat: add LocalStorage component

* test(local-storage): fix invalid file

* chore(docs): use green tag type
2021-03-13 14:53:37 -08:00
josef
08249d6764
fix(SideNav): apply overlay for non-fixed sidenav instances, ref #544 (#562) 2021-03-12 12:35:01 -08:00
Eric Liu
14e714fa61
Alignment with Carbon version 10.29 (#529)
* chore: patch prettier-plugin-svelte

* docs(tag): add filterable small tag example

* feat(ui-shell): add SideNavDivider

* feat(combo-box): support warning state

* docs(combo-box): add invalid state example

* fix(progress-step): add title to warning icon

* docs(progress-indicator): add invalid step example

* docs(progress-indicator): add disabled steps example

* feat(truncate): add text truncation component and action

* docs(radio-tile): fix light variant example

* fix(side-effects): add pre-compiled CSS to library side effects

* refactor(css): use shorthand scss imports, add comments

* refactor(truncate): rename "direction" prop to "clamp"

* chore(deps-dev): bump carbon-components to v10.29.0

* feat(combo-box): add direction prop

* feat(dropdown): add direction prop

* feat(multi-select): add direction prop
2021-02-19 16:08:16 -08:00
Eric Liu
3d002f3246
chore(deps-dev): upgrade prettier-plugin-svelte (#498) 2021-01-27 15:02:02 -08:00
Eric Liu
63ef51209d
feat: make renderIcon/icon prop consistent (#496) 2021-01-27 14:16:07 -08:00
Eric Liu
48012b9ca0
Minor fixes to align with v10.26 (#490)
* fix(data-table): remove aria-hidden prop from ToolbarSearch

* fix(ui-shell): deprecate ariaLabel prop in HeaderNav

- remove menubar role from HeaderNav
- obtain "aria-label" and "aria-labelledby" from $$props

* fix(slider): add label id
2021-01-21 15:28:34 -08:00
josef
a9e63e0038
feat(UIShell): only render hamburger menu if SideNav exists (#457)
* feat(UIShell): only render hamburger menu if SideNav exists

* feat(SideNav): store logic moved to onMount
2020-12-09 09:14:32 -08:00
Eric Liu
e9016a5f8d
fix(ui-shell): prevent default behavior for Arrow{Up|Down} in HeaderSearch (#432) 2020-11-28 12:01:21 -08:00
Eric Liu
03462e79a7
fix(ui-shell): set selectedResultIndex in HeaderSearch on click (#430) 2020-11-28 06:17:33 -08:00
Eric Liu
f4c940d5ee
Make UI Shell HeaderAction panel transition configurable (#419)
* fix(ui-shell): remove fly transition from hamburger menu

* feat(header-action): make panel transition configurable

* chore: rebuild types, docs

* docs(ui-shell): document transition prop in Header app switcher example
2020-11-26 17:14:07 -08:00
Eric Liu
30cfc842d5
Refactor UI Shell global search component (#417)
* feat(ui-shell): refactor UI Shell search component

* fix(ui-shell): dispatched event is "select", not "search"

* test(header-search): validate HeaderSearch types

* fix(header-search): selecting a result should reset the search

* feat(header-search): deefault selectedResultIndex should be 0

Reset selectedResultIndex, value after dispatching.

* docs(header-search): demo basic filtering

* chore: rebuild types, docs

* feat(header-search): pass index as a slot prop
2020-11-26 15:42:15 -08:00
Eric Liu
7a1480f0ed fix(types): prefix icon type with "typeof" 2020-11-19 10:41:15 -08:00
Eric Liu
56718c633d
Merge branch 'master' into rewrite-tyepscript-definitions 2020-11-19 06:16:50 -08:00
josefaidt
fd56f67705 refactor(SideNav): simplify collapsed logic 2020-11-18 08:42:37 -06:00
josefaidt
07ce05e344 refactor(SideNav): simplify collapsed logic 2020-11-13 12:43:10 -06:00
josefaidt
4e88bcc5b8 refactor(SideNav): collapse logic should differ from fixed variants 2020-11-12 08:07:28 -06:00
josefaidt
9d0a0b00b7 feat(UIShell): add persistentHamburgerMenu prop to header 2020-11-12 08:03:20 -06: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
8950920a10 fix(ui-shell): initialize platformName as empty string
Prevents "undefined" from being rendered.
2020-10-24 14:31:40 -07:00
Eric Liu
cf2dc12546 refactor(ui-shell): remove redundant conditional in HeaderGlobalAction 2020-10-24 14:24:30 -07:00
Eric Liu
378fe06e03 chore: remove storybook 2020-10-14 16:23:44 -07:00
Eric Liu
46c611f638 chore: run prettier [ci skip] 2020-10-14 15:40:33 -07:00
Eric Liu
e382038850
Merge pull request #321 from josefaidt/320-add-rel-all-links
chore(links): add rel="" to all links
2020-10-13 13:09:13 -07:00
weaseldotro
4e2b675866
fix(HeaderAction): panel closes when user clicks inside the browser window, not just inside the page body 2020-10-10 10:24:11 +03:00
josefaidt
266443bf9e chore(HeaderNavItem): add rel="" 2020-10-08 14:22:27 -05:00
josefaidt
32077693e0 chore(links): add rel="" to all links 2020-10-08 14:02:08 -05:00
josefaidt
d65d9d406c chore(UIShell): update JSDoc 2020-10-01 15:20:49 -05:00
josefaidt
d1e9fc7225 feat(UIShell): export ref for all UIShell components 2020-10-01 15:13:40 -05:00
weaseldotro
34aba7947e
Add on:click to HeaderPanelLink 2020-09-26 20:08:17 +03:00
josefaidt
398887a3d3 feat(prettier): add svelteBracketNewLine 2020-09-24 10:50:34 -05:00