From a56036818a710324934be774baf05026088713d3 Mon Sep 17 00:00:00 2001 From: Philipp Siekmann Date: Wed, 20 Nov 2024 11:45:54 +0100 Subject: [PATCH] merge main --- apps/swirl-docs/CHANGELOG.md | 592 ++++++++ apps/swirl-docs/package.json | 8 +- .../EndpointDescription/Parameter.tsx | 100 +- .../EndpointDescription/ParameterFactory.tsx | 67 +- .../components/Documentation/Expandable.tsx | 48 + .../swirl-docs/src/lib/docs/src/docs.model.ts | 8 +- .../ApiDocumentation/EndpointMapper.ts | 110 +- .../ApiDocumentation/FlipApiExtensions.ts | 18 + packages/bridge/CHANGELOG.md | 528 +++++++ packages/bridge/README.md | 19 +- packages/bridge/package.json | 4 +- packages/bridge/src/theming/theming.spec.ts | 18 +- packages/bridge/src/theming/theming.ts | 18 +- packages/bridge/src/theming/theming.types.ts | 9 +- packages/bridge/src/types.ts | 4 +- .../swirl-components-angular/CHANGELOG.md | 925 +++++++++++++ .../swirl-components-angular/package.json | 6 +- packages/swirl-components-react/CHANGELOG.md | 925 +++++++++++++ packages/swirl-components-react/package.json | 4 +- packages/swirl-components/.eslintrc.js | 1 + .../.storybook/preview-head.html | 2 +- packages/swirl-components/CHANGELOG.md | 622 +++++++++ packages/swirl-components/icons.json | 2 +- packages/swirl-components/package.json | 4 +- .../swirl-components/public/menu-item-1.png | Bin 0 -> 7307 bytes .../swirl-components/public/menu-item-2.png | Bin 0 -> 7583 bytes .../swirl-components/public/menu-item-3.png | Bin 0 -> 7232 bytes .../swirl-components/public/menu-item-4.png | Bin 0 -> 7735 bytes packages/swirl-components/public/sample.gif | Bin 0 -> 420354 bytes packages/swirl-components/src/components.d.ts | 526 ++++++- .../swirl-app-bar/swirl-app-bar.css | 6 +- .../swirl-app-icon/swirl-app-icon.css | 1 + .../swirl-app-icon/swirl-app-icon.spec.tsx | 2 +- .../swirl-app-icon/swirl-app-icon.tsx | 4 +- .../swirl-app-layout-base.css | 194 ++- .../swirl-app-layout-transitions.css | 22 + .../swirl-app-layout.spec.tsx | 41 - .../swirl-app-layout/swirl-app-layout.tsx | 298 +++- .../swirl-avatar-group/swirl-avatar-group.tsx | 5 +- .../src/components/swirl-box/swirl-box.css | 44 +- .../components/swirl-box/swirl-box.spec.tsx | 6 +- .../src/components/swirl-box/swirl-box.tsx | 72 +- .../components/swirl-button/swirl-button.css | 67 +- .../swirl-button/swirl-button.spec.tsx | 2 +- .../components/swirl-button/swirl-button.tsx | 1 + .../src/components/swirl-chip/swirl-chip.tsx | 6 +- .../swirl-date-input/swirl-date-input.tsx | 11 +- .../swirl-date-picker/swirl-date-picker.tsx | 6 +- .../swirl-file-viewer.spec.tsx | 4 +- .../swirl-file-viewer/swirl-file-viewer.tsx | 9 +- .../swirl-file-viewer-fallback.css | 17 + .../swirl-file-viewer-fallback.tsx | 68 + .../swirl-file-viewer-pdf.tsx | 72 +- .../swirl-form-control/swirl-form-control.css | 47 + .../swirl-form-control.spec.tsx | 2 +- .../swirl-form-control/swirl-form-control.tsx | 19 +- .../icons/swirl-icon-dock-left-collapse.tsx | 65 + .../icons/swirl-icon-dock-left-expand.tsx | 65 + .../swirl-icon/icons/swirl-icon-gif.tsx | 6 +- .../swirl-icon/icons/swirl-icon-live.tsx | 74 + .../icons/swirl-icon-post-approval.tsx | 107 ++ .../swirl-icon/icons/swirl-icon-present.tsx | 74 + .../icons/swirl-icon-public-off.tsx | 65 + .../swirl-icon/icons/swirl-icon-public.tsx | 65 + .../icons/swirl-icon-remove-circle.tsx | 71 + .../icons/swirl-icon-screenshare-off.tsx | 74 + .../icons/swirl-icon-screenshare.tsx | 74 + .../icons/swirl-icon-video-player.tsx | 74 + .../swirl-image-grid-item.css | 27 + .../swirl-image-grid-item.stories.ts | 3 +- .../swirl-image-grid-item.tsx | 110 +- .../swirl-image-grid/swirl-image-grid.css | 3 +- .../swirl-image-grid.stories.ts | 6 +- .../swirl-image-grid/swirl-image-grid.tsx | 19 +- .../swirl-lightbox/swirl-lightbox.spec.tsx | 33 + .../swirl-lightbox/swirl-lightbox.tsx | 67 +- .../src/components/swirl-menu/swirl-menu.css | 2 +- .../swirl-option-list-item.css | 19 +- .../swirl-option-list-item.spec.tsx | 18 + .../swirl-option-list-item.stories.ts | 5 +- .../swirl-option-list-item.tsx | 10 + .../swirl-pagination/swirl-pagination.tsx | 4 +- .../swirl-pdf-reader/swirl-pdf-reader.tsx | 4 +- .../components/swirl-radio/swirl-radio.css | 3 + .../swirl-radio/swirl-radio.stories.ts | 1 + .../components/swirl-radio/swirl-radio.tsx | 16 +- .../swirl-resource-list.spec.tsx | 2 +- .../swirl-resource-list.tsx | 3 + .../components/swirl-select/swirl-select.css | 46 + .../swirl-select/swirl-select.spec.tsx | 6 +- .../components/swirl-select/swirl-select.tsx | 62 +- .../swirl-shell-layout/swirl-shell-layout.css | 95 +- .../swirl-shell-layout.spec.tsx | 8 +- .../swirl-shell-layout.stories.ts | 97 +- .../swirl-shell-layout/swirl-shell-layout.tsx | 284 +++- .../swirl-shell-navigation-item.css | 122 +- .../swirl-shell-navigation-item.spec.tsx | 24 +- .../swirl-shell-navigation-item.stories.ts | 8 +- .../swirl-shell-navigation-item.tsx | 75 +- .../swirl-table-cell/swirl-table-cell.css | 12 + .../swirl-table-column/swirl-table-column.css | 11 + .../swirl-table-row-group.css | 8 +- .../components/swirl-table/swirl-table.css | 12 +- .../swirl-table/swirl-table.spec.tsx | 2 +- .../components/swirl-table/swirl-table.tsx | 179 ++- .../src/components/swirl-tag/swirl-tag.css | 13 + .../components/swirl-tag/swirl-tag.spec.tsx | 6 +- .../src/components/swirl-tag/swirl-tag.tsx | 4 + .../swirl-text-input/swirl-text-input.css | 26 + .../swirl-text-input.spec.tsx | 2 +- .../swirl-text-input/swirl-text-input.tsx | 16 +- .../src/components/swirl-text/swirl-text.css | 32 +- .../components/swirl-text/swirl-text.spec.tsx | 4 +- .../src/components/swirl-text/swirl-text.tsx | 3 + .../swirl-toggle-button.css | 69 + .../swirl-toggle-button.mdx | 40 + .../swirl-toggle-button.spec.tsx | 50 + .../swirl-toggle-button.stories.ts | 26 + .../swirl-toggle-button.tsx | 34 + .../swirl-toggle-group/swirl-toggle-group.css | 13 + .../swirl-toggle-group/swirl-toggle-group.mdx | 26 + .../swirl-toggle-group.spec.tsx | 94 ++ .../swirl-toggle-group.stories.ts | 31 + .../swirl-toggle-group/swirl-toggle-group.tsx | 103 ++ .../swirl-toolbar/swirl-toolbar.spec.tsx | 2 +- .../swirl-toolbar/swirl-toolbar.tsx | 3 +- .../swirl-tooltip/swirl-tooltip.css | 7 + .../swirl-tooltip/swirl-tooltip.spec.tsx | 4 +- .../swirl-tooltip/swirl-tooltip.tsx | 18 + .../swirl-tree-navigation-item.css | 154 ++- .../swirl-tree-navigation-item.spec.tsx | 30 +- .../swirl-tree-navigation-item.stories.ts | 12 +- .../swirl-tree-navigation-item.tsx | 205 ++- .../swirl-tree-navigation.css | 12 + .../swirl-tree-navigation.mdx | 43 + .../swirl-tree-navigation.spec.tsx | 22 + .../swirl-tree-navigation.stories.ts | 38 + .../swirl-tree-navigation.tsx | 20 + .../swirl-tree-view-item.css | 124 ++ .../swirl-tree-view-item.mdx | 35 + .../swirl-tree-view-item.spec.tsx | 86 ++ .../swirl-tree-view-item.stories.ts | 28 + .../swirl-tree-view-item.tsx | 202 +++ .../swirl-tree-view/swirl-tree-view.css | 15 + .../swirl-tree-view/swirl-tree-view.mdx | 25 + .../swirl-tree-view/swirl-tree-view.spec.tsx | 196 +++ .../swirl-tree-view.stories.ts | 42 + .../swirl-tree-view/swirl-tree-view.tsx | 311 +++++ .../04-update-icons.stories.mdx | 3 +- packages/swirl-components/src/index.ts | 5 +- packages/swirl-components/src/utils.ts | 15 + packages/swirl-components/vscode-data.json | 1218 +++++++++++++++-- packages/swirl-icons/CHANGELOG.md | 47 + .../dart/lib/fonts/flip-legacy-icons.ttf | Bin 14716 -> 14716 bytes .../dart/lib/fonts/swirl-icons.ttf | Bin 99652 -> 106612 bytes .../swirl-icons/dart/lib/swirl_icons.dart | 269 ++-- .../swirl-icons/icons/DockLeftCollapse16.svg | 3 + .../swirl-icons/icons/DockLeftCollapse24.svg | 3 + .../swirl-icons/icons/DockLeftCollapse28.svg | 3 + .../swirl-icons/icons/DockLeftExpand16.svg | 3 + .../swirl-icons/icons/DockLeftExpand24.svg | 3 + .../swirl-icons/icons/DockLeftExpand28.svg | 3 + packages/swirl-icons/icons/Gif16.svg | 2 +- packages/swirl-icons/icons/Gif24.svg | 2 +- packages/swirl-icons/icons/Gif28.svg | 2 +- packages/swirl-icons/icons/Live16.svg | 5 + packages/swirl-icons/icons/Live24.svg | 5 + packages/swirl-icons/icons/Live28.svg | 5 + packages/swirl-icons/icons/PostApproval16.svg | 6 + packages/swirl-icons/icons/PostApproval24.svg | 6 + packages/swirl-icons/icons/PostApproval28.svg | 6 + packages/swirl-icons/icons/Present16.svg | 5 + packages/swirl-icons/icons/Present24.svg | 5 + packages/swirl-icons/icons/Present28.svg | 5 + packages/swirl-icons/icons/Public16.svg | 3 + packages/swirl-icons/icons/Public24.svg | 3 + packages/swirl-icons/icons/Public28.svg | 3 + packages/swirl-icons/icons/PublicOff16.svg | 3 + packages/swirl-icons/icons/PublicOff24.svg | 3 + packages/swirl-icons/icons/PublicOff28.svg | 3 + packages/swirl-icons/icons/RemoveCircle16.svg | 3 + packages/swirl-icons/icons/RemoveCircle24.svg | 3 + packages/swirl-icons/icons/RemoveCircle28.svg | 3 + packages/swirl-icons/icons/Screenshare16.svg | 5 + packages/swirl-icons/icons/Screenshare24.svg | 5 + packages/swirl-icons/icons/Screenshare28.svg | 5 + .../swirl-icons/icons/ScreenshareOff16.svg | 5 + .../swirl-icons/icons/ScreenshareOff24.svg | 5 + .../swirl-icons/icons/ScreenshareOff28.svg | 5 + packages/swirl-icons/icons/VideoPlayer16.svg | 5 + packages/swirl-icons/icons/VideoPlayer24.svg | 5 + packages/swirl-icons/icons/VideoPlayer28.svg | 5 + packages/swirl-icons/package.json | 2 +- .../swirl-tokens/dart/lib/styles.dark.dart | 4 +- .../swirl-tokens/dart/lib/styles.light.dart | 4 +- 195 files changed, 10826 insertions(+), 925 deletions(-) create mode 100644 apps/swirl-docs/src/components/Documentation/Expandable.tsx create mode 100644 packages/swirl-components/public/menu-item-1.png create mode 100644 packages/swirl-components/public/menu-item-2.png create mode 100644 packages/swirl-components/public/menu-item-3.png create mode 100644 packages/swirl-components/public/menu-item-4.png create mode 100644 packages/swirl-components/public/sample.gif create mode 100644 packages/swirl-components/src/components/swirl-file-viewer/viewers/swirl-file-viewer-fallback/swirl-file-viewer-fallback.css create mode 100644 packages/swirl-components/src/components/swirl-file-viewer/viewers/swirl-file-viewer-fallback/swirl-file-viewer-fallback.tsx create mode 100644 packages/swirl-components/src/components/swirl-icon/icons/swirl-icon-dock-left-collapse.tsx create mode 100644 packages/swirl-components/src/components/swirl-icon/icons/swirl-icon-dock-left-expand.tsx create mode 100644 packages/swirl-components/src/components/swirl-icon/icons/swirl-icon-live.tsx create mode 100644 packages/swirl-components/src/components/swirl-icon/icons/swirl-icon-post-approval.tsx create mode 100644 packages/swirl-components/src/components/swirl-icon/icons/swirl-icon-present.tsx create mode 100644 packages/swirl-components/src/components/swirl-icon/icons/swirl-icon-public-off.tsx create mode 100644 packages/swirl-components/src/components/swirl-icon/icons/swirl-icon-public.tsx create mode 100644 packages/swirl-components/src/components/swirl-icon/icons/swirl-icon-remove-circle.tsx create mode 100644 packages/swirl-components/src/components/swirl-icon/icons/swirl-icon-screenshare-off.tsx create mode 100644 packages/swirl-components/src/components/swirl-icon/icons/swirl-icon-screenshare.tsx create mode 100644 packages/swirl-components/src/components/swirl-icon/icons/swirl-icon-video-player.tsx create mode 100644 packages/swirl-components/src/components/swirl-toggle-button/swirl-toggle-button.css create mode 100644 packages/swirl-components/src/components/swirl-toggle-button/swirl-toggle-button.mdx create mode 100644 packages/swirl-components/src/components/swirl-toggle-button/swirl-toggle-button.spec.tsx create mode 100644 packages/swirl-components/src/components/swirl-toggle-button/swirl-toggle-button.stories.ts create mode 100644 packages/swirl-components/src/components/swirl-toggle-button/swirl-toggle-button.tsx create mode 100644 packages/swirl-components/src/components/swirl-toggle-group/swirl-toggle-group.css create mode 100644 packages/swirl-components/src/components/swirl-toggle-group/swirl-toggle-group.mdx create mode 100644 packages/swirl-components/src/components/swirl-toggle-group/swirl-toggle-group.spec.tsx create mode 100644 packages/swirl-components/src/components/swirl-toggle-group/swirl-toggle-group.stories.ts create mode 100644 packages/swirl-components/src/components/swirl-toggle-group/swirl-toggle-group.tsx create mode 100644 packages/swirl-components/src/components/swirl-tree-navigation/swirl-tree-navigation.css create mode 100644 packages/swirl-components/src/components/swirl-tree-navigation/swirl-tree-navigation.mdx create mode 100644 packages/swirl-components/src/components/swirl-tree-navigation/swirl-tree-navigation.spec.tsx create mode 100644 packages/swirl-components/src/components/swirl-tree-navigation/swirl-tree-navigation.stories.ts create mode 100644 packages/swirl-components/src/components/swirl-tree-navigation/swirl-tree-navigation.tsx create mode 100644 packages/swirl-components/src/components/swirl-tree-view-item/swirl-tree-view-item.css create mode 100644 packages/swirl-components/src/components/swirl-tree-view-item/swirl-tree-view-item.mdx create mode 100644 packages/swirl-components/src/components/swirl-tree-view-item/swirl-tree-view-item.spec.tsx create mode 100644 packages/swirl-components/src/components/swirl-tree-view-item/swirl-tree-view-item.stories.ts create mode 100644 packages/swirl-components/src/components/swirl-tree-view-item/swirl-tree-view-item.tsx create mode 100644 packages/swirl-components/src/components/swirl-tree-view/swirl-tree-view.css create mode 100644 packages/swirl-components/src/components/swirl-tree-view/swirl-tree-view.mdx create mode 100644 packages/swirl-components/src/components/swirl-tree-view/swirl-tree-view.spec.tsx create mode 100644 packages/swirl-components/src/components/swirl-tree-view/swirl-tree-view.stories.ts create mode 100644 packages/swirl-components/src/components/swirl-tree-view/swirl-tree-view.tsx create mode 100644 packages/swirl-icons/icons/DockLeftCollapse16.svg create mode 100644 packages/swirl-icons/icons/DockLeftCollapse24.svg create mode 100644 packages/swirl-icons/icons/DockLeftCollapse28.svg create mode 100644 packages/swirl-icons/icons/DockLeftExpand16.svg create mode 100644 packages/swirl-icons/icons/DockLeftExpand24.svg create mode 100644 packages/swirl-icons/icons/DockLeftExpand28.svg create mode 100644 packages/swirl-icons/icons/Live16.svg create mode 100644 packages/swirl-icons/icons/Live24.svg create mode 100644 packages/swirl-icons/icons/Live28.svg create mode 100644 packages/swirl-icons/icons/PostApproval16.svg create mode 100644 packages/swirl-icons/icons/PostApproval24.svg create mode 100644 packages/swirl-icons/icons/PostApproval28.svg create mode 100644 packages/swirl-icons/icons/Present16.svg create mode 100644 packages/swirl-icons/icons/Present24.svg create mode 100644 packages/swirl-icons/icons/Present28.svg create mode 100644 packages/swirl-icons/icons/Public16.svg create mode 100644 packages/swirl-icons/icons/Public24.svg create mode 100644 packages/swirl-icons/icons/Public28.svg create mode 100644 packages/swirl-icons/icons/PublicOff16.svg create mode 100644 packages/swirl-icons/icons/PublicOff24.svg create mode 100644 packages/swirl-icons/icons/PublicOff28.svg create mode 100644 packages/swirl-icons/icons/RemoveCircle16.svg create mode 100644 packages/swirl-icons/icons/RemoveCircle24.svg create mode 100644 packages/swirl-icons/icons/RemoveCircle28.svg create mode 100644 packages/swirl-icons/icons/Screenshare16.svg create mode 100644 packages/swirl-icons/icons/Screenshare24.svg create mode 100644 packages/swirl-icons/icons/Screenshare28.svg create mode 100644 packages/swirl-icons/icons/ScreenshareOff16.svg create mode 100644 packages/swirl-icons/icons/ScreenshareOff24.svg create mode 100644 packages/swirl-icons/icons/ScreenshareOff28.svg create mode 100644 packages/swirl-icons/icons/VideoPlayer16.svg create mode 100644 packages/swirl-icons/icons/VideoPlayer24.svg create mode 100644 packages/swirl-icons/icons/VideoPlayer28.svg diff --git a/apps/swirl-docs/CHANGELOG.md b/apps/swirl-docs/CHANGELOG.md index bdfc2a704..5e252dfee 100644 --- a/apps/swirl-docs/CHANGELOG.md +++ b/apps/swirl-docs/CHANGELOG.md @@ -1,5 +1,597 @@ # swirl-docs +## 0.1.466 + +### Patch Changes + +- Updated dependencies + [[`ecbd8609`](https://github.com/getflip/swirl/commit/ecbd860903169e635c00a8c2384b1c4139201915)]: + - @getflip/swirl-components@0.257.0 + - @getflip/swirl-components-react@0.257.0 + +## 0.1.465 + +### Patch Changes + +- Updated dependencies + [[`f5d91707`](https://github.com/getflip/swirl/commit/f5d91707d06757e62d5d27e152aed97d9c80b92e), + [`f5d91707`](https://github.com/getflip/swirl/commit/f5d91707d06757e62d5d27e152aed97d9c80b92e)]: + - @getflip/swirl-components@0.256.2 + - @getflip/swirl-components-react@0.256.2 + +## 0.1.464 + +### Patch Changes + +- Updated dependencies + [[`fc1e576a`](https://github.com/getflip/swirl/commit/fc1e576a90245b42bacb5fa79304d16857c34d21)]: + - @getflip/swirl-components@0.256.1 + - @getflip/swirl-components-react@0.256.1 + +## 0.1.463 + +### Patch Changes + +- Updated dependencies + [[`9ef1d493`](https://github.com/getflip/swirl/commit/9ef1d4938a1fe84e9f56d8f60396824604fb59bc)]: + - @getflip/swirl-components@0.256.0 + - @getflip/swirl-components-react@0.256.0 + +## 0.1.462 + +### Patch Changes + +- Updated dependencies + [[`f0ad90c4`](https://github.com/getflip/swirl/commit/f0ad90c49defa3aa8332b99339075001c8386564), + [`d3a68077`](https://github.com/getflip/swirl/commit/d3a68077f15c596f6fed41bc375c2e319ae75b89)]: + - @getflip/swirl-components@0.255.0 + - @getflip/swirl-components-react@0.255.0 + +## 0.1.461 + +### Patch Changes + +- Updated dependencies + [[`59d8466f`](https://github.com/getflip/swirl/commit/59d8466fbfa2e53b416233759100c03574cd8b8e)]: + - @getflip/swirl-components@0.254.1 + - @getflip/swirl-components-react@0.254.1 + +## 0.1.460 + +### Patch Changes + +- Updated dependencies + [[`31540c9a`](https://github.com/getflip/swirl/commit/31540c9a09aa3bcf8cebe3406f0cd2fb54f9682f)]: + - @getflip/swirl-components@0.254.0 + - @getflip/swirl-icons@0.45.0 + - @getflip/swirl-components-react@0.254.0 + +## 0.1.459 + +### Patch Changes + +- Updated dependencies + [[`2a44f406`](https://github.com/getflip/swirl/commit/2a44f4067ddf8636c2e9b03fdde9d7e8bf72af4c)]: + - @getflip/swirl-components@0.253.0 + - @getflip/swirl-components-react@0.253.0 + +## 0.1.458 + +### Patch Changes + +- Updated dependencies + [[`d97f762b`](https://github.com/getflip/swirl/commit/d97f762b1b38fcb0d5136845b78256046059c729)]: + - @getflip/swirl-components@0.252.1 + - @getflip/swirl-components-react@0.252.1 + +## 0.1.457 + +### Patch Changes + +- Updated dependencies + [[`63609b09`](https://github.com/getflip/swirl/commit/63609b0941b8121e542cbed881ab1c8ae91cd1a9)]: + - @getflip/swirl-components@0.252.0 + - @getflip/swirl-components-react@0.252.0 + +## 0.1.456 + +### Patch Changes + +- Updated dependencies + [[`9012ceca`](https://github.com/getflip/swirl/commit/9012cecaf6816a262388ff4f021b92fe5d6e2770)]: + - @getflip/swirl-components@0.251.0 + - @getflip/swirl-components-react@0.251.0 + +## 0.1.455 + +### Patch Changes + +- Updated dependencies + [[`de49d0e6`](https://github.com/getflip/swirl/commit/de49d0e6abc6452ec334bf848a1eb0709d129897)]: + - @getflip/swirl-components@0.250.0 + - @getflip/swirl-components-react@0.250.0 + +## 0.1.454 + +### Patch Changes + +- Updated dependencies + [[`6a531e70`](https://github.com/getflip/swirl/commit/6a531e7041d5208604f2f6dd3fa7429acd6aa3ff)]: + - @getflip/swirl-components@0.249.1 + - @getflip/swirl-components-react@0.249.1 + +## 0.1.453 + +### Patch Changes + +- Updated dependencies + [[`1f6c1d13`](https://github.com/getflip/swirl/commit/1f6c1d133c82cc2891301a2acc8b9427951fcc6b)]: + - @getflip/swirl-components@0.249.0 + - @getflip/swirl-components-react@0.249.0 + +## 0.1.452 + +### Patch Changes + +- Updated dependencies + [[`14e5b4b6`](https://github.com/getflip/swirl/commit/14e5b4b6c32e54dcd44dbccde5179b1dd0dc153b)]: + - @getflip/swirl-components@0.248.0 + - @getflip/swirl-components-react@0.248.0 + +## 0.1.451 + +### Patch Changes + +- Updated dependencies + [[`b36913d7`](https://github.com/getflip/swirl/commit/b36913d7e431c755cdf2bcdd8e0048dd1bbe7464)]: + - @getflip/swirl-components@0.247.1 + - @getflip/swirl-components-react@0.247.1 + +## 0.1.450 + +### Patch Changes + +- Updated dependencies + [[`2a7aebd1`](https://github.com/getflip/swirl/commit/2a7aebd1e210a5d98913083ea5b8520bd7421ad6)]: + - @getflip/swirl-components@0.247.0 + - @getflip/swirl-components-react@0.247.0 + +## 0.1.449 + +### Patch Changes + +- Updated dependencies + [[`02ef115a`](https://github.com/getflip/swirl/commit/02ef115a7b41be4eb2b827e1c8ba4ac03934dcfd)]: + - @getflip/swirl-components@0.246.0 + - @getflip/swirl-components-react@0.246.0 + +## 0.1.448 + +### Patch Changes + +- Updated dependencies + [[`091d8868`](https://github.com/getflip/swirl/commit/091d88684f020c37ae2d40300c55e8f49e42ec36)]: + - @getflip/swirl-components@0.245.0 + - @getflip/swirl-components-react@0.245.0 + +## 0.1.447 + +### Patch Changes + +- Updated dependencies + [[`0772ac8a`](https://github.com/getflip/swirl/commit/0772ac8a4031b73faa1e31058d625a2cf5e6e031)]: + - @getflip/swirl-components@0.244.0 + - @getflip/swirl-components-react@0.244.0 + +## 0.1.446 + +### Patch Changes + +- Updated dependencies + [[`d2cc34fa`](https://github.com/getflip/swirl/commit/d2cc34fa7bd77ffb1217334b7051f890553f0cc8)]: + - @getflip/swirl-components@0.243.0 + - @getflip/swirl-components-react@0.243.0 + +## 0.1.445 + +### Patch Changes + +- Updated dependencies + [[`5fc723fa`](https://github.com/getflip/swirl/commit/5fc723facdd2311bb8ae3e27de31ef996e274fb4)]: + - @getflip/swirl-components@0.242.0 + - @getflip/swirl-components-react@0.242.0 + +## 0.1.444 + +### Patch Changes + +- Updated dependencies + [[`c330be6d`](https://github.com/getflip/swirl/commit/c330be6df11783c0defa2b741928b7e564183241)]: + - @getflip/swirl-components@0.241.4 + - @getflip/swirl-components-react@0.241.4 + +## 0.1.443 + +### Patch Changes + +- Updated dependencies + [[`2cdc24e3`](https://github.com/getflip/swirl/commit/2cdc24e3296d5354102d7628ae734ed25f861f93)]: + - @getflip/swirl-components@0.241.3 + - @getflip/swirl-components-react@0.241.3 + +## 0.1.442 + +### Patch Changes + +- Updated dependencies + [[`1bd66440`](https://github.com/getflip/swirl/commit/1bd66440355b44833f9b89dd7a925a0de7c44b61)]: + - @getflip/swirl-components@0.241.2 + - @getflip/swirl-components-react@0.241.2 + +## 0.1.441 + +### Patch Changes + +- Updated dependencies + [[`cf172218`](https://github.com/getflip/swirl/commit/cf172218751c3ea8d52e97020702bb1a0d1c8b5b)]: + - @getflip/swirl-components@0.241.1 + - @getflip/swirl-components-react@0.241.1 + +## 0.1.440 + +### Patch Changes + +- Updated dependencies + [[`b3f8bbeb`](https://github.com/getflip/swirl/commit/b3f8bbeb32f85c7d4ad4a611b95c5c1439768856)]: + - @getflip/swirl-components@0.241.0 + - @getflip/swirl-components-react@0.241.0 + +## 0.1.439 + +### Patch Changes + +- Updated dependencies + [[`c69cf843`](https://github.com/getflip/swirl/commit/c69cf843057ad7e2459cb80b8aaf1714879dcdec)]: + - @getflip/swirl-components@0.240.1 + - @getflip/swirl-components-react@0.240.1 + +## 0.1.438 + +### Patch Changes + +- Updated dependencies + [[`b6f26c1a`](https://github.com/getflip/swirl/commit/b6f26c1a8dc26eb2e0d45f3691301d75553a0122)]: + - @getflip/swirl-components@0.240.0 + - @getflip/swirl-components-react@0.240.0 + +## 0.1.437 + +### Patch Changes + +- Updated dependencies + [[`5af61856`](https://github.com/getflip/swirl/commit/5af61856e645072dda5059a285465be703252199)]: + - @getflip/swirl-components@0.239.1 + - @getflip/swirl-components-react@0.239.1 + +## 0.1.436 + +### Patch Changes + +- Updated dependencies + [[`fea94a96`](https://github.com/getflip/swirl/commit/fea94a96753fa7fb1537e5d6430b22be3d11b791), + [`229add12`](https://github.com/getflip/swirl/commit/229add12139d2015c794f5108915b676de0501cf)]: + - @getflip/swirl-components@0.239.0 + - @getflip/swirl-components-react@0.239.0 + - @getflip/swirl-icons@0.44.0 + +## 0.1.435 + +### Patch Changes + +- Updated dependencies + [[`e8981393`](https://github.com/getflip/swirl/commit/e8981393a765e106a8006df7a2752438aa3b9350)]: + - @getflip/swirl-components@0.238.0 + - @getflip/swirl-components-react@0.238.0 + +## 0.1.434 + +### Patch Changes + +- Updated dependencies + [[`1e4569a1`](https://github.com/getflip/swirl/commit/1e4569a196c9efb0c7d221685722253fb7ea23f9)]: + - @getflip/swirl-components@0.237.0 + - @getflip/swirl-components-react@0.237.0 + +## 0.1.433 + +### Patch Changes + +- Updated dependencies + [[`ec850064`](https://github.com/getflip/swirl/commit/ec850064fe4e3639222161bce3c3a313ba9bc698)]: + - @getflip/swirl-components@0.236.1 + - @getflip/swirl-components-react@0.236.1 + +## 0.1.432 + +### Patch Changes + +- Updated dependencies + [[`369515d4`](https://github.com/getflip/swirl/commit/369515d4e38ed4b0c63977c529fcf06ca8d5dfc0), + [`369515d4`](https://github.com/getflip/swirl/commit/369515d4e38ed4b0c63977c529fcf06ca8d5dfc0), + [`d7142aa4`](https://github.com/getflip/swirl/commit/d7142aa41ea06e662155d221285196d85ff58572)]: + - @getflip/swirl-components@0.236.0 + - @getflip/swirl-components-react@0.236.0 + +## 0.1.431 + +### Patch Changes + +- Updated dependencies + [[`cadf77f3`](https://github.com/getflip/swirl/commit/cadf77f34397e530e35060dbc31e1c71b6141ea2)]: + - @getflip/swirl-components@0.235.1 + - @getflip/swirl-components-react@0.235.1 + +## 0.1.430 + +### Patch Changes + +- Updated dependencies + [[`95a50fe3`](https://github.com/getflip/swirl/commit/95a50fe33070170ccee37d3d5a4ff3cfc6047458), + [`f66bfa94`](https://github.com/getflip/swirl/commit/f66bfa94fc5d230d71fb1efe8d3ded1d8d6dbc0b)]: + - @getflip/swirl-components@0.235.0 + - @getflip/swirl-components-react@0.235.0 + +## 0.1.429 + +### Patch Changes + +- Updated dependencies + [[`28309df9`](https://github.com/getflip/swirl/commit/28309df93eef2c55134ac1f51c60c073662d6860)]: + - @getflip/swirl-components@0.234.0 + - @getflip/swirl-components-react@0.234.0 + - @getflip/swirl-icons@0.43.0 + +## 0.1.428 + +### Patch Changes + +- Updated dependencies + [[`0ec94e7e`](https://github.com/getflip/swirl/commit/0ec94e7e002a3c00ed43cc31125e47575506cfac)]: + - @getflip/swirl-components@0.233.1 + - @getflip/swirl-components-react@0.233.1 + +## 0.1.427 + +### Patch Changes + +- Updated dependencies + [[`8fc64d9c`](https://github.com/getflip/swirl/commit/8fc64d9c1637c04e46ecaf221199e23be73379ef)]: + - @getflip/swirl-components@0.233.0 + - @getflip/swirl-components-react@0.233.0 + +## 0.1.426 + +### Patch Changes + +- Updated dependencies + [[`62afe3d8`](https://github.com/getflip/swirl/commit/62afe3d80984f5016703b178412e9120d68b400e), + [`c917a77a`](https://github.com/getflip/swirl/commit/c917a77a2bd1b378d6176f667b4e25e175ca9f3e)]: + - @getflip/swirl-components@0.231.0 + - @getflip/swirl-components-react@0.232.0 + +## 0.1.425 + +### Patch Changes + +- Updated dependencies + [[`63a350b4`](https://github.com/getflip/swirl/commit/63a350b4b3567954149ae1159f660a6fe748323d), + [`63a350b4`](https://github.com/getflip/swirl/commit/63a350b4b3567954149ae1159f660a6fe748323d)]: + - @getflip/swirl-components@0.230.1 + - @getflip/swirl-components-react@0.231.0 + - @getflip/swirl-icons@0.42.0 + +## 0.1.424 + +### Patch Changes + +- Updated dependencies + [[`08326ecc`](https://github.com/getflip/swirl/commit/08326ecc29ae06fa14ee77705c3d6858c6bf27c8)]: + - @getflip/swirl-components@0.230.0 + - @getflip/swirl-components-react@0.230.0 + +## 0.1.423 + +### Patch Changes + +- Updated dependencies + [[`947da5d3`](https://github.com/getflip/swirl/commit/947da5d3cc60b5a0e040c487ae4b3c5137294c51), + [`c22e465f`](https://github.com/getflip/swirl/commit/c22e465fbb938e2da9900a0c1390ed2458b32ddb)]: + - @getflip/swirl-components@0.229.0 + - @getflip/swirl-components-react@0.229.0 + +## 0.1.422 + +### Patch Changes + +- Updated dependencies + [[`815a91bd`](https://github.com/getflip/swirl/commit/815a91bd6b0e2348e3277073116004f50db77477)]: + - @getflip/swirl-components@0.228.0 + - @getflip/swirl-icons@0.41.0 + - @getflip/swirl-components-react@0.228.0 + +## 0.1.421 + +### Patch Changes + +- Updated dependencies + [[`2025e3e4`](https://github.com/getflip/swirl/commit/2025e3e4735595b40190cc5b1e22d9ed53fdcb6f)]: + - @getflip/swirl-components@0.227.0 + - @getflip/swirl-components-react@0.227.0 + +## 0.1.420 + +### Patch Changes + +- Updated dependencies + [[`bce80621`](https://github.com/getflip/swirl/commit/bce80621f5e9d3e47d68e6278d1e7e499b096809), + [`b1b7b434`](https://github.com/getflip/swirl/commit/b1b7b434b04e593e53ba71b20c358e5315e52e63)]: + - @getflip/swirl-components@0.226.1 + - @getflip/swirl-components-react@0.226.1 + +## 0.1.419 + +### Patch Changes + +- Updated dependencies + [[`fbf71bc9`](https://github.com/getflip/swirl/commit/fbf71bc94c4eb9e5276b002dc40a90c582feb69f)]: + - @getflip/swirl-components@0.226.0 + - @getflip/swirl-components-react@0.226.0 + +## 0.1.418 + +### Patch Changes + +- Updated dependencies + [[`97c45d46`](https://github.com/getflip/swirl/commit/97c45d46eb7cec30d6c49b6192c2b7a51aaf95a9)]: + - @getflip/swirl-components@0.225.2 + - @getflip/swirl-components-react@0.225.2 + +## 0.1.417 + +### Patch Changes + +- Updated dependencies + [[`3f98de9e`](https://github.com/getflip/swirl/commit/3f98de9e198a3f25c57551f14ee6495ab0f7d837)]: + - @getflip/swirl-components@0.225.1 + - @getflip/swirl-components-react@0.225.1 + +## 0.1.416 + +### Patch Changes + +- Updated dependencies + [[`0c855fb9`](https://github.com/getflip/swirl/commit/0c855fb9772d0555da72b82cee6df30e9d6ac8d1)]: + - @getflip/swirl-components@0.225.0 + - @getflip/swirl-components-react@0.225.0 + +## 0.1.415 + +### Patch Changes + +- Updated dependencies + [[`6a1af78a`](https://github.com/getflip/swirl/commit/6a1af78a11afe552d7e49f1b2ed93f5ba0623c9a)]: + - @getflip/swirl-components@0.224.0 + - @getflip/swirl-components-react@0.224.0 + +## 0.1.414 + +### Patch Changes + +- Updated dependencies + [[`9df750c0`](https://github.com/getflip/swirl/commit/9df750c0eb68db1c28bba983461d1cec3f1d31ba)]: + - @getflip/swirl-components@0.223.0 + - @getflip/swirl-components-react@0.223.0 + +## 0.1.413 + +### Patch Changes + +- Updated dependencies + [[`4390b336`](https://github.com/getflip/swirl/commit/4390b336e500e2785eda0db99e2b6f9d98a5bd0f)]: + - @getflip/swirl-components@0.222.1 + - @getflip/swirl-components-react@0.222.1 + +## 0.1.412 + +### Patch Changes + +- Updated dependencies + [[`265823b5`](https://github.com/getflip/swirl/commit/265823b565cf3050ef6889d6f2fe5990fc893de3)]: + - @getflip/swirl-components@0.222.0 + - @getflip/swirl-components-react@0.222.0 + +## 0.1.411 + +### Patch Changes + +- Updated dependencies + [[`0e9413cf`](https://github.com/getflip/swirl/commit/0e9413cfbc2add299f8360078ef2df3cddd1153f)]: + - @getflip/swirl-components@0.221.0 + - @getflip/swirl-components-react@0.221.0 + +## 0.1.410 + +### Patch Changes + +- Updated dependencies + [[`93f59bef`](https://github.com/getflip/swirl/commit/93f59bef3ce31d09e112795f7c520564c0d99355)]: + - @getflip/swirl-components@0.220.5 + - @getflip/swirl-components-react@0.220.5 + +## 0.1.409 + +### Patch Changes + +- Updated dependencies + [[`cfaf2b8f`](https://github.com/getflip/swirl/commit/cfaf2b8fa3cfb53df041b7d6c60e64a6a5df1e00)]: + - @getflip/swirl-components@0.220.4 + - @getflip/swirl-components-react@0.220.4 + +## 0.1.408 + +### Patch Changes + +- Updated dependencies + [[`875d491a`](https://github.com/getflip/swirl/commit/875d491a355ce89d2f15f880ad55f0b714ab0aaf)]: + - @getflip/swirl-components@0.220.3 + - @getflip/swirl-components-react@0.220.3 + +## 0.1.407 + +### Patch Changes + +- Updated dependencies + [[`b54e20a7`](https://github.com/getflip/swirl/commit/b54e20a77aae792a8e3afa5f0069457a5985530f)]: + - @getflip/swirl-components@0.220.2 + - @getflip/swirl-components-react@0.220.2 + +## 0.1.406 + +### Patch Changes + +- Updated dependencies + [[`ebde720e`](https://github.com/getflip/swirl/commit/ebde720ea7a1e80d9e8db13e9852d3601013a5f6)]: + - @getflip/swirl-components@0.220.1 + - @getflip/swirl-components-react@0.220.1 + +## 0.1.405 + +### Patch Changes + +- Updated dependencies + [[`e9ffdb07`](https://github.com/getflip/swirl/commit/e9ffdb073a2b8dcfcaf56ecdb87fbd037ba3d125)]: + - @getflip/swirl-components@0.220.0 + - @getflip/swirl-components-react@0.220.0 + +## 0.1.404 + +### Patch Changes + +- Updated dependencies + [[`9b7ec15d`](https://github.com/getflip/swirl/commit/9b7ec15d6f3f8ad7fb5886fa79c0ec56c28e06d6)]: + - @getflip/swirl-components@0.219.0 + - @getflip/swirl-icons@0.40.0 + - @getflip/swirl-components-react@0.219.0 + +## 0.1.403 + +### Patch Changes + +- Updated dependencies + [[`a842a881`](https://github.com/getflip/swirl/commit/a842a8813b8c124fa952124053c648a43fd826c3)]: + - @getflip/swirl-components@0.218.0 + - @getflip/swirl-components-react@0.218.0 + ## 0.1.402 ### Patch Changes diff --git a/apps/swirl-docs/package.json b/apps/swirl-docs/package.json index 810b0bce2..6febd8824 100644 --- a/apps/swirl-docs/package.json +++ b/apps/swirl-docs/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "swirl-docs", - "version": "0.1.402", + "version": "0.1.466", "author": "Flip GmbH", "description": "Swirl documentation", "licence": "SEE LICENCE IN LICENSE.md", @@ -28,9 +28,9 @@ "@algolia/autocomplete-theme-classic": "^1.7.4", "@floating-ui/dom": "^1.1.0", "@floating-ui/react": "^0.18.0", - "@getflip/swirl-components": "^0.217.0", - "@getflip/swirl-components-react": "^0.217.0", - "@getflip/swirl-icons": "^0.39.0", + "@getflip/swirl-components": "^0.257.0", + "@getflip/swirl-components-react": "^0.257.0", + "@getflip/swirl-icons": "^0.45.0", "@getflip/swirl-tokens": "^2.6.0", "@mdx-js/loader": "^2.1.3", "@next/mdx": "^12.2.5", diff --git a/apps/swirl-docs/src/components/Documentation/EndpointDescription/Parameter.tsx b/apps/swirl-docs/src/components/Documentation/EndpointDescription/Parameter.tsx index 5a6b7baca..5ab87f0fa 100644 --- a/apps/swirl-docs/src/components/Documentation/EndpointDescription/Parameter.tsx +++ b/apps/swirl-docs/src/components/Documentation/EndpointDescription/Parameter.tsx @@ -1,7 +1,5 @@ -import { SwirlIconAdd, SwirlIconRemove } from "@getflip/swirl-components-react"; import classNames from "classnames"; -import { AnimatePresence, motion } from "framer-motion"; -import { ReactNode, useState } from "react"; +import { ReactNode } from "react"; import { Tag } from "../../Tags"; import { DocumentationMarkdown } from "../DocumentationMarkdown"; import { @@ -9,14 +7,18 @@ import { HttpStatusCode, isValidStatusCode, } from "../HttpStatusCodeMapper"; +import { isProdDeployment } from "@swirl/lib/env"; +import { Expandable } from "../Expandable"; interface ParameterProps { children?: ReactNode; name: string; type?: string; required?: boolean; + hidden?: boolean; description?: string; enumValues?: string[]; + array?: boolean; } export function Parameter({ @@ -25,12 +27,12 @@ export function Parameter({ type, description, required, + hidden, enumValues, + array, }: ParameterProps) { - const [isExpanded, setIsExpanded] = useState(false); - - function toggle() { - setIsExpanded((expanded) => !expanded); + if (isProdDeployment && hidden) { + return null; } return ( @@ -56,8 +58,9 @@ export function Parameter({ {isValidStatusCode(name) && `${getStatusText(Number(name) as HttpStatusCode)}`} - {type && } + {type && } {required && } + {hidden && } {description && ( @@ -65,66 +68,37 @@ export function Parameter({ )} {enumValues?.length && ( -
-
+ +
+
Possible enum values +
+
+ {enumValues.map((value) => ( + + ))} +
-
- {enumValues.map((value) => ( - - ))} -
-
- )} - {children && ( -
- - - {isExpanded && ( - - {children} - - )} - -
+ )} + {children && {children}}
); } diff --git a/apps/swirl-docs/src/components/Documentation/EndpointDescription/ParameterFactory.tsx b/apps/swirl-docs/src/components/Documentation/EndpointDescription/ParameterFactory.tsx index 82c737823..ceff45785 100644 --- a/apps/swirl-docs/src/components/Documentation/EndpointDescription/ParameterFactory.tsx +++ b/apps/swirl-docs/src/components/Documentation/EndpointDescription/ParameterFactory.tsx @@ -23,8 +23,6 @@ export class EndpointParameterFactory { getRenderer(type: string): ParameterRenderer { switch (type) { - case "array": - return new ArrayParameterRenderer(); case "object": return new ObjectParameterRenderer(); case "boolean": @@ -57,6 +55,8 @@ class ObjectParameterRenderer implements ParameterRenderer { name={parameter.name} type={parameter.type} description={parameter.description} + hidden={parameter.hidden} + array={parameter.array} required={ parameter.required || schema?.required?.includes(parameter.name) } @@ -83,6 +83,9 @@ class PrimitiveParameterRenderer implements ParameterRenderer { name={parameter.name} type={parameter.type} description={parameter.description} + hidden={parameter.hidden} + array={parameter.array} + enumValues={parameter.enum} required={ parameter.required || schema?.required?.includes(parameter.name) } @@ -90,63 +93,3 @@ class PrimitiveParameterRenderer implements ParameterRenderer { ); } } - -class ArrayParameterRenderer implements ParameterRenderer { - render( - parameter: OperationSchemaObject, - schema?: OpenAPIV3_1.BaseSchemaObject - ) { - if (parameter.items?.type === "object") { - return ( - - {Object.keys(parameter.items?.properties).map((name) => { - const isRequired = parameter.items?.required - ? parameter.items?.required.includes(name) - : false; - return ( - - ); - })} - - ); - } - - return ( - - {parameter.items?.type === "string" && ( - - )} - - ); - } -} diff --git a/apps/swirl-docs/src/components/Documentation/Expandable.tsx b/apps/swirl-docs/src/components/Documentation/Expandable.tsx new file mode 100644 index 000000000..d148bfe04 --- /dev/null +++ b/apps/swirl-docs/src/components/Documentation/Expandable.tsx @@ -0,0 +1,48 @@ +import { ReactNode, useState } from "react"; +import { SwirlIconAdd, SwirlIconRemove } from "@getflip/swirl-components-react"; +import { AnimatePresence, motion } from "framer-motion"; + +interface ExpandableProps { + children: ReactNode; +} + +export function Expandable({ children }: ExpandableProps) { + const [isExpanded, setIsExpanded] = useState(false); + + function toggle() { + setIsExpanded((expanded) => !expanded); + } + + return ( +
+ + + {isExpanded && ( + + {children} + + )} + +
+ ) +} diff --git a/apps/swirl-docs/src/lib/docs/src/docs.model.ts b/apps/swirl-docs/src/lib/docs/src/docs.model.ts index 26a41a92a..2758f7c15 100644 --- a/apps/swirl-docs/src/lib/docs/src/docs.model.ts +++ b/apps/swirl-docs/src/lib/docs/src/docs.model.ts @@ -90,14 +90,14 @@ export type ApiDoc = { export type OperationSchemaObject = { name: string; - type: - | OpenAPIV3_1.ArraySchemaObjectType - | OpenAPIV3_1.NonArraySchemaObjectType; + type: OpenAPIV3_1.NonArraySchemaObjectType; description: string; required: boolean; + hidden: boolean; + array: boolean; properties?: OperationSchemaObject[]; - items?: any; statusCode?: string; + enum?: string[]; }; export type OperationParamType = diff --git a/apps/swirl-docs/src/scripts/ApiDocumentation/EndpointMapper.ts b/apps/swirl-docs/src/scripts/ApiDocumentation/EndpointMapper.ts index e4b870002..5a1f35d14 100644 --- a/apps/swirl-docs/src/scripts/ApiDocumentation/EndpointMapper.ts +++ b/apps/swirl-docs/src/scripts/ApiDocumentation/EndpointMapper.ts @@ -86,20 +86,12 @@ export class EndpointMapper { })); return responseBodySchemas.map((response) => { - const requiredProperties = response.schema?.required || []; const parameters: Array = Object.entries( response.schema?.properties || {} ).map(([name, property]) => { const prop = property as SchemaObject; - return { - name: String(name), - type: prop.type as OperationSchemaObject["type"], - description: prop.description || "", - required: requiredProperties.includes(name), - properties: this.getEndpointOperationSchemaObject(prop), - items: this.getEndpointParamArrayItems(prop), - }; + return this.toOperationSchemaObject(name, prop, response.schema); }); return { @@ -114,58 +106,68 @@ export class EndpointMapper { parameters?: ReturnType ): OperationSchemas | undefined { return parameters?.map((parameter) => { - const label = parameter.label || "other"; const type = parameter.type as OperationParamType; - const requiredParams = parameter.schema.required || []; - const parametersObject = parameter.schema.properties || {}; - if ( - typeof parametersObject === "object" && - Array.isArray(requiredParams) - ) { - const parameters: Array = Object.keys( - parametersObject - ).map((parameter) => { - const prop = parametersObject[parameter] as SchemaObject; - - return { - name: String(parameter), - type: prop.type as OperationSchemaObject["type"], - description: prop.description || "", - required: requiredParams.includes(parameter), - properties: this.getEndpointOperationSchemaObject(prop), - items: this.getEndpointParamArrayItems(prop), - }; - }); - return { title: label, type, parameters: parameters }; + const label = parameter.label || "other"; + + return { + type, + title: label, + parameters: this.getEndpointTopLevelSchema(parameter.schema) ?? [], } - return { title: label, type, parameters: [] }; }); } - private getEndpointParamArrayItems( - prop: SchemaObject - ): Array | undefined { - if (prop.type === "array" && prop.items) { - return prop.items as Array; + + private getEndpointTopLevelSchema( + parent: SchemaObject + ): OperationSchemaObject[] | undefined { + if (parent.type !== "object") { + return undefined; } - return undefined; + + if (!parent.properties) { + return undefined; + } + + return Object.entries(parent.properties).map(([name, child]) => { + return this.toOperationSchemaObject(name, child, parent); + }); } - private getEndpointOperationSchemaObject( - prop: SchemaObject - ): OperationSchemaObject[] | undefined { - if (prop.type === "object") { - if (prop.properties) { - return Object.entries(prop.properties).map(([name, prop]) => { - return { - name, - type: prop.type as OperationSchemaObject["type"], - description: prop.description || "", - required: prop.required || false, - properties: this.getEndpointOperationSchemaObject(prop), - }; - }); - } + private toOperationSchemaObject(name: string, prop: SchemaObject, parentObject?: SchemaObject): OperationSchemaObject { + const hiddenProps = parentObject ? + (FlipApiExtensions.getHiddenParams(parentObject) || []) + : []; + + const requiredPropsInParent = this.determineRequiredProperties(parentObject); + const childProperties = prop.properties || {}; + const hasRequiredFlag = typeof prop.required === "boolean" && prop.required; + + if (prop.type == "array") { + // If the property is an array, we want to render the items only. + return this.toOperationSchemaObject(name, prop.items as SchemaObject, prop); } - return undefined; + + return { + name, + array: parentObject?.type === "array", // Used to determine whether this property is rendered as part of an array. + type: prop.type as OperationSchemaObject["type"], + description: prop.description || "", + required: hasRequiredFlag || requiredPropsInParent.includes(name) || false, + properties: Object.entries(childProperties).map(([name, child]) => this.toOperationSchemaObject(name, child, prop)), + hidden: hiddenProps.includes(name), + enum: prop.enum as string[], + }; + } + + private determineRequiredProperties(parentObject?: SchemaObject): string[] { + if (!parentObject) { + return []; + } + + if (!Array.isArray(parentObject.required)) { + return []; + } + + return parentObject.required; } } diff --git a/apps/swirl-docs/src/scripts/ApiDocumentation/FlipApiExtensions.ts b/apps/swirl-docs/src/scripts/ApiDocumentation/FlipApiExtensions.ts index 295805a93..0619bbff4 100644 --- a/apps/swirl-docs/src/scripts/ApiDocumentation/FlipApiExtensions.ts +++ b/apps/swirl-docs/src/scripts/ApiDocumentation/FlipApiExtensions.ts @@ -1,4 +1,5 @@ import { Operation } from "oas"; +import { SchemaObject } from "oas/dist/rmoas.types"; export class FlipApiExtensions { static getErrorCodes(operation: Operation): string[] | undefined { @@ -32,4 +33,21 @@ export class FlipApiExtensions { return resourceName; } } + + static getHiddenParams(schemaObject: SchemaObject): string[] | undefined { + if (!schemaObject) { + return; + } + + if (!("x-flip-hidden" in schemaObject)) { + return; + } + + const hiddenFields = schemaObject["x-flip-hidden"]; + if (!Array.isArray(hiddenFields)) { + return; + } + + return hiddenFields; + } } diff --git a/packages/bridge/CHANGELOG.md b/packages/bridge/CHANGELOG.md index e357c56cf..0b5541b9b 100644 --- a/packages/bridge/CHANGELOG.md +++ b/packages/bridge/CHANGELOG.md @@ -1,5 +1,533 @@ # @getflip/bridge +## 0.6.30 + +### Patch Changes + +- Updated dependencies + [[`ecbd8609`](https://github.com/getflip/swirl/commit/ecbd860903169e635c00a8c2384b1c4139201915)]: + - @getflip/swirl-components@0.257.0 + +## 0.6.29 + +### Patch Changes + +- Updated dependencies + [[`f5d91707`](https://github.com/getflip/swirl/commit/f5d91707d06757e62d5d27e152aed97d9c80b92e), + [`f5d91707`](https://github.com/getflip/swirl/commit/f5d91707d06757e62d5d27e152aed97d9c80b92e)]: + - @getflip/swirl-components@0.256.2 + +## 0.6.28 + +### Patch Changes + +- Updated dependencies + [[`fc1e576a`](https://github.com/getflip/swirl/commit/fc1e576a90245b42bacb5fa79304d16857c34d21)]: + - @getflip/swirl-components@0.256.1 + +## 0.6.27 + +### Patch Changes + +- Updated dependencies + [[`9ef1d493`](https://github.com/getflip/swirl/commit/9ef1d4938a1fe84e9f56d8f60396824604fb59bc)]: + - @getflip/swirl-components@0.256.0 + +## 0.6.26 + +### Patch Changes + +- Updated dependencies + [[`f0ad90c4`](https://github.com/getflip/swirl/commit/f0ad90c49defa3aa8332b99339075001c8386564), + [`d3a68077`](https://github.com/getflip/swirl/commit/d3a68077f15c596f6fed41bc375c2e319ae75b89)]: + - @getflip/swirl-components@0.255.0 + +## 0.6.25 + +### Patch Changes + +- Updated dependencies + [[`59d8466f`](https://github.com/getflip/swirl/commit/59d8466fbfa2e53b416233759100c03574cd8b8e)]: + - @getflip/swirl-components@0.254.1 + +## 0.6.24 + +### Patch Changes + +- Updated dependencies + [[`31540c9a`](https://github.com/getflip/swirl/commit/31540c9a09aa3bcf8cebe3406f0cd2fb54f9682f)]: + - @getflip/swirl-components@0.254.0 + +## 0.6.23 + +### Patch Changes + +- Updated dependencies + [[`2a44f406`](https://github.com/getflip/swirl/commit/2a44f4067ddf8636c2e9b03fdde9d7e8bf72af4c)]: + - @getflip/swirl-components@0.253.0 + +## 0.6.22 + +### Patch Changes + +- Updated dependencies + [[`d97f762b`](https://github.com/getflip/swirl/commit/d97f762b1b38fcb0d5136845b78256046059c729)]: + - @getflip/swirl-components@0.252.1 + +## 0.6.21 + +### Patch Changes + +- Updated dependencies + [[`63609b09`](https://github.com/getflip/swirl/commit/63609b0941b8121e542cbed881ab1c8ae91cd1a9)]: + - @getflip/swirl-components@0.252.0 + +## 0.6.20 + +### Patch Changes + +- Updated dependencies + [[`9012ceca`](https://github.com/getflip/swirl/commit/9012cecaf6816a262388ff4f021b92fe5d6e2770)]: + - @getflip/swirl-components@0.251.0 + +## 0.6.19 + +### Patch Changes + +- Updated dependencies + [[`de49d0e6`](https://github.com/getflip/swirl/commit/de49d0e6abc6452ec334bf848a1eb0709d129897)]: + - @getflip/swirl-components@0.250.0 + +## 0.6.18 + +### Patch Changes + +- Updated dependencies + [[`6a531e70`](https://github.com/getflip/swirl/commit/6a531e7041d5208604f2f6dd3fa7429acd6aa3ff)]: + - @getflip/swirl-components@0.249.1 + +## 0.6.17 + +### Patch Changes + +- Updated dependencies + [[`1f6c1d13`](https://github.com/getflip/swirl/commit/1f6c1d133c82cc2891301a2acc8b9427951fcc6b)]: + - @getflip/swirl-components@0.249.0 + +## 0.6.16 + +### Patch Changes + +- Updated dependencies + [[`14e5b4b6`](https://github.com/getflip/swirl/commit/14e5b4b6c32e54dcd44dbccde5179b1dd0dc153b)]: + - @getflip/swirl-components@0.248.0 + +## 0.6.15 + +### Patch Changes + +- Updated dependencies + [[`b36913d7`](https://github.com/getflip/swirl/commit/b36913d7e431c755cdf2bcdd8e0048dd1bbe7464)]: + - @getflip/swirl-components@0.247.1 + +## 0.6.14 + +### Patch Changes + +- Updated dependencies + [[`2a7aebd1`](https://github.com/getflip/swirl/commit/2a7aebd1e210a5d98913083ea5b8520bd7421ad6)]: + - @getflip/swirl-components@0.247.0 + +## 0.6.13 + +### Patch Changes + +- Updated dependencies + [[`02ef115a`](https://github.com/getflip/swirl/commit/02ef115a7b41be4eb2b827e1c8ba4ac03934dcfd)]: + - @getflip/swirl-components@0.246.0 + +## 0.6.12 + +### Patch Changes + +- Updated dependencies + [[`091d8868`](https://github.com/getflip/swirl/commit/091d88684f020c37ae2d40300c55e8f49e42ec36)]: + - @getflip/swirl-components@0.245.0 + +## 0.6.11 + +### Patch Changes + +- Updated dependencies + [[`0772ac8a`](https://github.com/getflip/swirl/commit/0772ac8a4031b73faa1e31058d625a2cf5e6e031)]: + - @getflip/swirl-components@0.244.0 + +## 0.6.10 + +### Patch Changes + +- Updated dependencies + [[`d2cc34fa`](https://github.com/getflip/swirl/commit/d2cc34fa7bd77ffb1217334b7051f890553f0cc8)]: + - @getflip/swirl-components@0.243.0 + +## 0.6.9 + +### Patch Changes + +- Updated dependencies + [[`5fc723fa`](https://github.com/getflip/swirl/commit/5fc723facdd2311bb8ae3e27de31ef996e274fb4)]: + - @getflip/swirl-components@0.242.0 + +## 0.6.8 + +### Patch Changes + +- Updated dependencies + [[`c330be6d`](https://github.com/getflip/swirl/commit/c330be6df11783c0defa2b741928b7e564183241)]: + - @getflip/swirl-components@0.241.4 + +## 0.6.7 + +### Patch Changes + +- Updated dependencies + [[`2cdc24e3`](https://github.com/getflip/swirl/commit/2cdc24e3296d5354102d7628ae734ed25f861f93)]: + - @getflip/swirl-components@0.241.3 + +## 0.6.6 + +### Patch Changes + +- Updated dependencies + [[`1bd66440`](https://github.com/getflip/swirl/commit/1bd66440355b44833f9b89dd7a925a0de7c44b61)]: + - @getflip/swirl-components@0.241.2 + +## 0.6.5 + +### Patch Changes + +- Updated dependencies + [[`cf172218`](https://github.com/getflip/swirl/commit/cf172218751c3ea8d52e97020702bb1a0d1c8b5b)]: + - @getflip/swirl-components@0.241.1 + +## 0.6.4 + +### Patch Changes + +- Updated dependencies + [[`b3f8bbeb`](https://github.com/getflip/swirl/commit/b3f8bbeb32f85c7d4ad4a611b95c5c1439768856)]: + - @getflip/swirl-components@0.241.0 + +## 0.6.3 + +### Patch Changes + +- Updated dependencies + [[`c69cf843`](https://github.com/getflip/swirl/commit/c69cf843057ad7e2459cb80b8aaf1714879dcdec)]: + - @getflip/swirl-components@0.240.1 + +## 0.6.2 + +### Patch Changes + +- Updated dependencies + [[`b6f26c1a`](https://github.com/getflip/swirl/commit/b6f26c1a8dc26eb2e0d45f3691301d75553a0122)]: + - @getflip/swirl-components@0.240.0 + +## 0.6.1 + +### Patch Changes + +- Updated dependencies + [[`5af61856`](https://github.com/getflip/swirl/commit/5af61856e645072dda5059a285465be703252199)]: + - @getflip/swirl-components@0.239.1 + +## 0.6.0 + +### Minor Changes + +- [`17a76d54`](https://github.com/getflip/swirl/commit/17a76d54ca7a7ec8b469a8db07f68039b9ea1cde) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "setTheme" method + +## 0.5.72 + +### Patch Changes + +- Updated dependencies + [[`fea94a96`](https://github.com/getflip/swirl/commit/fea94a96753fa7fb1537e5d6430b22be3d11b791), + [`229add12`](https://github.com/getflip/swirl/commit/229add12139d2015c794f5108915b676de0501cf)]: + - @getflip/swirl-components@0.239.0 + +## 0.5.71 + +### Patch Changes + +- Updated dependencies + [[`e8981393`](https://github.com/getflip/swirl/commit/e8981393a765e106a8006df7a2752438aa3b9350)]: + - @getflip/swirl-components@0.238.0 + +## 0.5.70 + +### Patch Changes + +- Updated dependencies + [[`1e4569a1`](https://github.com/getflip/swirl/commit/1e4569a196c9efb0c7d221685722253fb7ea23f9)]: + - @getflip/swirl-components@0.237.0 + +## 0.5.69 + +### Patch Changes + +- Updated dependencies + [[`ec850064`](https://github.com/getflip/swirl/commit/ec850064fe4e3639222161bce3c3a313ba9bc698)]: + - @getflip/swirl-components@0.236.1 + +## 0.5.68 + +### Patch Changes + +- Updated dependencies + [[`369515d4`](https://github.com/getflip/swirl/commit/369515d4e38ed4b0c63977c529fcf06ca8d5dfc0), + [`369515d4`](https://github.com/getflip/swirl/commit/369515d4e38ed4b0c63977c529fcf06ca8d5dfc0), + [`d7142aa4`](https://github.com/getflip/swirl/commit/d7142aa41ea06e662155d221285196d85ff58572)]: + - @getflip/swirl-components@0.236.0 + +## 0.5.67 + +### Patch Changes + +- Updated dependencies + [[`cadf77f3`](https://github.com/getflip/swirl/commit/cadf77f34397e530e35060dbc31e1c71b6141ea2)]: + - @getflip/swirl-components@0.235.1 + +## 0.5.66 + +### Patch Changes + +- Updated dependencies + [[`95a50fe3`](https://github.com/getflip/swirl/commit/95a50fe33070170ccee37d3d5a4ff3cfc6047458), + [`f66bfa94`](https://github.com/getflip/swirl/commit/f66bfa94fc5d230d71fb1efe8d3ded1d8d6dbc0b)]: + - @getflip/swirl-components@0.235.0 + +## 0.5.65 + +### Patch Changes + +- Updated dependencies + [[`28309df9`](https://github.com/getflip/swirl/commit/28309df93eef2c55134ac1f51c60c073662d6860)]: + - @getflip/swirl-components@0.234.0 + +## 0.5.64 + +### Patch Changes + +- Updated dependencies + [[`0ec94e7e`](https://github.com/getflip/swirl/commit/0ec94e7e002a3c00ed43cc31125e47575506cfac)]: + - @getflip/swirl-components@0.233.1 + +## 0.5.63 + +### Patch Changes + +- Updated dependencies + [[`8fc64d9c`](https://github.com/getflip/swirl/commit/8fc64d9c1637c04e46ecaf221199e23be73379ef)]: + - @getflip/swirl-components@0.233.0 + +## 0.5.62 + +### Patch Changes + +- Updated dependencies + [[`62afe3d8`](https://github.com/getflip/swirl/commit/62afe3d80984f5016703b178412e9120d68b400e), + [`c917a77a`](https://github.com/getflip/swirl/commit/c917a77a2bd1b378d6176f667b4e25e175ca9f3e)]: + - @getflip/swirl-components@0.231.0 + +## 0.5.61 + +### Patch Changes + +- Updated dependencies + [[`63a350b4`](https://github.com/getflip/swirl/commit/63a350b4b3567954149ae1159f660a6fe748323d)]: + - @getflip/swirl-components@0.230.1 + +## 0.5.60 + +### Patch Changes + +- Updated dependencies + [[`08326ecc`](https://github.com/getflip/swirl/commit/08326ecc29ae06fa14ee77705c3d6858c6bf27c8)]: + - @getflip/swirl-components@0.230.0 + +## 0.5.59 + +### Patch Changes + +- Updated dependencies + [[`947da5d3`](https://github.com/getflip/swirl/commit/947da5d3cc60b5a0e040c487ae4b3c5137294c51), + [`c22e465f`](https://github.com/getflip/swirl/commit/c22e465fbb938e2da9900a0c1390ed2458b32ddb)]: + - @getflip/swirl-components@0.229.0 + +## 0.5.58 + +### Patch Changes + +- Updated dependencies + [[`815a91bd`](https://github.com/getflip/swirl/commit/815a91bd6b0e2348e3277073116004f50db77477)]: + - @getflip/swirl-components@0.228.0 + +## 0.5.57 + +### Patch Changes + +- Updated dependencies + [[`2025e3e4`](https://github.com/getflip/swirl/commit/2025e3e4735595b40190cc5b1e22d9ed53fdcb6f)]: + - @getflip/swirl-components@0.227.0 + +## 0.5.56 + +### Patch Changes + +- Updated dependencies + [[`bce80621`](https://github.com/getflip/swirl/commit/bce80621f5e9d3e47d68e6278d1e7e499b096809), + [`b1b7b434`](https://github.com/getflip/swirl/commit/b1b7b434b04e593e53ba71b20c358e5315e52e63)]: + - @getflip/swirl-components@0.226.1 + +## 0.5.55 + +### Patch Changes + +- Updated dependencies + [[`fbf71bc9`](https://github.com/getflip/swirl/commit/fbf71bc94c4eb9e5276b002dc40a90c582feb69f)]: + - @getflip/swirl-components@0.226.0 + +## 0.5.54 + +### Patch Changes + +- Updated dependencies + [[`97c45d46`](https://github.com/getflip/swirl/commit/97c45d46eb7cec30d6c49b6192c2b7a51aaf95a9)]: + - @getflip/swirl-components@0.225.2 + +## 0.5.53 + +### Patch Changes + +- Updated dependencies + [[`3f98de9e`](https://github.com/getflip/swirl/commit/3f98de9e198a3f25c57551f14ee6495ab0f7d837)]: + - @getflip/swirl-components@0.225.1 + +## 0.5.52 + +### Patch Changes + +- Updated dependencies + [[`0c855fb9`](https://github.com/getflip/swirl/commit/0c855fb9772d0555da72b82cee6df30e9d6ac8d1)]: + - @getflip/swirl-components@0.225.0 + +## 0.5.51 + +### Patch Changes + +- Updated dependencies + [[`6a1af78a`](https://github.com/getflip/swirl/commit/6a1af78a11afe552d7e49f1b2ed93f5ba0623c9a)]: + - @getflip/swirl-components@0.224.0 + +## 0.5.50 + +### Patch Changes + +- Updated dependencies + [[`9df750c0`](https://github.com/getflip/swirl/commit/9df750c0eb68db1c28bba983461d1cec3f1d31ba)]: + - @getflip/swirl-components@0.223.0 + +## 0.5.49 + +### Patch Changes + +- Updated dependencies + [[`4390b336`](https://github.com/getflip/swirl/commit/4390b336e500e2785eda0db99e2b6f9d98a5bd0f)]: + - @getflip/swirl-components@0.222.1 + +## 0.5.48 + +### Patch Changes + +- Updated dependencies + [[`265823b5`](https://github.com/getflip/swirl/commit/265823b565cf3050ef6889d6f2fe5990fc893de3)]: + - @getflip/swirl-components@0.222.0 + +## 0.5.47 + +### Patch Changes + +- Updated dependencies + [[`0e9413cf`](https://github.com/getflip/swirl/commit/0e9413cfbc2add299f8360078ef2df3cddd1153f)]: + - @getflip/swirl-components@0.221.0 + +## 0.5.46 + +### Patch Changes + +- Updated dependencies + [[`93f59bef`](https://github.com/getflip/swirl/commit/93f59bef3ce31d09e112795f7c520564c0d99355)]: + - @getflip/swirl-components@0.220.5 + +## 0.5.45 + +### Patch Changes + +- Updated dependencies + [[`cfaf2b8f`](https://github.com/getflip/swirl/commit/cfaf2b8fa3cfb53df041b7d6c60e64a6a5df1e00)]: + - @getflip/swirl-components@0.220.4 + +## 0.5.44 + +### Patch Changes + +- Updated dependencies + [[`875d491a`](https://github.com/getflip/swirl/commit/875d491a355ce89d2f15f880ad55f0b714ab0aaf)]: + - @getflip/swirl-components@0.220.3 + +## 0.5.43 + +### Patch Changes + +- Updated dependencies + [[`b54e20a7`](https://github.com/getflip/swirl/commit/b54e20a77aae792a8e3afa5f0069457a5985530f)]: + - @getflip/swirl-components@0.220.2 + +## 0.5.42 + +### Patch Changes + +- Updated dependencies + [[`ebde720e`](https://github.com/getflip/swirl/commit/ebde720ea7a1e80d9e8db13e9852d3601013a5f6)]: + - @getflip/swirl-components@0.220.1 + +## 0.5.41 + +### Patch Changes + +- Updated dependencies + [[`e9ffdb07`](https://github.com/getflip/swirl/commit/e9ffdb073a2b8dcfcaf56ecdb87fbd037ba3d125)]: + - @getflip/swirl-components@0.220.0 + +## 0.5.40 + +### Patch Changes + +- Updated dependencies + [[`9b7ec15d`](https://github.com/getflip/swirl/commit/9b7ec15d6f3f8ad7fb5886fa79c0ec56c28e06d6)]: + - @getflip/swirl-components@0.219.0 + +## 0.5.39 + +### Patch Changes + +- Updated dependencies + [[`a842a881`](https://github.com/getflip/swirl/commit/a842a8813b8c124fa952124053c648a43fd826c3)]: + - @getflip/swirl-components@0.218.0 + ## 0.5.38 ### Patch Changes diff --git a/packages/bridge/README.md b/packages/bridge/README.md index a1ebbf98f..cb956a415 100644 --- a/packages/bridge/README.md +++ b/packages/bridge/README.md @@ -116,6 +116,22 @@ import { getTheme } from "@getflip/bridge"; const theme = await getTheme(); ``` +#### `setTheme` + +Set the theme. Pass `undefined` to reset to the user's system theme. + +**Param** `"light" | "dark" | undefined` + +**Returns** `Promise<"light" | "dark" | undefined>` + +**Example** + +```js +import { setTheme } from "@getflip/bridge"; + +const newTheme = await setTheme("dark"); +``` + ### Dialogs #### `createDialog` @@ -375,7 +391,7 @@ Shows a toast by the host app. { text: string; duration?: number; - icon?: string; + icon?: string; intent?: SwirlToastIntent; } ``` @@ -393,7 +409,6 @@ await showToast({ icon: "icon", intent: "success", }); - ``` ## Events diff --git a/packages/bridge/package.json b/packages/bridge/package.json index 33427ec6d..a236552a7 100644 --- a/packages/bridge/package.json +++ b/packages/bridge/package.json @@ -1,6 +1,6 @@ { "name": "@getflip/bridge", - "version": "0.5.38", + "version": "0.6.30", "description": "Flip JavaScript Bridge for external integrations.", "main": "dist/index.cjs.js", "module": "dist/index.mjs", @@ -18,7 +18,7 @@ "test:watch": "jest --watchAll" }, "dependencies": { - "@getflip/swirl-components": "^0.217.0", + "@getflip/swirl-components": "^0.257.0", "uuid": "^9.0.0" }, "devDependencies": { diff --git a/packages/bridge/src/theming/theming.spec.ts b/packages/bridge/src/theming/theming.spec.ts index f3bbbdfd6..6a4536cec 100644 --- a/packages/bridge/src/theming/theming.spec.ts +++ b/packages/bridge/src/theming/theming.spec.ts @@ -1,5 +1,5 @@ import { makeRequest } from "../messaging"; -import { getTheme } from "./theming"; +import { getTheme, setTheme } from "./theming"; jest.mock("../messaging", () => ({ makeRequest: jest.fn(), @@ -22,4 +22,20 @@ describe("theming", () => { method: "GET_THEME", }); }); + + test("'setTheme' sends correct request", async () => { + await setTheme("dark"); + + const makeRequestMock = makeRequest as unknown as jest.Mock< + typeof makeRequest + >; + + expect(makeRequestMock).toHaveBeenCalledWith({ + id: makeRequestMock.mock.calls[0][0].id, + method: "SET_THEME", + params: { + theme: "dark", + }, + }); + }); }); diff --git a/packages/bridge/src/theming/theming.ts b/packages/bridge/src/theming/theming.ts index 22bdaab53..0d283ffe9 100644 --- a/packages/bridge/src/theming/theming.ts +++ b/packages/bridge/src/theming/theming.ts @@ -1,7 +1,13 @@ +import { SwirlOSTheme } from "@getflip/swirl-components"; import { v4 as uuidv4 } from "uuid"; import { makeRequest } from "../messaging"; import { BridgeMethod } from "../types"; -import { GetThemeRequest, GetThemeResult } from "./theming.types"; +import { + GetThemeRequest, + GetThemeResult, + SetThemeRequest, + SetThemeResult, +} from "./theming.types"; export function getTheme() { const request: GetThemeRequest = { @@ -11,3 +17,13 @@ export function getTheme() { return makeRequest(request); } + +export function setTheme(theme: SwirlOSTheme) { + const request: SetThemeRequest = { + id: uuidv4(), + method: BridgeMethod.SET_THEME, + params: { theme }, + }; + + return makeRequest(request); +} diff --git a/packages/bridge/src/theming/theming.types.ts b/packages/bridge/src/theming/theming.types.ts index fac41b441..6c7ca4333 100644 --- a/packages/bridge/src/theming/theming.types.ts +++ b/packages/bridge/src/theming/theming.types.ts @@ -1,6 +1,6 @@ import { SwirlOSTheme } from "@getflip/swirl-components/dist/types/components/swirl-theme-provider/swirl-theme-provider.types"; -import { BridgeMethod } from "../types"; import { BridgeRequest } from "../messaging/messaging.types"; +import { BridgeMethod } from "../types"; export type GetThemeRequest = BridgeRequest; @@ -8,3 +8,10 @@ export type GetThemeResult = { activeTheme: SwirlOSTheme; preferredTheme: SwirlOSTheme | undefined; }; + +export type SetThemeRequest = BridgeRequest< + BridgeMethod.SET_THEME, + { theme: SwirlOSTheme | undefined } +>; + +export type SetThemeResult = SwirlOSTheme | undefined; diff --git a/packages/bridge/src/types.ts b/packages/bridge/src/types.ts index ae11567aa..c6ede2b7b 100644 --- a/packages/bridge/src/types.ts +++ b/packages/bridge/src/types.ts @@ -13,7 +13,7 @@ import { OpenModalResult, } from "./modal"; import { NavigateResult } from "./navigation"; -import { GetThemeResult } from "./theming"; +import { GetThemeResult, SetThemeResult } from "./theming"; import { ShowToastResult } from "./toast"; export type BridgeOptions = { @@ -43,6 +43,7 @@ export enum BridgeMethod { NAVIGATE = "NAVIGATE", OPEN_DIALOG = "OPEN_DIALOG", OPEN_MODAL = "OPEN_MODAL", + SET_THEME = "SET_THEME", SHOW_TOAST = "SHOW_TOAST", SUBSCRIBE = "SUBSCRIBE", UNSUBSCRIBE = "UNSUBSCRIBE", @@ -61,6 +62,7 @@ export type BridgeMethodResultMapping = { [BridgeMethod.NAVIGATE]: NavigateResult; [BridgeMethod.OPEN_DIALOG]: OpenDialogResult; [BridgeMethod.OPEN_MODAL]: OpenModalResult; + [BridgeMethod.SET_THEME]: SetThemeResult; [BridgeMethod.SHOW_TOAST]: ShowToastResult; [BridgeMethod.SUBSCRIBE]: SubscribeResult; [BridgeMethod.UNSUBSCRIBE]: UnsubscribeResult; diff --git a/packages/swirl-components-angular/CHANGELOG.md b/packages/swirl-components-angular/CHANGELOG.md index c895809d4..14da173ab 100644 --- a/packages/swirl-components-angular/CHANGELOG.md +++ b/packages/swirl-components-angular/CHANGELOG.md @@ -1,5 +1,930 @@ # @getflip/swirl-components-angular +## 0.257.0 + +### Minor Changes + +- [#864](https://github.com/getflip/swirl/pull/864) + [`ecbd8609`](https://github.com/getflip/swirl/commit/ecbd860903169e635c00a8c2384b1c4139201915) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Added animation and + wrapper element to swirl navigation item component + +### Patch Changes + +- Updated dependencies + [[`ecbd8609`](https://github.com/getflip/swirl/commit/ecbd860903169e635c00a8c2384b1c4139201915)]: + - @getflip/swirl-components@0.257.0 + +## 0.256.2 + +### Patch Changes + +- [#862](https://github.com/getflip/swirl/pull/862) + [`f5d91707`](https://github.com/getflip/swirl/commit/f5d91707d06757e62d5d27e152aed97d9c80b92e) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Made check for + expandable component clearer + +* [#862](https://github.com/getflip/swirl/pull/862) + [`f5d91707`](https://github.com/getflip/swirl/commit/f5d91707d06757e62d5d27e152aed97d9c80b92e) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Fixed expandable + event swollowing + +* Updated dependencies + [[`f5d91707`](https://github.com/getflip/swirl/commit/f5d91707d06757e62d5d27e152aed97d9c80b92e), + [`f5d91707`](https://github.com/getflip/swirl/commit/f5d91707d06757e62d5d27e152aed97d9c80b92e)]: + - @getflip/swirl-components@0.256.2 + +## 0.256.1 + +### Patch Changes + +- [#860](https://github.com/getflip/swirl/pull/860) + [`fc1e576a`](https://github.com/getflip/swirl/commit/fc1e576a90245b42bacb5fa79304d16857c34d21) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Fixed expandable + event swollowing + +- Updated dependencies + [[`fc1e576a`](https://github.com/getflip/swirl/commit/fc1e576a90245b42bacb5fa79304d16857c34d21)]: + - @getflip/swirl-components@0.256.1 + +## 0.256.0 + +### Minor Changes + +- [#853](https://github.com/getflip/swirl/pull/853) + [`9ef1d493`](https://github.com/getflip/swirl/commit/9ef1d4938a1fe84e9f56d8f60396824604fb59bc) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Refactored Swirl + Tree Navigation Item + +### Patch Changes + +- Updated dependencies + [[`9ef1d493`](https://github.com/getflip/swirl/commit/9ef1d4938a1fe84e9f56d8f60396824604fb59bc)]: + - @getflip/swirl-components@0.256.0 + +## 0.255.0 + +### Minor Changes + +- [#856](https://github.com/getflip/swirl/pull/856) + [`f0ad90c4`](https://github.com/getflip/swirl/commit/f0ad90c49defa3aa8332b99339075001c8386564) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Added secondary + label and changed tooltip color + +* [#857](https://github.com/getflip/swirl/pull/857) + [`d3a68077`](https://github.com/getflip/swirl/commit/d3a68077f15c596f6fed41bc375c2e319ae75b89) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Add + iconPosition prop to swirl-tag + +### Patch Changes + +- Updated dependencies + [[`f0ad90c4`](https://github.com/getflip/swirl/commit/f0ad90c49defa3aa8332b99339075001c8386564), + [`d3a68077`](https://github.com/getflip/swirl/commit/d3a68077f15c596f6fed41bc375c2e319ae75b89)]: + - @getflip/swirl-components@0.255.0 + +## 0.254.1 + +### Patch Changes + +- [`59d8466f`](https://github.com/getflip/swirl/commit/59d8466fbfa2e53b416233759100c03574cd8b8e) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix disabled styles of + swirl-button when used as a link + +- Updated dependencies + [[`59d8466f`](https://github.com/getflip/swirl/commit/59d8466fbfa2e53b416233759100c03574cd8b8e)]: + - @getflip/swirl-components@0.254.1 + +## 0.254.0 + +### Minor Changes + +- [`31540c9a`](https://github.com/getflip/swirl/commit/31540c9a09aa3bcf8cebe3406f0cd2fb54f9682f) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add post approval icon + +### Patch Changes + +- Updated dependencies + [[`31540c9a`](https://github.com/getflip/swirl/commit/31540c9a09aa3bcf8cebe3406f0cd2fb54f9682f)]: + - @getflip/swirl-components@0.254.0 + +## 0.253.0 + +### Minor Changes + +- [`2a44f406`](https://github.com/getflip/swirl/commit/2a44f4067ddf8636c2e9b03fdde9d7e8bf72af4c) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "tooltip" prop to swirl-radio + +### Patch Changes + +- Updated dependencies + [[`2a44f406`](https://github.com/getflip/swirl/commit/2a44f4067ddf8636c2e9b03fdde9d7e8bf72af4c)]: + - @getflip/swirl-components@0.253.0 + +## 0.252.1 + +### Patch Changes + +- [#850](https://github.com/getflip/swirl/pull/850) + [`d97f762b`](https://github.com/getflip/swirl/commit/d97f762b1b38fcb0d5136845b78256046059c729) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Hide the + swirl-shell-navigation-item gradient if collapsed + +- Updated dependencies + [[`d97f762b`](https://github.com/getflip/swirl/commit/d97f762b1b38fcb0d5136845b78256046059c729)]: + - @getflip/swirl-components@0.252.1 + +## 0.252.0 + +### Minor Changes + +- [#845](https://github.com/getflip/swirl/pull/845) + [`63609b09`](https://github.com/getflip/swirl/commit/63609b0941b8121e542cbed881ab1c8ae91cd1a9) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Fix + swirl-app-bar to allow truncation of heading + +### Patch Changes + +- Updated dependencies + [[`63609b09`](https://github.com/getflip/swirl/commit/63609b0941b8121e542cbed881ab1c8ae91cd1a9)]: + - @getflip/swirl-components@0.252.0 + +## 0.251.0 + +### Minor Changes + +- [#846](https://github.com/getflip/swirl/pull/846) + [`9012ceca`](https://github.com/getflip/swirl/commit/9012cecaf6816a262388ff4f021b92fe5d6e2770) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Remove + duplicate menu shadow + +### Patch Changes + +- Updated dependencies + [[`9012ceca`](https://github.com/getflip/swirl/commit/9012cecaf6816a262388ff4f021b92fe5d6e2770)]: + - @getflip/swirl-components@0.251.0 + +## 0.250.0 + +### Minor Changes + +- [#839](https://github.com/getflip/swirl/pull/839) + [`de49d0e6`](https://github.com/getflip/swirl/commit/de49d0e6abc6452ec334bf848a1eb0709d129897) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Improve + loading and gif handling + +### Patch Changes + +- Updated dependencies + [[`de49d0e6`](https://github.com/getflip/swirl/commit/de49d0e6abc6452ec334bf848a1eb0709d129897)]: + - @getflip/swirl-components@0.250.0 + +## 0.249.1 + +### Patch Changes + +- [`6a531e70`](https://github.com/getflip/swirl/commit/6a531e7041d5208604f2f6dd3fa7429acd6aa3ff) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Minor styling fix for + swirl-select + +- Updated dependencies + [[`6a531e70`](https://github.com/getflip/swirl/commit/6a531e7041d5208604f2f6dd3fa7429acd6aa3ff)]: + - @getflip/swirl-components@0.249.1 + +## 0.249.0 + +### Minor Changes + +- [#838](https://github.com/getflip/swirl/pull/838) + [`1f6c1d13`](https://github.com/getflip/swirl/commit/1f6c1d133c82cc2891301a2acc8b9427951fcc6b) + Thanks [@matvlaovi-flip](https://github.com/matvlaovi-flip)! - Add + swirl-toggle-button and swirl-toggle-group components + +### Patch Changes + +- Updated dependencies + [[`1f6c1d13`](https://github.com/getflip/swirl/commit/1f6c1d133c82cc2891301a2acc8b9427951fcc6b)]: + - @getflip/swirl-components@0.249.0 + +## 0.248.0 + +### Minor Changes + +- [`14e5b4b6`](https://github.com/getflip/swirl/commit/14e5b4b6c32e54dcd44dbccde5179b1dd0dc153b) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "standalone" prop to + swirl-select + +### Patch Changes + +- Updated dependencies + [[`14e5b4b6`](https://github.com/getflip/swirl/commit/14e5b4b6c32e54dcd44dbccde5179b1dd0dc153b)]: + - @getflip/swirl-components@0.248.0 + +## 0.247.1 + +### Patch Changes + +- [`b36913d7`](https://github.com/getflip/swirl/commit/b36913d7e431c755cdf2bcdd8e0048dd1bbe7464) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix a minor styling issue of the + swirl-pagination component + +- Updated dependencies + [[`b36913d7`](https://github.com/getflip/swirl/commit/b36913d7e431c755cdf2bcdd8e0048dd1bbe7464)]: + - @getflip/swirl-components@0.247.1 + +## 0.247.0 + +### Minor Changes + +- [#835](https://github.com/getflip/swirl/pull/835) + [`2a7aebd1`](https://github.com/getflip/swirl/commit/2a7aebd1e210a5d98913083ea5b8520bd7421ad6) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "avatar" slot to + swirl-option-list-item + +### Patch Changes + +- Updated dependencies + [[`2a7aebd1`](https://github.com/getflip/swirl/commit/2a7aebd1e210a5d98913083ea5b8520bd7421ad6)]: + - @getflip/swirl-components@0.247.0 + +## 0.246.0 + +### Minor Changes + +- [#833](https://github.com/getflip/swirl/pull/833) + [`02ef115a`](https://github.com/getflip/swirl/commit/02ef115a7b41be4eb2b827e1c8ba4ac03934dcfd) + Thanks [@matvlaovi-flip](https://github.com/matvlaovi-flip)! - Fix value + update issue in the swirl-date-input component + +### Patch Changes + +- Updated dependencies + [[`02ef115a`](https://github.com/getflip/swirl/commit/02ef115a7b41be4eb2b827e1c8ba4ac03934dcfd)]: + - @getflip/swirl-components@0.246.0 + +## 0.245.0 + +### Minor Changes + +- [#827](https://github.com/getflip/swirl/pull/827) + [`091d8868`](https://github.com/getflip/swirl/commit/091d88684f020c37ae2d40300c55e8f49e42ec36) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Update shell + nav item styles + +### Patch Changes + +- Updated dependencies + [[`091d8868`](https://github.com/getflip/swirl/commit/091d88684f020c37ae2d40300c55e8f49e42ec36)]: + - @getflip/swirl-components@0.245.0 + +## 0.244.0 + +### Minor Changes + +- [#830](https://github.com/getflip/swirl/pull/830) + [`0772ac8a`](https://github.com/getflip/swirl/commit/0772ac8a4031b73faa1e31058d625a2cf5e6e031) + Thanks [@matvlaovi-flip](https://github.com/matvlaovi-flip)! - Pass the + datepicker start date in the short ISO format + +### Patch Changes + +- Updated dependencies + [[`0772ac8a`](https://github.com/getflip/swirl/commit/0772ac8a4031b73faa1e31058d625a2cf5e6e031)]: + - @getflip/swirl-components@0.244.0 + +## 0.243.0 + +### Minor Changes + +- [#828](https://github.com/getflip/swirl/pull/828) + [`d2cc34fa`](https://github.com/getflip/swirl/commit/d2cc34fa7bd77ffb1217334b7051f890553f0cc8) + Thanks [@matvlaovi-flip](https://github.com/matvlaovi-flip)! - Make + swirl-date-picker in the swirl-date-input open on the selected date + +### Patch Changes + +- Updated dependencies + [[`d2cc34fa`](https://github.com/getflip/swirl/commit/d2cc34fa7bd77ffb1217334b7051f890553f0cc8)]: + - @getflip/swirl-components@0.243.0 + +## 0.242.0 + +### Minor Changes + +- [#825](https://github.com/getflip/swirl/pull/825) + [`5fc723fa`](https://github.com/getflip/swirl/commit/5fc723facdd2311bb8ae3e27de31ef996e274fb4) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Make image + grid static image sizes + +### Patch Changes + +- Updated dependencies + [[`5fc723fa`](https://github.com/getflip/swirl/commit/5fc723facdd2311bb8ae3e27de31ef996e274fb4)]: + - @getflip/swirl-components@0.242.0 + +## 0.241.4 + +### Patch Changes + +- [#823](https://github.com/getflip/swirl/pull/823) + [`c330be6d`](https://github.com/getflip/swirl/commit/c330be6df11783c0defa2b741928b7e564183241) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Fixed positioning + of swirl-toolbar children through the wrap property + +- Updated dependencies + [[`c330be6d`](https://github.com/getflip/swirl/commit/c330be6df11783c0defa2b741928b7e564183241)]: + - @getflip/swirl-components@0.241.4 + +## 0.241.3 + +### Patch Changes + +- [#821](https://github.com/getflip/swirl/pull/821) + [`2cdc24e3`](https://github.com/getflip/swirl/commit/2cdc24e3296d5354102d7628ae734ed25f861f93) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Fix + swirl-option-list-item applied width + +- Updated dependencies + [[`2cdc24e3`](https://github.com/getflip/swirl/commit/2cdc24e3296d5354102d7628ae734ed25f861f93)]: + - @getflip/swirl-components@0.241.3 + +## 0.241.2 + +### Patch Changes + +- [#819](https://github.com/getflip/swirl/pull/819) + [`1bd66440`](https://github.com/getflip/swirl/commit/1bd66440355b44833f9b89dd7a925a0de7c44b61) + Thanks [@danizep](https://github.com/danizep)! - Add large size to flat, plain + and on-image SwirlButtons + +- Updated dependencies + [[`1bd66440`](https://github.com/getflip/swirl/commit/1bd66440355b44833f9b89dd7a925a0de7c44b61)]: + - @getflip/swirl-components@0.241.2 + +## 0.241.1 + +### Patch Changes + +- [`cf172218`](https://github.com/getflip/swirl/commit/cf172218751c3ea8d52e97020702bb1a0d1c8b5b) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Reduce the amount of + swirl-tooltip repositionings + +- Updated dependencies + [[`cf172218`](https://github.com/getflip/swirl/commit/cf172218751c3ea8d52e97020702bb1a0d1c8b5b)]: + - @getflip/swirl-components@0.241.1 + +## 0.241.0 + +### Minor Changes + +- [`b3f8bbeb`](https://github.com/getflip/swirl/commit/b3f8bbeb32f85c7d4ad4a611b95c5c1439768856) - + Update gif controls icon size + +### Patch Changes + +- Updated dependencies + [[`b3f8bbeb`](https://github.com/getflip/swirl/commit/b3f8bbeb32f85c7d4ad4a611b95c5c1439768856)]: + - @getflip/swirl-components@0.241.0 + +## 0.240.1 + +### Patch Changes + +- [`c69cf843`](https://github.com/getflip/swirl/commit/c69cf843057ad7e2459cb80b8aaf1714879dcdec) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix children update issue of + swirl-tree-view-item + +- Updated dependencies + [[`c69cf843`](https://github.com/getflip/swirl/commit/c69cf843057ad7e2459cb80b8aaf1714879dcdec)]: + - @getflip/swirl-components@0.240.1 + +## 0.240.0 + +### Minor Changes + +- [#813](https://github.com/getflip/swirl/pull/813) + [`b6f26c1a`](https://github.com/getflip/swirl/commit/b6f26c1a8dc26eb2e0d45f3691301d75553a0122) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Add gif + playback functionality to image grid items + +### Patch Changes + +- Updated dependencies + [[`b6f26c1a`](https://github.com/getflip/swirl/commit/b6f26c1a8dc26eb2e0d45f3691301d75553a0122)]: + - @getflip/swirl-components@0.240.0 + +## 0.239.1 + +### Patch Changes + +- [`5af61856`](https://github.com/getflip/swirl/commit/5af61856e645072dda5059a285465be703252199) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix swirl-lightbox focus trap + being triggered too early in some cases + +- Updated dependencies + [[`5af61856`](https://github.com/getflip/swirl/commit/5af61856e645072dda5059a285465be703252199)]: + - @getflip/swirl-components@0.239.1 + +## 0.239.0 + +### Minor Changes + +- [#810](https://github.com/getflip/swirl/pull/810) + [`fea94a96`](https://github.com/getflip/swirl/commit/fea94a96753fa7fb1537e5d6430b22be3d11b791) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Added prop to + disable expanding tree items + +* [#808](https://github.com/getflip/swirl/pull/808) + [`229add12`](https://github.com/getflip/swirl/commit/229add12139d2015c794f5108915b676de0501cf) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Replaced gif + icon + +### Patch Changes + +- Updated dependencies + [[`fea94a96`](https://github.com/getflip/swirl/commit/fea94a96753fa7fb1537e5d6430b22be3d11b791), + [`229add12`](https://github.com/getflip/swirl/commit/229add12139d2015c794f5108915b676de0501cf)]: + - @getflip/swirl-components@0.239.0 + +## 0.238.0 + +### Minor Changes + +- [#806](https://github.com/getflip/swirl/pull/806) + [`e8981393`](https://github.com/getflip/swirl/commit/e8981393a765e106a8006df7a2752438aa3b9350) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Add color + selector to tree view item icons + +### Patch Changes + +- Updated dependencies + [[`e8981393`](https://github.com/getflip/swirl/commit/e8981393a765e106a8006df7a2752438aa3b9350)]: + - @getflip/swirl-components@0.238.0 + +## 0.237.0 + +### Minor Changes + +- [#804](https://github.com/getflip/swirl/pull/804) + [`1e4569a1`](https://github.com/getflip/swirl/commit/1e4569a196c9efb0c7d221685722253fb7ea23f9) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "collapsibleNavigation" prop + to swirl-app-layout to allow users to collapse the navigation + +### Patch Changes + +- Updated dependencies + [[`1e4569a1`](https://github.com/getflip/swirl/commit/1e4569a196c9efb0c7d221685722253fb7ea23f9)]: + - @getflip/swirl-components@0.237.0 + +## 0.236.1 + +### Patch Changes + +- [#802](https://github.com/getflip/swirl/pull/802) + [`ec850064`](https://github.com/getflip/swirl/commit/ec850064fe4e3639222161bce3c3a313ba9bc698) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix swirl-shell-layout and + swirl-app-layout scroll detection and border visibility +- Updated dependencies + [[`ec850064`](https://github.com/getflip/swirl/commit/ec850064fe4e3639222161bce3c3a313ba9bc698)]: + - @getflip/swirl-components@0.236.1 + +## 0.236.0 + +### Minor Changes + +- [#800](https://github.com/getflip/swirl/pull/800) + [`369515d4`](https://github.com/getflip/swirl/commit/369515d4e38ed4b0c63977c529fcf06ca8d5dfc0) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add + bordered-block-end-when-scrolled and bordered-block-start-when-scrolled props + to swirl-box + +* [#800](https://github.com/getflip/swirl/pull/800) + [`369515d4`](https://github.com/getflip/swirl/commit/369515d4e38ed4b0c63977c529fcf06ca8d5dfc0) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Reveal borders of + swirl-shell-layout and swirl-app-layout on scroll + +### Patch Changes + +- [`d7142aa4`](https://github.com/getflip/swirl/commit/d7142aa41ea06e662155d221285196d85ff58572) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix a keyboard control issue of + swirl-tree-view + +- Updated dependencies + [[`369515d4`](https://github.com/getflip/swirl/commit/369515d4e38ed4b0c63977c529fcf06ca8d5dfc0), + [`369515d4`](https://github.com/getflip/swirl/commit/369515d4e38ed4b0c63977c529fcf06ca8d5dfc0), + [`d7142aa4`](https://github.com/getflip/swirl/commit/d7142aa41ea06e662155d221285196d85ff58572)]: + - @getflip/swirl-components@0.236.0 + +## 0.235.1 + +### Patch Changes + +- [#798](https://github.com/getflip/swirl/pull/798) + [`cadf77f3`](https://github.com/getflip/swirl/commit/cadf77f34397e530e35060dbc31e1c71b6141ea2) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Prevent + valueChange event propagation in swirl-select + +- Updated dependencies + [[`cadf77f3`](https://github.com/getflip/swirl/commit/cadf77f34397e530e35060dbc31e1c71b6141ea2)]: + - @getflip/swirl-components@0.235.1 + +## 0.235.0 + +### Minor Changes + +- [#796](https://github.com/getflip/swirl/pull/796) + [`95a50fe3`](https://github.com/getflip/swirl/commit/95a50fe33070170ccee37d3d5a4ff3cfc6047458) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Remove drag + behavior when the swirl-lightbox has only one item + +### Patch Changes + +- [`f66bfa94`](https://github.com/getflip/swirl/commit/f66bfa94fc5d230d71fb1efe8d3ded1d8d6dbc0b) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Only emit swirl-tree-view-item + expansion state events if not already in same state +- Updated dependencies + [[`95a50fe3`](https://github.com/getflip/swirl/commit/95a50fe33070170ccee37d3d5a4ff3cfc6047458), + [`f66bfa94`](https://github.com/getflip/swirl/commit/f66bfa94fc5d230d71fb1efe8d3ded1d8d6dbc0b)]: + - @getflip/swirl-components@0.235.0 + +## 0.234.0 + +### Minor Changes + +- [#794](https://github.com/getflip/swirl/pull/794) + [`28309df9`](https://github.com/getflip/swirl/commit/28309df93eef2c55134ac1f51c60c073662d6860) + Thanks [@danizep](https://github.com/danizep)! - Add livestream icons + +### Patch Changes + +- Updated dependencies + [[`28309df9`](https://github.com/getflip/swirl/commit/28309df93eef2c55134ac1f51c60c073662d6860)]: + - @getflip/swirl-components@0.234.0 + +## 0.233.1 + +### Patch Changes + +- [`0ec94e7e`](https://github.com/getflip/swirl/commit/0ec94e7e002a3c00ed43cc31125e47575506cfac) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Adjust swirl-tree-view expansion + change event + +- Updated dependencies + [[`0ec94e7e`](https://github.com/getflip/swirl/commit/0ec94e7e002a3c00ed43cc31125e47575506cfac)]: + - @getflip/swirl-components@0.233.1 + +## 0.233.0 + +### Minor Changes + +- [#789](https://github.com/getflip/swirl/pull/789) + [`8fc64d9c`](https://github.com/getflip/swirl/commit/8fc64d9c1637c04e46ecaf221199e23be73379ef) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add swirl-tree-view and + swirl-tree-view-item components + +### Patch Changes + +- Updated dependencies + [[`8fc64d9c`](https://github.com/getflip/swirl/commit/8fc64d9c1637c04e46ecaf221199e23be73379ef)]: + - @getflip/swirl-components@0.233.0 + +## 0.232.0 + +### Minor Changes + +- [`c917a77a`](https://github.com/getflip/swirl/commit/c917a77a2bd1b378d6176f667b4e25e175ca9f3e) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Align package versions + +### Patch Changes + +- Updated dependencies + [[`62afe3d8`](https://github.com/getflip/swirl/commit/62afe3d80984f5016703b178412e9120d68b400e), + [`c917a77a`](https://github.com/getflip/swirl/commit/c917a77a2bd1b378d6176f667b4e25e175ca9f3e)]: + - @getflip/swirl-components@0.231.0 + +## 0.231.0 + +### Minor Changes + +- [`63a350b4`](https://github.com/getflip/swirl/commit/63a350b4b3567954149ae1159f660a6fe748323d) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add icons + +### Patch Changes + +- [`63a350b4`](https://github.com/getflip/swirl/commit/63a350b4b3567954149ae1159f660a6fe748323d) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Minor style adjustments of teh + swirl-shell-layout + +- Updated dependencies + [[`63a350b4`](https://github.com/getflip/swirl/commit/63a350b4b3567954149ae1159f660a6fe748323d)]: + - @getflip/swirl-components@0.230.1 + +## 0.230.0 + +### Minor Changes + +- [#787](https://github.com/getflip/swirl/pull/787) + [`08326ecc`](https://github.com/getflip/swirl/commit/08326ecc29ae06fa14ee77705c3d6858c6bf27c8) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Fix + Navigation labels not showing + +### Patch Changes + +- Updated dependencies + [[`08326ecc`](https://github.com/getflip/swirl/commit/08326ecc29ae06fa14ee77705c3d6858c6bf27c8)]: + - @getflip/swirl-components@0.230.0 + +## 0.229.0 + +### Minor Changes + +- [`c22e465f`](https://github.com/getflip/swirl/commit/c22e465fbb938e2da9900a0c1390ed2458b32ddb) - + Fix changeset + +### Patch Changes + +- [#785](https://github.com/getflip/swirl/pull/785) + [`947da5d3`](https://github.com/getflip/swirl/commit/947da5d3cc60b5a0e040c487ae4b3c5137294c51) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Add spacing + prop to swirl-resource-list + +- Updated dependencies + [[`947da5d3`](https://github.com/getflip/swirl/commit/947da5d3cc60b5a0e040c487ae4b3c5137294c51), + [`c22e465f`](https://github.com/getflip/swirl/commit/c22e465fbb938e2da9900a0c1390ed2458b32ddb)]: + - @getflip/swirl-components@0.229.0 + +## 0.228.0 + +### Minor Changes + +- [`815a91bd`](https://github.com/getflip/swirl/commit/815a91bd6b0e2348e3277073116004f50db77477) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add icons "public" and + "public-off" + +### Patch Changes + +- Updated dependencies + [[`815a91bd`](https://github.com/getflip/swirl/commit/815a91bd6b0e2348e3277073116004f50db77477)]: + - @getflip/swirl-components@0.228.0 + +## 0.227.0 + +### Minor Changes + +- [#782](https://github.com/getflip/swirl/pull/782) + [`2025e3e4`](https://github.com/getflip/swirl/commit/2025e3e4735595b40190cc5b1e22d9ed53fdcb6f) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Add + responsive prop to text + +### Patch Changes + +- Updated dependencies + [[`2025e3e4`](https://github.com/getflip/swirl/commit/2025e3e4735595b40190cc5b1e22d9ed53fdcb6f)]: + - @getflip/swirl-components@0.227.0 + +## 0.226.1 + +### Patch Changes + +- [`bce80621`](https://github.com/getflip/swirl/commit/bce80621f5e9d3e47d68e6278d1e7e499b096809) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix secondary navigation state + restoration of swirl-shell-layout + +* [#778](https://github.com/getflip/swirl/pull/778) + [`b1b7b434`](https://github.com/getflip/swirl/commit/b1b7b434b04e593e53ba71b20c358e5315e52e63) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Fix + swirl-file-viewer-pdf current page number + +* Updated dependencies + [[`bce80621`](https://github.com/getflip/swirl/commit/bce80621f5e9d3e47d68e6278d1e7e499b096809), + [`b1b7b434`](https://github.com/getflip/swirl/commit/b1b7b434b04e593e53ba71b20c358e5315e52e63)]: + - @getflip/swirl-components@0.226.1 + +## 0.226.0 + +### Minor Changes + +- [#775](https://github.com/getflip/swirl/pull/775) + [`fbf71bc9`](https://github.com/getflip/swirl/commit/fbf71bc94c4eb9e5276b002dc40a90c582feb69f) + Thanks [@maraikeschneider](https://github.com/maraikeschneider)! - Fix + handling of table layout when table is rendered within a modal + +### Patch Changes + +- Updated dependencies + [[`fbf71bc9`](https://github.com/getflip/swirl/commit/fbf71bc94c4eb9e5276b002dc40a90c582feb69f)]: + - @getflip/swirl-components@0.226.0 + +## 0.225.2 + +### Patch Changes + +- [`97c45d46`](https://github.com/getflip/swirl/commit/97c45d46eb7cec30d6c49b6192c2b7a51aaf95a9) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Improve download handling of + fallback file viewer + +- Updated dependencies + [[`97c45d46`](https://github.com/getflip/swirl/commit/97c45d46eb7cec30d6c49b6192c2b7a51aaf95a9)]: + - @getflip/swirl-components@0.225.2 + +## 0.225.1 + +### Patch Changes + +- [`3f98de9e`](https://github.com/getflip/swirl/commit/3f98de9e198a3f25c57551f14ee6495ab0f7d837) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Make swirl-file-viewer-fallback + respect disabled downloads + +- Updated dependencies + [[`3f98de9e`](https://github.com/getflip/swirl/commit/3f98de9e198a3f25c57551f14ee6495ab0f7d837)]: + - @getflip/swirl-components@0.225.1 + +## 0.225.0 + +### Minor Changes + +- [`0c855fb9`](https://github.com/getflip/swirl/commit/0c855fb9772d0555da72b82cee6df30e9d6ac8d1) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add swirl-file-viewer-fallback + for unsupported file types + +### Patch Changes + +- Updated dependencies + [[`0c855fb9`](https://github.com/getflip/swirl/commit/0c855fb9772d0555da72b82cee6df30e9d6ac8d1)]: + - @getflip/swirl-components@0.225.0 + +## 0.224.0 + +### Minor Changes + +- [`6a1af78a`](https://github.com/getflip/swirl/commit/6a1af78a11afe552d7e49f1b2ed93f5ba0623c9a) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add chipClick event to swirl-chip + +### Patch Changes + +- Updated dependencies + [[`6a1af78a`](https://github.com/getflip/swirl/commit/6a1af78a11afe552d7e49f1b2ed93f5ba0623c9a)]: + - @getflip/swirl-components@0.224.0 + +## 0.223.0 + +### Minor Changes + +- [#770](https://github.com/getflip/swirl/pull/770) + [`9df750c0`](https://github.com/getflip/swirl/commit/9df750c0eb68db1c28bba983461d1cec3f1d31ba) + Thanks [@maraikeschneider](https://github.com/maraikeschneider)! - Apply + sticky property to table columns and cells + +### Patch Changes + +- Updated dependencies + [[`9df750c0`](https://github.com/getflip/swirl/commit/9df750c0eb68db1c28bba983461d1cec3f1d31ba)]: + - @getflip/swirl-components@0.223.0 + +## 0.222.1 + +### Patch Changes + +- [`4390b336`](https://github.com/getflip/swirl/commit/4390b336e500e2785eda0db99e2b6f9d98a5bd0f) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Don't close mobile shell + navigation when secondary navigation is toggled + +- Updated dependencies + [[`4390b336`](https://github.com/getflip/swirl/commit/4390b336e500e2785eda0db99e2b6f9d98a5bd0f)]: + - @getflip/swirl-components@0.222.1 + +## 0.222.0 + +### Minor Changes + +- [`265823b5`](https://github.com/getflip/swirl/commit/265823b565cf3050ef6889d6f2fe5990fc893de3) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add font-size prop to + swirl-text-input and swirl-form-control + +### Patch Changes + +- Updated dependencies + [[`265823b5`](https://github.com/getflip/swirl/commit/265823b565cf3050ef6889d6f2fe5990fc893de3)]: + - @getflip/swirl-components@0.222.0 + +## 0.221.0 + +### Minor Changes + +- [`0e9413cf`](https://github.com/getflip/swirl/commit/0e9413cfbc2add299f8360078ef2df3cddd1153f) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "border-color" prop to + swirl-box + +### Patch Changes + +- Updated dependencies + [[`0e9413cf`](https://github.com/getflip/swirl/commit/0e9413cfbc2add299f8360078ef2df3cddd1153f)]: + - @getflip/swirl-components@0.221.0 + +## 0.220.5 + +### Patch Changes + +- [`93f59bef`](https://github.com/getflip/swirl/commit/93f59bef3ce31d09e112795f7c520564c0d99355) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix swirl-shell-navigation-item + label wrapping + +- Updated dependencies + [[`93f59bef`](https://github.com/getflip/swirl/commit/93f59bef3ce31d09e112795f7c520564c0d99355)]: + - @getflip/swirl-components@0.220.5 + +## 0.220.4 + +### Patch Changes + +- [`cfaf2b8f`](https://github.com/getflip/swirl/commit/cfaf2b8fa3cfb53df041b7d6c60e64a6a5df1e00) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Tweak swirl-shell-navigation-item + spacing + +- Updated dependencies + [[`cfaf2b8f`](https://github.com/getflip/swirl/commit/cfaf2b8fa3cfb53df041b7d6c60e64a6a5df1e00)]: + - @getflip/swirl-components@0.220.4 + +## 0.220.3 + +### Patch Changes + +- [`875d491a`](https://github.com/getflip/swirl/commit/875d491a355ce89d2f15f880ad55f0b714ab0aaf) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Tweak swirl-shell-navigation-item + styling + +- Updated dependencies + [[`875d491a`](https://github.com/getflip/swirl/commit/875d491a355ce89d2f15f880ad55f0b714ab0aaf)]: + - @getflip/swirl-components@0.220.3 + +## 0.220.2 + +### Patch Changes + +- [`b54e20a7`](https://github.com/getflip/swirl/commit/b54e20a77aae792a8e3afa5f0069457a5985530f) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix allowed shell layout + navigation markup + +- Updated dependencies + [[`b54e20a7`](https://github.com/getflip/swirl/commit/b54e20a77aae792a8e3afa5f0069457a5985530f)]: + - @getflip/swirl-components@0.220.2 + +## 0.220.1 + +### Patch Changes + +- [`ebde720e`](https://github.com/getflip/swirl/commit/ebde720ea7a1e80d9e8db13e9852d3601013a5f6) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix shell layout navigation item + handling if items change at runtime + +- Updated dependencies + [[`ebde720e`](https://github.com/getflip/swirl/commit/ebde720ea7a1e80d9e8db13e9852d3601013a5f6)]: + - @getflip/swirl-components@0.220.1 + +## 0.220.0 + +### Minor Changes + +- [#762](https://github.com/getflip/swirl/pull/762) + [`e9ffdb07`](https://github.com/getflip/swirl/commit/e9ffdb073a2b8dcfcaf56ecdb87fbd037ba3d125) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add optional grid layout for + shell layout navigation + +### Patch Changes + +- Updated dependencies + [[`e9ffdb07`](https://github.com/getflip/swirl/commit/e9ffdb073a2b8dcfcaf56ecdb87fbd037ba3d125)]: + - @getflip/swirl-components@0.220.0 + +## 0.219.0 + +### Minor Changes + +- [#760](https://github.com/getflip/swirl/pull/760) + [`9b7ec15d`](https://github.com/getflip/swirl/commit/9b7ec15d6f3f8ad7fb5886fa79c0ec56c28e06d6) + Thanks [@koraxis](https://github.com/koraxis)! - Add RemoveCircle icon + +### Patch Changes + +- Updated dependencies + [[`9b7ec15d`](https://github.com/getflip/swirl/commit/9b7ec15d6f3f8ad7fb5886fa79c0ec56c28e06d6)]: + - @getflip/swirl-components@0.219.0 + +## 0.218.0 + +### Minor Changes + +- [#758](https://github.com/getflip/swirl/pull/758) + [`a842a881`](https://github.com/getflip/swirl/commit/a842a8813b8c124fa952124053c648a43fd826c3) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Avatar group + customizable badge size + +### Patch Changes + +- Updated dependencies + [[`a842a881`](https://github.com/getflip/swirl/commit/a842a8813b8c124fa952124053c648a43fd826c3)]: + - @getflip/swirl-components@0.218.0 + ## 0.217.0 ### Minor Changes diff --git a/packages/swirl-components-angular/package.json b/packages/swirl-components-angular/package.json index 44bd0b817..dfa762702 100644 --- a/packages/swirl-components-angular/package.json +++ b/packages/swirl-components-angular/package.json @@ -1,6 +1,6 @@ { "name": "@getflip/swirl-components-angular", - "version": "0.217.0", + "version": "0.257.0", "scripts": { "ng": "ng", "build": "ng build" @@ -14,7 +14,7 @@ "@angular/platform-browser": "^16.2.12", "@angular/platform-browser-dynamic": "^16.2.12", "@angular/router": "^16.2.12", - "@getflip/swirl-components": "^0.217.0", + "@getflip/swirl-components": "^0.257.0", "rxjs": "~7.5.0", "tslib": "^2.3.0", "zone.js": "~0.13.3" @@ -26,4 +26,4 @@ "ng-packagr": "^16.2.3", "typescript": "~4.9.5" } -} \ No newline at end of file +} diff --git a/packages/swirl-components-react/CHANGELOG.md b/packages/swirl-components-react/CHANGELOG.md index c595e3ff2..46428fbf9 100644 --- a/packages/swirl-components-react/CHANGELOG.md +++ b/packages/swirl-components-react/CHANGELOG.md @@ -1,5 +1,930 @@ # @getflip/swirl-components-react +## 0.257.0 + +### Minor Changes + +- [#864](https://github.com/getflip/swirl/pull/864) + [`ecbd8609`](https://github.com/getflip/swirl/commit/ecbd860903169e635c00a8c2384b1c4139201915) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Added animation and + wrapper element to swirl navigation item component + +### Patch Changes + +- Updated dependencies + [[`ecbd8609`](https://github.com/getflip/swirl/commit/ecbd860903169e635c00a8c2384b1c4139201915)]: + - @getflip/swirl-components@0.257.0 + +## 0.256.2 + +### Patch Changes + +- [#862](https://github.com/getflip/swirl/pull/862) + [`f5d91707`](https://github.com/getflip/swirl/commit/f5d91707d06757e62d5d27e152aed97d9c80b92e) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Made check for + expandable component clearer + +* [#862](https://github.com/getflip/swirl/pull/862) + [`f5d91707`](https://github.com/getflip/swirl/commit/f5d91707d06757e62d5d27e152aed97d9c80b92e) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Fixed expandable + event swollowing + +* Updated dependencies + [[`f5d91707`](https://github.com/getflip/swirl/commit/f5d91707d06757e62d5d27e152aed97d9c80b92e), + [`f5d91707`](https://github.com/getflip/swirl/commit/f5d91707d06757e62d5d27e152aed97d9c80b92e)]: + - @getflip/swirl-components@0.256.2 + +## 0.256.1 + +### Patch Changes + +- [#860](https://github.com/getflip/swirl/pull/860) + [`fc1e576a`](https://github.com/getflip/swirl/commit/fc1e576a90245b42bacb5fa79304d16857c34d21) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Fixed expandable + event swollowing + +- Updated dependencies + [[`fc1e576a`](https://github.com/getflip/swirl/commit/fc1e576a90245b42bacb5fa79304d16857c34d21)]: + - @getflip/swirl-components@0.256.1 + +## 0.256.0 + +### Minor Changes + +- [#853](https://github.com/getflip/swirl/pull/853) + [`9ef1d493`](https://github.com/getflip/swirl/commit/9ef1d4938a1fe84e9f56d8f60396824604fb59bc) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Refactored Swirl + Tree Navigation Item + +### Patch Changes + +- Updated dependencies + [[`9ef1d493`](https://github.com/getflip/swirl/commit/9ef1d4938a1fe84e9f56d8f60396824604fb59bc)]: + - @getflip/swirl-components@0.256.0 + +## 0.255.0 + +### Minor Changes + +- [#856](https://github.com/getflip/swirl/pull/856) + [`f0ad90c4`](https://github.com/getflip/swirl/commit/f0ad90c49defa3aa8332b99339075001c8386564) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Added secondary + label and changed tooltip color + +* [#857](https://github.com/getflip/swirl/pull/857) + [`d3a68077`](https://github.com/getflip/swirl/commit/d3a68077f15c596f6fed41bc375c2e319ae75b89) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Add + iconPosition prop to swirl-tag + +### Patch Changes + +- Updated dependencies + [[`f0ad90c4`](https://github.com/getflip/swirl/commit/f0ad90c49defa3aa8332b99339075001c8386564), + [`d3a68077`](https://github.com/getflip/swirl/commit/d3a68077f15c596f6fed41bc375c2e319ae75b89)]: + - @getflip/swirl-components@0.255.0 + +## 0.254.1 + +### Patch Changes + +- [`59d8466f`](https://github.com/getflip/swirl/commit/59d8466fbfa2e53b416233759100c03574cd8b8e) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix disabled styles of + swirl-button when used as a link + +- Updated dependencies + [[`59d8466f`](https://github.com/getflip/swirl/commit/59d8466fbfa2e53b416233759100c03574cd8b8e)]: + - @getflip/swirl-components@0.254.1 + +## 0.254.0 + +### Minor Changes + +- [`31540c9a`](https://github.com/getflip/swirl/commit/31540c9a09aa3bcf8cebe3406f0cd2fb54f9682f) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add post approval icon + +### Patch Changes + +- Updated dependencies + [[`31540c9a`](https://github.com/getflip/swirl/commit/31540c9a09aa3bcf8cebe3406f0cd2fb54f9682f)]: + - @getflip/swirl-components@0.254.0 + +## 0.253.0 + +### Minor Changes + +- [`2a44f406`](https://github.com/getflip/swirl/commit/2a44f4067ddf8636c2e9b03fdde9d7e8bf72af4c) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "tooltip" prop to swirl-radio + +### Patch Changes + +- Updated dependencies + [[`2a44f406`](https://github.com/getflip/swirl/commit/2a44f4067ddf8636c2e9b03fdde9d7e8bf72af4c)]: + - @getflip/swirl-components@0.253.0 + +## 0.252.1 + +### Patch Changes + +- [#850](https://github.com/getflip/swirl/pull/850) + [`d97f762b`](https://github.com/getflip/swirl/commit/d97f762b1b38fcb0d5136845b78256046059c729) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Hide the + swirl-shell-navigation-item gradient if collapsed + +- Updated dependencies + [[`d97f762b`](https://github.com/getflip/swirl/commit/d97f762b1b38fcb0d5136845b78256046059c729)]: + - @getflip/swirl-components@0.252.1 + +## 0.252.0 + +### Minor Changes + +- [#845](https://github.com/getflip/swirl/pull/845) + [`63609b09`](https://github.com/getflip/swirl/commit/63609b0941b8121e542cbed881ab1c8ae91cd1a9) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Fix + swirl-app-bar to allow truncation of heading + +### Patch Changes + +- Updated dependencies + [[`63609b09`](https://github.com/getflip/swirl/commit/63609b0941b8121e542cbed881ab1c8ae91cd1a9)]: + - @getflip/swirl-components@0.252.0 + +## 0.251.0 + +### Minor Changes + +- [#846](https://github.com/getflip/swirl/pull/846) + [`9012ceca`](https://github.com/getflip/swirl/commit/9012cecaf6816a262388ff4f021b92fe5d6e2770) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Remove + duplicate menu shadow + +### Patch Changes + +- Updated dependencies + [[`9012ceca`](https://github.com/getflip/swirl/commit/9012cecaf6816a262388ff4f021b92fe5d6e2770)]: + - @getflip/swirl-components@0.251.0 + +## 0.250.0 + +### Minor Changes + +- [#839](https://github.com/getflip/swirl/pull/839) + [`de49d0e6`](https://github.com/getflip/swirl/commit/de49d0e6abc6452ec334bf848a1eb0709d129897) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Improve + loading and gif handling + +### Patch Changes + +- Updated dependencies + [[`de49d0e6`](https://github.com/getflip/swirl/commit/de49d0e6abc6452ec334bf848a1eb0709d129897)]: + - @getflip/swirl-components@0.250.0 + +## 0.249.1 + +### Patch Changes + +- [`6a531e70`](https://github.com/getflip/swirl/commit/6a531e7041d5208604f2f6dd3fa7429acd6aa3ff) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Minor styling fix for + swirl-select + +- Updated dependencies + [[`6a531e70`](https://github.com/getflip/swirl/commit/6a531e7041d5208604f2f6dd3fa7429acd6aa3ff)]: + - @getflip/swirl-components@0.249.1 + +## 0.249.0 + +### Minor Changes + +- [#838](https://github.com/getflip/swirl/pull/838) + [`1f6c1d13`](https://github.com/getflip/swirl/commit/1f6c1d133c82cc2891301a2acc8b9427951fcc6b) + Thanks [@matvlaovi-flip](https://github.com/matvlaovi-flip)! - Add + swirl-toggle-button and swirl-toggle-group components + +### Patch Changes + +- Updated dependencies + [[`1f6c1d13`](https://github.com/getflip/swirl/commit/1f6c1d133c82cc2891301a2acc8b9427951fcc6b)]: + - @getflip/swirl-components@0.249.0 + +## 0.248.0 + +### Minor Changes + +- [`14e5b4b6`](https://github.com/getflip/swirl/commit/14e5b4b6c32e54dcd44dbccde5179b1dd0dc153b) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "standalone" prop to + swirl-select + +### Patch Changes + +- Updated dependencies + [[`14e5b4b6`](https://github.com/getflip/swirl/commit/14e5b4b6c32e54dcd44dbccde5179b1dd0dc153b)]: + - @getflip/swirl-components@0.248.0 + +## 0.247.1 + +### Patch Changes + +- [`b36913d7`](https://github.com/getflip/swirl/commit/b36913d7e431c755cdf2bcdd8e0048dd1bbe7464) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix a minor styling issue of the + swirl-pagination component + +- Updated dependencies + [[`b36913d7`](https://github.com/getflip/swirl/commit/b36913d7e431c755cdf2bcdd8e0048dd1bbe7464)]: + - @getflip/swirl-components@0.247.1 + +## 0.247.0 + +### Minor Changes + +- [#835](https://github.com/getflip/swirl/pull/835) + [`2a7aebd1`](https://github.com/getflip/swirl/commit/2a7aebd1e210a5d98913083ea5b8520bd7421ad6) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "avatar" slot to + swirl-option-list-item + +### Patch Changes + +- Updated dependencies + [[`2a7aebd1`](https://github.com/getflip/swirl/commit/2a7aebd1e210a5d98913083ea5b8520bd7421ad6)]: + - @getflip/swirl-components@0.247.0 + +## 0.246.0 + +### Minor Changes + +- [#833](https://github.com/getflip/swirl/pull/833) + [`02ef115a`](https://github.com/getflip/swirl/commit/02ef115a7b41be4eb2b827e1c8ba4ac03934dcfd) + Thanks [@matvlaovi-flip](https://github.com/matvlaovi-flip)! - Fix value + update issue in the swirl-date-input component + +### Patch Changes + +- Updated dependencies + [[`02ef115a`](https://github.com/getflip/swirl/commit/02ef115a7b41be4eb2b827e1c8ba4ac03934dcfd)]: + - @getflip/swirl-components@0.246.0 + +## 0.245.0 + +### Minor Changes + +- [#827](https://github.com/getflip/swirl/pull/827) + [`091d8868`](https://github.com/getflip/swirl/commit/091d88684f020c37ae2d40300c55e8f49e42ec36) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Update shell + nav item styles + +### Patch Changes + +- Updated dependencies + [[`091d8868`](https://github.com/getflip/swirl/commit/091d88684f020c37ae2d40300c55e8f49e42ec36)]: + - @getflip/swirl-components@0.245.0 + +## 0.244.0 + +### Minor Changes + +- [#830](https://github.com/getflip/swirl/pull/830) + [`0772ac8a`](https://github.com/getflip/swirl/commit/0772ac8a4031b73faa1e31058d625a2cf5e6e031) + Thanks [@matvlaovi-flip](https://github.com/matvlaovi-flip)! - Pass the + datepicker start date in the short ISO format + +### Patch Changes + +- Updated dependencies + [[`0772ac8a`](https://github.com/getflip/swirl/commit/0772ac8a4031b73faa1e31058d625a2cf5e6e031)]: + - @getflip/swirl-components@0.244.0 + +## 0.243.0 + +### Minor Changes + +- [#828](https://github.com/getflip/swirl/pull/828) + [`d2cc34fa`](https://github.com/getflip/swirl/commit/d2cc34fa7bd77ffb1217334b7051f890553f0cc8) + Thanks [@matvlaovi-flip](https://github.com/matvlaovi-flip)! - Make + swirl-date-picker in the swirl-date-input open on the selected date + +### Patch Changes + +- Updated dependencies + [[`d2cc34fa`](https://github.com/getflip/swirl/commit/d2cc34fa7bd77ffb1217334b7051f890553f0cc8)]: + - @getflip/swirl-components@0.243.0 + +## 0.242.0 + +### Minor Changes + +- [#825](https://github.com/getflip/swirl/pull/825) + [`5fc723fa`](https://github.com/getflip/swirl/commit/5fc723facdd2311bb8ae3e27de31ef996e274fb4) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Make image + grid static image sizes + +### Patch Changes + +- Updated dependencies + [[`5fc723fa`](https://github.com/getflip/swirl/commit/5fc723facdd2311bb8ae3e27de31ef996e274fb4)]: + - @getflip/swirl-components@0.242.0 + +## 0.241.4 + +### Patch Changes + +- [#823](https://github.com/getflip/swirl/pull/823) + [`c330be6d`](https://github.com/getflip/swirl/commit/c330be6df11783c0defa2b741928b7e564183241) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Fixed positioning + of swirl-toolbar children through the wrap property + +- Updated dependencies + [[`c330be6d`](https://github.com/getflip/swirl/commit/c330be6df11783c0defa2b741928b7e564183241)]: + - @getflip/swirl-components@0.241.4 + +## 0.241.3 + +### Patch Changes + +- [#821](https://github.com/getflip/swirl/pull/821) + [`2cdc24e3`](https://github.com/getflip/swirl/commit/2cdc24e3296d5354102d7628ae734ed25f861f93) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Fix + swirl-option-list-item applied width + +- Updated dependencies + [[`2cdc24e3`](https://github.com/getflip/swirl/commit/2cdc24e3296d5354102d7628ae734ed25f861f93)]: + - @getflip/swirl-components@0.241.3 + +## 0.241.2 + +### Patch Changes + +- [#819](https://github.com/getflip/swirl/pull/819) + [`1bd66440`](https://github.com/getflip/swirl/commit/1bd66440355b44833f9b89dd7a925a0de7c44b61) + Thanks [@danizep](https://github.com/danizep)! - Add large size to flat, plain + and on-image SwirlButtons + +- Updated dependencies + [[`1bd66440`](https://github.com/getflip/swirl/commit/1bd66440355b44833f9b89dd7a925a0de7c44b61)]: + - @getflip/swirl-components@0.241.2 + +## 0.241.1 + +### Patch Changes + +- [`cf172218`](https://github.com/getflip/swirl/commit/cf172218751c3ea8d52e97020702bb1a0d1c8b5b) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Reduce the amount of + swirl-tooltip repositionings + +- Updated dependencies + [[`cf172218`](https://github.com/getflip/swirl/commit/cf172218751c3ea8d52e97020702bb1a0d1c8b5b)]: + - @getflip/swirl-components@0.241.1 + +## 0.241.0 + +### Minor Changes + +- [`b3f8bbeb`](https://github.com/getflip/swirl/commit/b3f8bbeb32f85c7d4ad4a611b95c5c1439768856) - + Update gif controls icon size + +### Patch Changes + +- Updated dependencies + [[`b3f8bbeb`](https://github.com/getflip/swirl/commit/b3f8bbeb32f85c7d4ad4a611b95c5c1439768856)]: + - @getflip/swirl-components@0.241.0 + +## 0.240.1 + +### Patch Changes + +- [`c69cf843`](https://github.com/getflip/swirl/commit/c69cf843057ad7e2459cb80b8aaf1714879dcdec) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix children update issue of + swirl-tree-view-item + +- Updated dependencies + [[`c69cf843`](https://github.com/getflip/swirl/commit/c69cf843057ad7e2459cb80b8aaf1714879dcdec)]: + - @getflip/swirl-components@0.240.1 + +## 0.240.0 + +### Minor Changes + +- [#813](https://github.com/getflip/swirl/pull/813) + [`b6f26c1a`](https://github.com/getflip/swirl/commit/b6f26c1a8dc26eb2e0d45f3691301d75553a0122) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Add gif + playback functionality to image grid items + +### Patch Changes + +- Updated dependencies + [[`b6f26c1a`](https://github.com/getflip/swirl/commit/b6f26c1a8dc26eb2e0d45f3691301d75553a0122)]: + - @getflip/swirl-components@0.240.0 + +## 0.239.1 + +### Patch Changes + +- [`5af61856`](https://github.com/getflip/swirl/commit/5af61856e645072dda5059a285465be703252199) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix swirl-lightbox focus trap + being triggered too early in some cases + +- Updated dependencies + [[`5af61856`](https://github.com/getflip/swirl/commit/5af61856e645072dda5059a285465be703252199)]: + - @getflip/swirl-components@0.239.1 + +## 0.239.0 + +### Minor Changes + +- [#810](https://github.com/getflip/swirl/pull/810) + [`fea94a96`](https://github.com/getflip/swirl/commit/fea94a96753fa7fb1537e5d6430b22be3d11b791) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Added prop to + disable expanding tree items + +* [#808](https://github.com/getflip/swirl/pull/808) + [`229add12`](https://github.com/getflip/swirl/commit/229add12139d2015c794f5108915b676de0501cf) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Replaced gif + icon + +### Patch Changes + +- Updated dependencies + [[`fea94a96`](https://github.com/getflip/swirl/commit/fea94a96753fa7fb1537e5d6430b22be3d11b791), + [`229add12`](https://github.com/getflip/swirl/commit/229add12139d2015c794f5108915b676de0501cf)]: + - @getflip/swirl-components@0.239.0 + +## 0.238.0 + +### Minor Changes + +- [#806](https://github.com/getflip/swirl/pull/806) + [`e8981393`](https://github.com/getflip/swirl/commit/e8981393a765e106a8006df7a2752438aa3b9350) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Add color + selector to tree view item icons + +### Patch Changes + +- Updated dependencies + [[`e8981393`](https://github.com/getflip/swirl/commit/e8981393a765e106a8006df7a2752438aa3b9350)]: + - @getflip/swirl-components@0.238.0 + +## 0.237.0 + +### Minor Changes + +- [#804](https://github.com/getflip/swirl/pull/804) + [`1e4569a1`](https://github.com/getflip/swirl/commit/1e4569a196c9efb0c7d221685722253fb7ea23f9) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "collapsibleNavigation" prop + to swirl-app-layout to allow users to collapse the navigation + +### Patch Changes + +- Updated dependencies + [[`1e4569a1`](https://github.com/getflip/swirl/commit/1e4569a196c9efb0c7d221685722253fb7ea23f9)]: + - @getflip/swirl-components@0.237.0 + +## 0.236.1 + +### Patch Changes + +- [#802](https://github.com/getflip/swirl/pull/802) + [`ec850064`](https://github.com/getflip/swirl/commit/ec850064fe4e3639222161bce3c3a313ba9bc698) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix swirl-shell-layout and + swirl-app-layout scroll detection and border visibility +- Updated dependencies + [[`ec850064`](https://github.com/getflip/swirl/commit/ec850064fe4e3639222161bce3c3a313ba9bc698)]: + - @getflip/swirl-components@0.236.1 + +## 0.236.0 + +### Minor Changes + +- [#800](https://github.com/getflip/swirl/pull/800) + [`369515d4`](https://github.com/getflip/swirl/commit/369515d4e38ed4b0c63977c529fcf06ca8d5dfc0) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add + bordered-block-end-when-scrolled and bordered-block-start-when-scrolled props + to swirl-box + +* [#800](https://github.com/getflip/swirl/pull/800) + [`369515d4`](https://github.com/getflip/swirl/commit/369515d4e38ed4b0c63977c529fcf06ca8d5dfc0) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Reveal borders of + swirl-shell-layout and swirl-app-layout on scroll + +### Patch Changes + +- [`d7142aa4`](https://github.com/getflip/swirl/commit/d7142aa41ea06e662155d221285196d85ff58572) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix a keyboard control issue of + swirl-tree-view + +- Updated dependencies + [[`369515d4`](https://github.com/getflip/swirl/commit/369515d4e38ed4b0c63977c529fcf06ca8d5dfc0), + [`369515d4`](https://github.com/getflip/swirl/commit/369515d4e38ed4b0c63977c529fcf06ca8d5dfc0), + [`d7142aa4`](https://github.com/getflip/swirl/commit/d7142aa41ea06e662155d221285196d85ff58572)]: + - @getflip/swirl-components@0.236.0 + +## 0.235.1 + +### Patch Changes + +- [#798](https://github.com/getflip/swirl/pull/798) + [`cadf77f3`](https://github.com/getflip/swirl/commit/cadf77f34397e530e35060dbc31e1c71b6141ea2) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Prevent + valueChange event propagation in swirl-select + +- Updated dependencies + [[`cadf77f3`](https://github.com/getflip/swirl/commit/cadf77f34397e530e35060dbc31e1c71b6141ea2)]: + - @getflip/swirl-components@0.235.1 + +## 0.235.0 + +### Minor Changes + +- [#796](https://github.com/getflip/swirl/pull/796) + [`95a50fe3`](https://github.com/getflip/swirl/commit/95a50fe33070170ccee37d3d5a4ff3cfc6047458) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Remove drag + behavior when the swirl-lightbox has only one item + +### Patch Changes + +- [`f66bfa94`](https://github.com/getflip/swirl/commit/f66bfa94fc5d230d71fb1efe8d3ded1d8d6dbc0b) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Only emit swirl-tree-view-item + expansion state events if not already in same state +- Updated dependencies + [[`95a50fe3`](https://github.com/getflip/swirl/commit/95a50fe33070170ccee37d3d5a4ff3cfc6047458), + [`f66bfa94`](https://github.com/getflip/swirl/commit/f66bfa94fc5d230d71fb1efe8d3ded1d8d6dbc0b)]: + - @getflip/swirl-components@0.235.0 + +## 0.234.0 + +### Minor Changes + +- [#794](https://github.com/getflip/swirl/pull/794) + [`28309df9`](https://github.com/getflip/swirl/commit/28309df93eef2c55134ac1f51c60c073662d6860) + Thanks [@danizep](https://github.com/danizep)! - Add livestream icons + +### Patch Changes + +- Updated dependencies + [[`28309df9`](https://github.com/getflip/swirl/commit/28309df93eef2c55134ac1f51c60c073662d6860)]: + - @getflip/swirl-components@0.234.0 + +## 0.233.1 + +### Patch Changes + +- [`0ec94e7e`](https://github.com/getflip/swirl/commit/0ec94e7e002a3c00ed43cc31125e47575506cfac) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Adjust swirl-tree-view expansion + change event + +- Updated dependencies + [[`0ec94e7e`](https://github.com/getflip/swirl/commit/0ec94e7e002a3c00ed43cc31125e47575506cfac)]: + - @getflip/swirl-components@0.233.1 + +## 0.233.0 + +### Minor Changes + +- [#789](https://github.com/getflip/swirl/pull/789) + [`8fc64d9c`](https://github.com/getflip/swirl/commit/8fc64d9c1637c04e46ecaf221199e23be73379ef) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add swirl-tree-view and + swirl-tree-view-item components + +### Patch Changes + +- Updated dependencies + [[`8fc64d9c`](https://github.com/getflip/swirl/commit/8fc64d9c1637c04e46ecaf221199e23be73379ef)]: + - @getflip/swirl-components@0.233.0 + +## 0.232.0 + +### Minor Changes + +- [`c917a77a`](https://github.com/getflip/swirl/commit/c917a77a2bd1b378d6176f667b4e25e175ca9f3e) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Align package versions + +### Patch Changes + +- Updated dependencies + [[`62afe3d8`](https://github.com/getflip/swirl/commit/62afe3d80984f5016703b178412e9120d68b400e), + [`c917a77a`](https://github.com/getflip/swirl/commit/c917a77a2bd1b378d6176f667b4e25e175ca9f3e)]: + - @getflip/swirl-components@0.231.0 + +## 0.231.0 + +### Minor Changes + +- [`63a350b4`](https://github.com/getflip/swirl/commit/63a350b4b3567954149ae1159f660a6fe748323d) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add icons + +### Patch Changes + +- [`63a350b4`](https://github.com/getflip/swirl/commit/63a350b4b3567954149ae1159f660a6fe748323d) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Minor style adjustments of teh + swirl-shell-layout + +- Updated dependencies + [[`63a350b4`](https://github.com/getflip/swirl/commit/63a350b4b3567954149ae1159f660a6fe748323d)]: + - @getflip/swirl-components@0.230.1 + +## 0.230.0 + +### Minor Changes + +- [#787](https://github.com/getflip/swirl/pull/787) + [`08326ecc`](https://github.com/getflip/swirl/commit/08326ecc29ae06fa14ee77705c3d6858c6bf27c8) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Fix + Navigation labels not showing + +### Patch Changes + +- Updated dependencies + [[`08326ecc`](https://github.com/getflip/swirl/commit/08326ecc29ae06fa14ee77705c3d6858c6bf27c8)]: + - @getflip/swirl-components@0.230.0 + +## 0.229.0 + +### Minor Changes + +- [`c22e465f`](https://github.com/getflip/swirl/commit/c22e465fbb938e2da9900a0c1390ed2458b32ddb) - + Fix changeset + +### Patch Changes + +- [#785](https://github.com/getflip/swirl/pull/785) + [`947da5d3`](https://github.com/getflip/swirl/commit/947da5d3cc60b5a0e040c487ae4b3c5137294c51) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Add spacing + prop to swirl-resource-list + +- Updated dependencies + [[`947da5d3`](https://github.com/getflip/swirl/commit/947da5d3cc60b5a0e040c487ae4b3c5137294c51), + [`c22e465f`](https://github.com/getflip/swirl/commit/c22e465fbb938e2da9900a0c1390ed2458b32ddb)]: + - @getflip/swirl-components@0.229.0 + +## 0.228.0 + +### Minor Changes + +- [`815a91bd`](https://github.com/getflip/swirl/commit/815a91bd6b0e2348e3277073116004f50db77477) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add icons "public" and + "public-off" + +### Patch Changes + +- Updated dependencies + [[`815a91bd`](https://github.com/getflip/swirl/commit/815a91bd6b0e2348e3277073116004f50db77477)]: + - @getflip/swirl-components@0.228.0 + +## 0.227.0 + +### Minor Changes + +- [#782](https://github.com/getflip/swirl/pull/782) + [`2025e3e4`](https://github.com/getflip/swirl/commit/2025e3e4735595b40190cc5b1e22d9ed53fdcb6f) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Add + responsive prop to text + +### Patch Changes + +- Updated dependencies + [[`2025e3e4`](https://github.com/getflip/swirl/commit/2025e3e4735595b40190cc5b1e22d9ed53fdcb6f)]: + - @getflip/swirl-components@0.227.0 + +## 0.226.1 + +### Patch Changes + +- [`bce80621`](https://github.com/getflip/swirl/commit/bce80621f5e9d3e47d68e6278d1e7e499b096809) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix secondary navigation state + restoration of swirl-shell-layout + +* [#778](https://github.com/getflip/swirl/pull/778) + [`b1b7b434`](https://github.com/getflip/swirl/commit/b1b7b434b04e593e53ba71b20c358e5315e52e63) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Fix + swirl-file-viewer-pdf current page number + +* Updated dependencies + [[`bce80621`](https://github.com/getflip/swirl/commit/bce80621f5e9d3e47d68e6278d1e7e499b096809), + [`b1b7b434`](https://github.com/getflip/swirl/commit/b1b7b434b04e593e53ba71b20c358e5315e52e63)]: + - @getflip/swirl-components@0.226.1 + +## 0.226.0 + +### Minor Changes + +- [#775](https://github.com/getflip/swirl/pull/775) + [`fbf71bc9`](https://github.com/getflip/swirl/commit/fbf71bc94c4eb9e5276b002dc40a90c582feb69f) + Thanks [@maraikeschneider](https://github.com/maraikeschneider)! - Fix + handling of table layout when table is rendered within a modal + +### Patch Changes + +- Updated dependencies + [[`fbf71bc9`](https://github.com/getflip/swirl/commit/fbf71bc94c4eb9e5276b002dc40a90c582feb69f)]: + - @getflip/swirl-components@0.226.0 + +## 0.225.2 + +### Patch Changes + +- [`97c45d46`](https://github.com/getflip/swirl/commit/97c45d46eb7cec30d6c49b6192c2b7a51aaf95a9) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Improve download handling of + fallback file viewer + +- Updated dependencies + [[`97c45d46`](https://github.com/getflip/swirl/commit/97c45d46eb7cec30d6c49b6192c2b7a51aaf95a9)]: + - @getflip/swirl-components@0.225.2 + +## 0.225.1 + +### Patch Changes + +- [`3f98de9e`](https://github.com/getflip/swirl/commit/3f98de9e198a3f25c57551f14ee6495ab0f7d837) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Make swirl-file-viewer-fallback + respect disabled downloads + +- Updated dependencies + [[`3f98de9e`](https://github.com/getflip/swirl/commit/3f98de9e198a3f25c57551f14ee6495ab0f7d837)]: + - @getflip/swirl-components@0.225.1 + +## 0.225.0 + +### Minor Changes + +- [`0c855fb9`](https://github.com/getflip/swirl/commit/0c855fb9772d0555da72b82cee6df30e9d6ac8d1) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add swirl-file-viewer-fallback + for unsupported file types + +### Patch Changes + +- Updated dependencies + [[`0c855fb9`](https://github.com/getflip/swirl/commit/0c855fb9772d0555da72b82cee6df30e9d6ac8d1)]: + - @getflip/swirl-components@0.225.0 + +## 0.224.0 + +### Minor Changes + +- [`6a1af78a`](https://github.com/getflip/swirl/commit/6a1af78a11afe552d7e49f1b2ed93f5ba0623c9a) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add chipClick event to swirl-chip + +### Patch Changes + +- Updated dependencies + [[`6a1af78a`](https://github.com/getflip/swirl/commit/6a1af78a11afe552d7e49f1b2ed93f5ba0623c9a)]: + - @getflip/swirl-components@0.224.0 + +## 0.223.0 + +### Minor Changes + +- [#770](https://github.com/getflip/swirl/pull/770) + [`9df750c0`](https://github.com/getflip/swirl/commit/9df750c0eb68db1c28bba983461d1cec3f1d31ba) + Thanks [@maraikeschneider](https://github.com/maraikeschneider)! - Apply + sticky property to table columns and cells + +### Patch Changes + +- Updated dependencies + [[`9df750c0`](https://github.com/getflip/swirl/commit/9df750c0eb68db1c28bba983461d1cec3f1d31ba)]: + - @getflip/swirl-components@0.223.0 + +## 0.222.1 + +### Patch Changes + +- [`4390b336`](https://github.com/getflip/swirl/commit/4390b336e500e2785eda0db99e2b6f9d98a5bd0f) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Don't close mobile shell + navigation when secondary navigation is toggled + +- Updated dependencies + [[`4390b336`](https://github.com/getflip/swirl/commit/4390b336e500e2785eda0db99e2b6f9d98a5bd0f)]: + - @getflip/swirl-components@0.222.1 + +## 0.222.0 + +### Minor Changes + +- [`265823b5`](https://github.com/getflip/swirl/commit/265823b565cf3050ef6889d6f2fe5990fc893de3) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add font-size prop to + swirl-text-input and swirl-form-control + +### Patch Changes + +- Updated dependencies + [[`265823b5`](https://github.com/getflip/swirl/commit/265823b565cf3050ef6889d6f2fe5990fc893de3)]: + - @getflip/swirl-components@0.222.0 + +## 0.221.0 + +### Minor Changes + +- [`0e9413cf`](https://github.com/getflip/swirl/commit/0e9413cfbc2add299f8360078ef2df3cddd1153f) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "border-color" prop to + swirl-box + +### Patch Changes + +- Updated dependencies + [[`0e9413cf`](https://github.com/getflip/swirl/commit/0e9413cfbc2add299f8360078ef2df3cddd1153f)]: + - @getflip/swirl-components@0.221.0 + +## 0.220.5 + +### Patch Changes + +- [`93f59bef`](https://github.com/getflip/swirl/commit/93f59bef3ce31d09e112795f7c520564c0d99355) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix swirl-shell-navigation-item + label wrapping + +- Updated dependencies + [[`93f59bef`](https://github.com/getflip/swirl/commit/93f59bef3ce31d09e112795f7c520564c0d99355)]: + - @getflip/swirl-components@0.220.5 + +## 0.220.4 + +### Patch Changes + +- [`cfaf2b8f`](https://github.com/getflip/swirl/commit/cfaf2b8fa3cfb53df041b7d6c60e64a6a5df1e00) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Tweak swirl-shell-navigation-item + spacing + +- Updated dependencies + [[`cfaf2b8f`](https://github.com/getflip/swirl/commit/cfaf2b8fa3cfb53df041b7d6c60e64a6a5df1e00)]: + - @getflip/swirl-components@0.220.4 + +## 0.220.3 + +### Patch Changes + +- [`875d491a`](https://github.com/getflip/swirl/commit/875d491a355ce89d2f15f880ad55f0b714ab0aaf) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Tweak swirl-shell-navigation-item + styling + +- Updated dependencies + [[`875d491a`](https://github.com/getflip/swirl/commit/875d491a355ce89d2f15f880ad55f0b714ab0aaf)]: + - @getflip/swirl-components@0.220.3 + +## 0.220.2 + +### Patch Changes + +- [`b54e20a7`](https://github.com/getflip/swirl/commit/b54e20a77aae792a8e3afa5f0069457a5985530f) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix allowed shell layout + navigation markup + +- Updated dependencies + [[`b54e20a7`](https://github.com/getflip/swirl/commit/b54e20a77aae792a8e3afa5f0069457a5985530f)]: + - @getflip/swirl-components@0.220.2 + +## 0.220.1 + +### Patch Changes + +- [`ebde720e`](https://github.com/getflip/swirl/commit/ebde720ea7a1e80d9e8db13e9852d3601013a5f6) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix shell layout navigation item + handling if items change at runtime + +- Updated dependencies + [[`ebde720e`](https://github.com/getflip/swirl/commit/ebde720ea7a1e80d9e8db13e9852d3601013a5f6)]: + - @getflip/swirl-components@0.220.1 + +## 0.220.0 + +### Minor Changes + +- [#762](https://github.com/getflip/swirl/pull/762) + [`e9ffdb07`](https://github.com/getflip/swirl/commit/e9ffdb073a2b8dcfcaf56ecdb87fbd037ba3d125) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add optional grid layout for + shell layout navigation + +### Patch Changes + +- Updated dependencies + [[`e9ffdb07`](https://github.com/getflip/swirl/commit/e9ffdb073a2b8dcfcaf56ecdb87fbd037ba3d125)]: + - @getflip/swirl-components@0.220.0 + +## 0.219.0 + +### Minor Changes + +- [#760](https://github.com/getflip/swirl/pull/760) + [`9b7ec15d`](https://github.com/getflip/swirl/commit/9b7ec15d6f3f8ad7fb5886fa79c0ec56c28e06d6) + Thanks [@koraxis](https://github.com/koraxis)! - Add RemoveCircle icon + +### Patch Changes + +- Updated dependencies + [[`9b7ec15d`](https://github.com/getflip/swirl/commit/9b7ec15d6f3f8ad7fb5886fa79c0ec56c28e06d6)]: + - @getflip/swirl-components@0.219.0 + +## 0.218.0 + +### Minor Changes + +- [#758](https://github.com/getflip/swirl/pull/758) + [`a842a881`](https://github.com/getflip/swirl/commit/a842a8813b8c124fa952124053c648a43fd826c3) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Avatar group + customizable badge size + +### Patch Changes + +- Updated dependencies + [[`a842a881`](https://github.com/getflip/swirl/commit/a842a8813b8c124fa952124053c648a43fd826c3)]: + - @getflip/swirl-components@0.218.0 + ## 0.217.0 ### Minor Changes diff --git a/packages/swirl-components-react/package.json b/packages/swirl-components-react/package.json index 7f5e36649..3dd125c6b 100644 --- a/packages/swirl-components-react/package.json +++ b/packages/swirl-components-react/package.json @@ -1,6 +1,6 @@ { "name": "@getflip/swirl-components-react", - "version": "0.217.0", + "version": "0.257.0", "type": "module", "files": [ "dist" @@ -18,7 +18,7 @@ "build": "tsc && vite build" }, "dependencies": { - "@getflip/swirl-components": "^0.217.0", + "@getflip/swirl-components": "^0.257.0", "react": "^18.2.0", "react-dom": "^18.2.0" }, diff --git a/packages/swirl-components/.eslintrc.js b/packages/swirl-components/.eslintrc.js index bfad9aeb7..2ee0ef364 100644 --- a/packages/swirl-components/.eslintrc.js +++ b/packages/swirl-components/.eslintrc.js @@ -10,5 +10,6 @@ module.exports = { "@stencil/decorators-context": "off", "@stencil/dependency-suggestions": "off", "@stencil/no-unused-watch": "off", + "@stencil/strict-boolean-conditions": "off", }, }; diff --git a/packages/swirl-components/.storybook/preview-head.html b/packages/swirl-components/.storybook/preview-head.html index 28e16b789..d2b47c9ec 100644 --- a/packages/swirl-components/.storybook/preview-head.html +++ b/packages/swirl-components/.storybook/preview-head.html @@ -37,7 +37,7 @@ .sbdocs .docblock-source, .sbdocs hr:not(:first-child), - .sbdocs ul:not(:first-child), + .sbdocs ul:not(:first-child):not(.tree-view-item__children), .sbdocs ol:not(:first-child), .sbdocs p:not(:first-child), .sbdocs preview:not(:first-child), diff --git a/packages/swirl-components/CHANGELOG.md b/packages/swirl-components/CHANGELOG.md index ad45084fb..25000278a 100644 --- a/packages/swirl-components/CHANGELOG.md +++ b/packages/swirl-components/CHANGELOG.md @@ -1,5 +1,627 @@ # @getflip/swirl-components +## 0.257.0 + +### Minor Changes + +- [#864](https://github.com/getflip/swirl/pull/864) + [`ecbd8609`](https://github.com/getflip/swirl/commit/ecbd860903169e635c00a8c2384b1c4139201915) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Added animation and + wrapper element to swirl navigation item component + +## 0.256.2 + +### Patch Changes + +- [#862](https://github.com/getflip/swirl/pull/862) + [`f5d91707`](https://github.com/getflip/swirl/commit/f5d91707d06757e62d5d27e152aed97d9c80b92e) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Made check for + expandable component clearer + +* [#862](https://github.com/getflip/swirl/pull/862) + [`f5d91707`](https://github.com/getflip/swirl/commit/f5d91707d06757e62d5d27e152aed97d9c80b92e) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Fixed expandable + event swollowing + +## 0.256.1 + +### Patch Changes + +- [#860](https://github.com/getflip/swirl/pull/860) + [`fc1e576a`](https://github.com/getflip/swirl/commit/fc1e576a90245b42bacb5fa79304d16857c34d21) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Fixed expandable + event swollowing + +## 0.256.0 + +### Minor Changes + +- [#853](https://github.com/getflip/swirl/pull/853) + [`9ef1d493`](https://github.com/getflip/swirl/commit/9ef1d4938a1fe84e9f56d8f60396824604fb59bc) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Refactored Swirl + Tree Navigation Item + +## 0.255.0 + +### Minor Changes + +- [#856](https://github.com/getflip/swirl/pull/856) + [`f0ad90c4`](https://github.com/getflip/swirl/commit/f0ad90c49defa3aa8332b99339075001c8386564) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Added secondary + label and changed tooltip color + +* [#857](https://github.com/getflip/swirl/pull/857) + [`d3a68077`](https://github.com/getflip/swirl/commit/d3a68077f15c596f6fed41bc375c2e319ae75b89) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Add + iconPosition prop to swirl-tag + +## 0.254.1 + +### Patch Changes + +- [`59d8466f`](https://github.com/getflip/swirl/commit/59d8466fbfa2e53b416233759100c03574cd8b8e) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix disabled styles of + swirl-button when used as a link + +## 0.254.0 + +### Minor Changes + +- [`31540c9a`](https://github.com/getflip/swirl/commit/31540c9a09aa3bcf8cebe3406f0cd2fb54f9682f) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add post approval icon + +### Patch Changes + +- Updated dependencies + [[`31540c9a`](https://github.com/getflip/swirl/commit/31540c9a09aa3bcf8cebe3406f0cd2fb54f9682f)]: + - @getflip/swirl-icons@0.45.0 + +## 0.253.0 + +### Minor Changes + +- [`2a44f406`](https://github.com/getflip/swirl/commit/2a44f4067ddf8636c2e9b03fdde9d7e8bf72af4c) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "tooltip" prop to swirl-radio + +## 0.252.1 + +### Patch Changes + +- [#850](https://github.com/getflip/swirl/pull/850) + [`d97f762b`](https://github.com/getflip/swirl/commit/d97f762b1b38fcb0d5136845b78256046059c729) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Hide the + swirl-shell-navigation-item gradient if collapsed + +## 0.252.0 + +### Minor Changes + +- [#845](https://github.com/getflip/swirl/pull/845) + [`63609b09`](https://github.com/getflip/swirl/commit/63609b0941b8121e542cbed881ab1c8ae91cd1a9) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Fix + swirl-app-bar to allow truncation of heading + +## 0.251.0 + +### Minor Changes + +- [#846](https://github.com/getflip/swirl/pull/846) + [`9012ceca`](https://github.com/getflip/swirl/commit/9012cecaf6816a262388ff4f021b92fe5d6e2770) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Remove + duplicate menu shadow + +## 0.250.0 + +### Minor Changes + +- [#839](https://github.com/getflip/swirl/pull/839) + [`de49d0e6`](https://github.com/getflip/swirl/commit/de49d0e6abc6452ec334bf848a1eb0709d129897) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Improve + loading and gif handling + +## 0.249.1 + +### Patch Changes + +- [`6a531e70`](https://github.com/getflip/swirl/commit/6a531e7041d5208604f2f6dd3fa7429acd6aa3ff) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Minor styling fix for + swirl-select + +## 0.249.0 + +### Minor Changes + +- [#838](https://github.com/getflip/swirl/pull/838) + [`1f6c1d13`](https://github.com/getflip/swirl/commit/1f6c1d133c82cc2891301a2acc8b9427951fcc6b) + Thanks [@matvlaovi-flip](https://github.com/matvlaovi-flip)! - Add + swirl-toggle-button and swirl-toggle-group components + +## 0.248.0 + +### Minor Changes + +- [`14e5b4b6`](https://github.com/getflip/swirl/commit/14e5b4b6c32e54dcd44dbccde5179b1dd0dc153b) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "standalone" prop to + swirl-select + +## 0.247.1 + +### Patch Changes + +- [`b36913d7`](https://github.com/getflip/swirl/commit/b36913d7e431c755cdf2bcdd8e0048dd1bbe7464) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix a minor styling issue of the + swirl-pagination component + +## 0.247.0 + +### Minor Changes + +- [#835](https://github.com/getflip/swirl/pull/835) + [`2a7aebd1`](https://github.com/getflip/swirl/commit/2a7aebd1e210a5d98913083ea5b8520bd7421ad6) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "avatar" slot to + swirl-option-list-item + +## 0.246.0 + +### Minor Changes + +- [#833](https://github.com/getflip/swirl/pull/833) + [`02ef115a`](https://github.com/getflip/swirl/commit/02ef115a7b41be4eb2b827e1c8ba4ac03934dcfd) + Thanks [@matvlaovi-flip](https://github.com/matvlaovi-flip)! - Fix value + update issue in the swirl-date-input component + +## 0.245.0 + +### Minor Changes + +- [#827](https://github.com/getflip/swirl/pull/827) + [`091d8868`](https://github.com/getflip/swirl/commit/091d88684f020c37ae2d40300c55e8f49e42ec36) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Update shell + nav item styles + +## 0.244.0 + +### Minor Changes + +- [#830](https://github.com/getflip/swirl/pull/830) + [`0772ac8a`](https://github.com/getflip/swirl/commit/0772ac8a4031b73faa1e31058d625a2cf5e6e031) + Thanks [@matvlaovi-flip](https://github.com/matvlaovi-flip)! - Pass the + datepicker start date in the short ISO format + +## 0.243.0 + +### Minor Changes + +- [#828](https://github.com/getflip/swirl/pull/828) + [`d2cc34fa`](https://github.com/getflip/swirl/commit/d2cc34fa7bd77ffb1217334b7051f890553f0cc8) + Thanks [@matvlaovi-flip](https://github.com/matvlaovi-flip)! - Make + swirl-date-picker in the swirl-date-input open on the selected date + +## 0.242.0 + +### Minor Changes + +- [#825](https://github.com/getflip/swirl/pull/825) + [`5fc723fa`](https://github.com/getflip/swirl/commit/5fc723facdd2311bb8ae3e27de31ef996e274fb4) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Make image + grid static image sizes + +## 0.241.4 + +### Patch Changes + +- [#823](https://github.com/getflip/swirl/pull/823) + [`c330be6d`](https://github.com/getflip/swirl/commit/c330be6df11783c0defa2b741928b7e564183241) + Thanks [@webspaceadam](https://github.com/webspaceadam)! - Fixed positioning + of swirl-toolbar children through the wrap property + +## 0.241.3 + +### Patch Changes + +- [#821](https://github.com/getflip/swirl/pull/821) + [`2cdc24e3`](https://github.com/getflip/swirl/commit/2cdc24e3296d5354102d7628ae734ed25f861f93) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Fix + swirl-option-list-item applied width + +## 0.241.2 + +### Patch Changes + +- [#819](https://github.com/getflip/swirl/pull/819) + [`1bd66440`](https://github.com/getflip/swirl/commit/1bd66440355b44833f9b89dd7a925a0de7c44b61) + Thanks [@danizep](https://github.com/danizep)! - Add large size to flat, plain + and on-image SwirlButtons + +## 0.241.1 + +### Patch Changes + +- [`cf172218`](https://github.com/getflip/swirl/commit/cf172218751c3ea8d52e97020702bb1a0d1c8b5b) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Reduce the amount of + swirl-tooltip repositionings + +## 0.241.0 + +### Minor Changes + +- [`b3f8bbeb`](https://github.com/getflip/swirl/commit/b3f8bbeb32f85c7d4ad4a611b95c5c1439768856) - + Update gif controls icon size + +## 0.240.1 + +### Patch Changes + +- [`c69cf843`](https://github.com/getflip/swirl/commit/c69cf843057ad7e2459cb80b8aaf1714879dcdec) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix children update issue of + swirl-tree-view-item + +## 0.240.0 + +### Minor Changes + +- [#813](https://github.com/getflip/swirl/pull/813) + [`b6f26c1a`](https://github.com/getflip/swirl/commit/b6f26c1a8dc26eb2e0d45f3691301d75553a0122) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Add gif + playback functionality to image grid items + +## 0.239.1 + +### Patch Changes + +- [`5af61856`](https://github.com/getflip/swirl/commit/5af61856e645072dda5059a285465be703252199) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix swirl-lightbox focus trap + being triggered too early in some cases + +## 0.239.0 + +### Minor Changes + +- [#810](https://github.com/getflip/swirl/pull/810) + [`fea94a96`](https://github.com/getflip/swirl/commit/fea94a96753fa7fb1537e5d6430b22be3d11b791) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Added prop to + disable expanding tree items + +* [#808](https://github.com/getflip/swirl/pull/808) + [`229add12`](https://github.com/getflip/swirl/commit/229add12139d2015c794f5108915b676de0501cf) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Replaced gif + icon + +### Patch Changes + +- Updated dependencies + [[`229add12`](https://github.com/getflip/swirl/commit/229add12139d2015c794f5108915b676de0501cf)]: + - @getflip/swirl-icons@0.44.0 + +## 0.238.0 + +### Minor Changes + +- [#806](https://github.com/getflip/swirl/pull/806) + [`e8981393`](https://github.com/getflip/swirl/commit/e8981393a765e106a8006df7a2752438aa3b9350) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Add color + selector to tree view item icons + +## 0.237.0 + +### Minor Changes + +- [#804](https://github.com/getflip/swirl/pull/804) + [`1e4569a1`](https://github.com/getflip/swirl/commit/1e4569a196c9efb0c7d221685722253fb7ea23f9) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "collapsibleNavigation" prop + to swirl-app-layout to allow users to collapse the navigation + +## 0.236.1 + +### Patch Changes + +- [#802](https://github.com/getflip/swirl/pull/802) + [`ec850064`](https://github.com/getflip/swirl/commit/ec850064fe4e3639222161bce3c3a313ba9bc698) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix swirl-shell-layout and + swirl-app-layout scroll detection and border visibility + +## 0.236.0 + +### Minor Changes + +- [#800](https://github.com/getflip/swirl/pull/800) + [`369515d4`](https://github.com/getflip/swirl/commit/369515d4e38ed4b0c63977c529fcf06ca8d5dfc0) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add + bordered-block-end-when-scrolled and bordered-block-start-when-scrolled props + to swirl-box + +* [#800](https://github.com/getflip/swirl/pull/800) + [`369515d4`](https://github.com/getflip/swirl/commit/369515d4e38ed4b0c63977c529fcf06ca8d5dfc0) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Reveal borders of + swirl-shell-layout and swirl-app-layout on scroll + +### Patch Changes + +- [`d7142aa4`](https://github.com/getflip/swirl/commit/d7142aa41ea06e662155d221285196d85ff58572) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix a keyboard control issue of + swirl-tree-view + +## 0.235.1 + +### Patch Changes + +- [#798](https://github.com/getflip/swirl/pull/798) + [`cadf77f3`](https://github.com/getflip/swirl/commit/cadf77f34397e530e35060dbc31e1c71b6141ea2) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Prevent + valueChange event propagation in swirl-select + +## 0.235.0 + +### Minor Changes + +- [#796](https://github.com/getflip/swirl/pull/796) + [`95a50fe3`](https://github.com/getflip/swirl/commit/95a50fe33070170ccee37d3d5a4ff3cfc6047458) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Remove drag + behavior when the swirl-lightbox has only one item + +### Patch Changes + +- [`f66bfa94`](https://github.com/getflip/swirl/commit/f66bfa94fc5d230d71fb1efe8d3ded1d8d6dbc0b) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Only emit swirl-tree-view-item + expansion state events if not already in same state + +## 0.234.0 + +### Minor Changes + +- [#794](https://github.com/getflip/swirl/pull/794) + [`28309df9`](https://github.com/getflip/swirl/commit/28309df93eef2c55134ac1f51c60c073662d6860) + Thanks [@danizep](https://github.com/danizep)! - Add livestream icons + +### Patch Changes + +- Updated dependencies + [[`28309df9`](https://github.com/getflip/swirl/commit/28309df93eef2c55134ac1f51c60c073662d6860)]: + - @getflip/swirl-icons@0.43.0 + +## 0.233.1 + +### Patch Changes + +- [`0ec94e7e`](https://github.com/getflip/swirl/commit/0ec94e7e002a3c00ed43cc31125e47575506cfac) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Adjust swirl-tree-view expansion + change event + +## 0.233.0 + +### Minor Changes + +- [#789](https://github.com/getflip/swirl/pull/789) + [`8fc64d9c`](https://github.com/getflip/swirl/commit/8fc64d9c1637c04e46ecaf221199e23be73379ef) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add swirl-tree-view and + swirl-tree-view-item components + +## 0.232.0 + +### Minor Changes + +- [`62afe3d8`](https://github.com/getflip/swirl/commit/62afe3d80984f5016703b178412e9120d68b400e) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Align versions + +* [`c917a77a`](https://github.com/getflip/swirl/commit/c917a77a2bd1b378d6176f667b4e25e175ca9f3e) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Align package versions + +## 0.230.1 + +### Patch Changes + +- [`63a350b4`](https://github.com/getflip/swirl/commit/63a350b4b3567954149ae1159f660a6fe748323d) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Minor style adjustments of teh + swirl-shell-layout + +- Updated dependencies + [[`63a350b4`](https://github.com/getflip/swirl/commit/63a350b4b3567954149ae1159f660a6fe748323d)]: + - @getflip/swirl-icons@0.42.0 + +## 0.230.0 + +### Minor Changes + +- [#787](https://github.com/getflip/swirl/pull/787) + [`08326ecc`](https://github.com/getflip/swirl/commit/08326ecc29ae06fa14ee77705c3d6858c6bf27c8) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Fix + Navigation labels not showing + +## 0.229.0 + +### Minor Changes + +- [`c22e465f`](https://github.com/getflip/swirl/commit/c22e465fbb938e2da9900a0c1390ed2458b32ddb) - + Fix changeset + +### Patch Changes + +- [#785](https://github.com/getflip/swirl/pull/785) + [`947da5d3`](https://github.com/getflip/swirl/commit/947da5d3cc60b5a0e040c487ae4b3c5137294c51) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Add spacing + prop to swirl-resource-list + +## 0.228.0 + +### Minor Changes + +- [`815a91bd`](https://github.com/getflip/swirl/commit/815a91bd6b0e2348e3277073116004f50db77477) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add icons "public" and + "public-off" + +### Patch Changes + +- Updated dependencies + [[`815a91bd`](https://github.com/getflip/swirl/commit/815a91bd6b0e2348e3277073116004f50db77477)]: + - @getflip/swirl-icons@0.41.0 + +## 0.227.0 + +### Minor Changes + +- [#782](https://github.com/getflip/swirl/pull/782) + [`2025e3e4`](https://github.com/getflip/swirl/commit/2025e3e4735595b40190cc5b1e22d9ed53fdcb6f) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Add + responsive prop to text + +## 0.226.1 + +### Patch Changes + +- [`bce80621`](https://github.com/getflip/swirl/commit/bce80621f5e9d3e47d68e6278d1e7e499b096809) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix secondary navigation state + restoration of swirl-shell-layout + +* [#778](https://github.com/getflip/swirl/pull/778) + [`b1b7b434`](https://github.com/getflip/swirl/commit/b1b7b434b04e593e53ba71b20c358e5315e52e63) + Thanks [@joseabernardes](https://github.com/joseabernardes)! - Fix + swirl-file-viewer-pdf current page number + +## 0.226.0 + +### Minor Changes + +- [#775](https://github.com/getflip/swirl/pull/775) + [`fbf71bc9`](https://github.com/getflip/swirl/commit/fbf71bc94c4eb9e5276b002dc40a90c582feb69f) + Thanks [@maraikeschneider](https://github.com/maraikeschneider)! - Fix + handling of table layout when table is rendered within a modal + +## 0.225.2 + +### Patch Changes + +- [`97c45d46`](https://github.com/getflip/swirl/commit/97c45d46eb7cec30d6c49b6192c2b7a51aaf95a9) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Improve download handling of + fallback file viewer + +## 0.225.1 + +### Patch Changes + +- [`3f98de9e`](https://github.com/getflip/swirl/commit/3f98de9e198a3f25c57551f14ee6495ab0f7d837) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Make swirl-file-viewer-fallback + respect disabled downloads + +## 0.225.0 + +### Minor Changes + +- [`0c855fb9`](https://github.com/getflip/swirl/commit/0c855fb9772d0555da72b82cee6df30e9d6ac8d1) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add swirl-file-viewer-fallback + for unsupported file types + +## 0.224.0 + +### Minor Changes + +- [`6a1af78a`](https://github.com/getflip/swirl/commit/6a1af78a11afe552d7e49f1b2ed93f5ba0623c9a) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add chipClick event to swirl-chip + +## 0.223.0 + +### Minor Changes + +- [#770](https://github.com/getflip/swirl/pull/770) + [`9df750c0`](https://github.com/getflip/swirl/commit/9df750c0eb68db1c28bba983461d1cec3f1d31ba) + Thanks [@maraikeschneider](https://github.com/maraikeschneider)! - Apply + sticky property to table columns and cells + +## 0.222.1 + +### Patch Changes + +- [`4390b336`](https://github.com/getflip/swirl/commit/4390b336e500e2785eda0db99e2b6f9d98a5bd0f) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Don't close mobile shell + navigation when secondary navigation is toggled + +## 0.222.0 + +### Minor Changes + +- [`265823b5`](https://github.com/getflip/swirl/commit/265823b565cf3050ef6889d6f2fe5990fc893de3) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add font-size prop to + swirl-text-input and swirl-form-control + +## 0.221.0 + +### Minor Changes + +- [`0e9413cf`](https://github.com/getflip/swirl/commit/0e9413cfbc2add299f8360078ef2df3cddd1153f) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add "border-color" prop to + swirl-box + +## 0.220.5 + +### Patch Changes + +- [`93f59bef`](https://github.com/getflip/swirl/commit/93f59bef3ce31d09e112795f7c520564c0d99355) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix swirl-shell-navigation-item + label wrapping + +## 0.220.4 + +### Patch Changes + +- [`cfaf2b8f`](https://github.com/getflip/swirl/commit/cfaf2b8fa3cfb53df041b7d6c60e64a6a5df1e00) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Tweak swirl-shell-navigation-item + spacing + +## 0.220.3 + +### Patch Changes + +- [`875d491a`](https://github.com/getflip/swirl/commit/875d491a355ce89d2f15f880ad55f0b714ab0aaf) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Tweak swirl-shell-navigation-item + styling + +## 0.220.2 + +### Patch Changes + +- [`b54e20a7`](https://github.com/getflip/swirl/commit/b54e20a77aae792a8e3afa5f0069457a5985530f) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix allowed shell layout + navigation markup + +## 0.220.1 + +### Patch Changes + +- [`ebde720e`](https://github.com/getflip/swirl/commit/ebde720ea7a1e80d9e8db13e9852d3601013a5f6) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Fix shell layout navigation item + handling if items change at runtime + +## 0.220.0 + +### Minor Changes + +- [#762](https://github.com/getflip/swirl/pull/762) + [`e9ffdb07`](https://github.com/getflip/swirl/commit/e9ffdb073a2b8dcfcaf56ecdb87fbd037ba3d125) + Thanks [@Sqrrl](https://github.com/Sqrrl)! - Add optional grid layout for + shell layout navigation + +## 0.219.0 + +### Minor Changes + +- [#760](https://github.com/getflip/swirl/pull/760) + [`9b7ec15d`](https://github.com/getflip/swirl/commit/9b7ec15d6f3f8ad7fb5886fa79c0ec56c28e06d6) + Thanks [@koraxis](https://github.com/koraxis)! - Add RemoveCircle icon + +### Patch Changes + +- Updated dependencies + [[`9b7ec15d`](https://github.com/getflip/swirl/commit/9b7ec15d6f3f8ad7fb5886fa79c0ec56c28e06d6)]: + - @getflip/swirl-icons@0.40.0 + +## 0.218.0 + +### Minor Changes + +- [#758](https://github.com/getflip/swirl/pull/758) + [`a842a881`](https://github.com/getflip/swirl/commit/a842a8813b8c124fa952124053c648a43fd826c3) + Thanks [@AshleyBekemeier](https://github.com/AshleyBekemeier)! - Avatar group + customizable badge size + ## 0.217.0 ### Minor Changes diff --git a/packages/swirl-components/icons.json b/packages/swirl-components/icons.json index f79405d9d..a5cb3ced5 100644 --- a/packages/swirl-components/icons.json +++ b/packages/swirl-components/icons.json @@ -1 +1 @@ -{"Add":{"id":"Add","name":"add"},"AddModerator":{"id":"AddModerator","name":"add-moderator"},"AddPhoto":{"id":"AddPhoto","name":"add-photo"},"AddReaction":{"id":"AddReaction","name":"add-reaction"},"AdminPanelSettings":{"id":"AdminPanelSettings","name":"admin-panel-settings"},"Ai":{"id":"Ai","name":"ai"},"Apps":{"id":"Apps","name":"apps"},"ArrowBack":{"id":"ArrowBack","name":"arrow-back"},"ArrowDownward":{"id":"ArrowDownward","name":"arrow-downward"},"ArrowForward":{"id":"ArrowForward","name":"arrow-forward"},"ArrowLeft":{"id":"ArrowLeft","name":"arrow-left"},"ArrowRight":{"id":"ArrowRight","name":"arrow-right"},"ArrowRightSmall":{"id":"ArrowRightSmall","name":"arrow-right-small"},"ArrowUpward":{"id":"ArrowUpward","name":"arrow-upward"},"AspectRatio":{"id":"AspectRatio","name":"aspect-ratio"},"Attachment":{"id":"Attachment","name":"attachment"},"BarChart":{"id":"BarChart","name":"bar-chart"},"Block":{"id":"Block","name":"block"},"Bookmark":{"id":"Bookmark","name":"bookmark"},"BookmarkFilled":{"id":"BookmarkFilled","name":"bookmark-filled"},"Cancel":{"id":"Cancel","name":"cancel"},"ChatBubble":{"id":"ChatBubble","name":"chat-bubble"},"Chats":{"id":"Chats","name":"chats"},"ChatsFilled":{"id":"ChatsFilled","name":"chats-filled"},"Check":{"id":"Check","name":"check"},"CheckCircle":{"id":"CheckCircle","name":"check-circle"},"CheckSmall":{"id":"CheckSmall","name":"check-small"},"CheckStrong":{"id":"CheckStrong","name":"check-strong"},"ChevronLeft":{"id":"ChevronLeft","name":"chevron-left"},"ChevronRight":{"id":"ChevronRight","name":"chevron-right"},"Close":{"id":"Close","name":"close"},"CloseSmall":{"id":"CloseSmall","name":"close-small"},"CloudUpload":{"id":"CloudUpload","name":"cloud-upload"},"Column":{"id":"Column","name":"column"},"Comment":{"id":"Comment","name":"comment"},"Copy":{"id":"Copy","name":"copy"},"Crop":{"id":"Crop","name":"crop"},"DarkMode":{"id":"DarkMode","name":"dark-mode"},"DateRange":{"id":"DateRange","name":"date-range"},"Delete":{"id":"Delete","name":"delete"},"Description":{"id":"Description","name":"description"},"Desktop":{"id":"Desktop","name":"desktop"},"Directory":{"id":"Directory","name":"directory"},"DirectoryFilled":{"id":"DirectoryFilled","name":"directory-filled"},"Discover":{"id":"Discover","name":"discover"},"DockLeft":{"id":"DockLeft","name":"dock-left"},"Dot":{"id":"Dot","name":"dot"},"DoubleArrowLeft":{"id":"DoubleArrowLeft","name":"double-arrow-left"},"DoubleArrowRight":{"id":"DoubleArrowRight","name":"double-arrow-right"},"Download":{"id":"Download","name":"download"},"DragHandle":{"id":"DragHandle","name":"drag-handle"},"Edit":{"id":"Edit","name":"edit"},"EmojiMood":{"id":"EmojiMood","name":"emoji-mood"},"EmojiSatisfied":{"id":"EmojiSatisfied","name":"emoji-satisfied"},"Error":{"id":"Error","name":"error"},"ExpandLess":{"id":"ExpandLess","name":"expand-less"},"ExpandMore":{"id":"ExpandMore","name":"expand-more"},"Experiment":{"id":"Experiment","name":"experiment"},"File":{"id":"File","name":"file"},"FileCopy":{"id":"FileCopy","name":"file-copy"},"Filter":{"id":"Filter","name":"filter"},"Folder":{"id":"Folder","name":"folder"},"FolderShared":{"id":"FolderShared","name":"folder-shared"},"FormatHOne":{"id":"FormatHOne","name":"format-h-one"},"Fullscreen":{"id":"Fullscreen","name":"fullscreen"},"FullscreenExit":{"id":"FullscreenExit","name":"fullscreen-exit"},"Gif":{"id":"Gif","name":"gif"},"GroupAdd":{"id":"GroupAdd","name":"group-add"},"GroupAssign":{"id":"GroupAssign","name":"group-assign"},"Groups":{"id":"Groups","name":"groups"},"GroupsFilled":{"id":"GroupsFilled","name":"groups-filled"},"HamburgerMenu":{"id":"HamburgerMenu","name":"hamburger-menu"},"Help":{"id":"Help","name":"help"},"Highlight":{"id":"Highlight","name":"highlight"},"History":{"id":"History","name":"history"},"Home":{"id":"Home","name":"home"},"Image":{"id":"Image","name":"image"},"ImproveText":{"id":"ImproveText","name":"improve-text"},"Info":{"id":"Info","name":"info"},"InsertBelow":{"id":"InsertBelow","name":"insert-below"},"InsertOnTop":{"id":"InsertOnTop","name":"insert-on-top"},"Inventory":{"id":"Inventory","name":"inventory"},"Keyboard":{"id":"Keyboard","name":"keyboard"},"KeyboardHide":{"id":"KeyboardHide","name":"keyboard-hide"},"LightMode":{"id":"LightMode","name":"light-mode"},"Like":{"id":"Like","name":"like"},"Link":{"id":"Link","name":"link"},"Load":{"id":"Load","name":"load"},"Lock":{"id":"Lock","name":"lock"},"LockOpen":{"id":"LockOpen","name":"lock-open"},"LockPerson":{"id":"LockPerson","name":"lock-person"},"Login":{"id":"Login","name":"login"},"Logout":{"id":"Logout","name":"logout"},"LongText":{"id":"LongText","name":"long-text"},"Mail":{"id":"Mail","name":"mail"},"ManageAccounts":{"id":"ManageAccounts","name":"manage-accounts"},"MarkChatRead":{"id":"MarkChatRead","name":"mark-chat-read"},"MarkChatUnread":{"id":"MarkChatUnread","name":"mark-chat-unread"},"Mention":{"id":"Mention","name":"mention"},"Menu":{"id":"Menu","name":"menu"},"MenuBook":{"id":"MenuBook","name":"menu-book"},"MenuFilled":{"id":"MenuFilled","name":"menu-filled"},"Message":{"id":"Message","name":"message"},"Mic":{"id":"Mic","name":"mic"},"MicOff":{"id":"MicOff","name":"mic-off"},"MoreHorizontal":{"id":"MoreHorizontal","name":"more-horizontal"},"MoreVertikal":{"id":"MoreVertikal","name":"more-vertikal"},"News":{"id":"News","name":"news"},"NewsFilled":{"id":"NewsFilled","name":"news-filled"},"NewsOff":{"id":"NewsOff","name":"news-off"},"Notifications":{"id":"Notifications","name":"notifications"},"NotificationsActive":{"id":"NotificationsActive","name":"notifications-active"},"NotificationsOff":{"id":"NotificationsOff","name":"notifications-off"},"OpenInFull":{"id":"OpenInFull","name":"open-in-full"},"OpenInNew":{"id":"OpenInNew","name":"open-in-new"},"Pause":{"id":"Pause","name":"pause"},"PauseCircle":{"id":"PauseCircle","name":"pause-circle"},"PeopleAlt":{"id":"PeopleAlt","name":"people-alt"},"Person":{"id":"Person","name":"person"},"PersonOff":{"id":"PersonOff","name":"person-off"},"Phone":{"id":"Phone","name":"phone"},"PhotoCamera":{"id":"PhotoCamera","name":"photo-camera"},"Pin":{"id":"Pin","name":"pin"},"PinOff":{"id":"PinOff","name":"pin-off"},"Place":{"id":"Place","name":"place"},"PlayArrow":{"id":"PlayArrow","name":"play-arrow"},"Poll":{"id":"Poll","name":"poll"},"Print":{"id":"Print","name":"print"},"RatioFourToThree":{"id":"RatioFourToThree","name":"ratio-four-to-three"},"RatioFreeform":{"id":"RatioFreeform","name":"ratio-freeform"},"RatioSixteenToNine":{"id":"RatioSixteenToNine","name":"ratio-sixteen-to-nine"},"RatioSquare":{"id":"RatioSquare","name":"ratio-square"},"RatioThreeToFour":{"id":"RatioThreeToFour","name":"ratio-three-to-four"},"RatioThreeToTwo":{"id":"RatioThreeToTwo","name":"ratio-three-to-two"},"Recieved":{"id":"Recieved","name":"recieved"},"Remove":{"id":"Remove","name":"remove"},"RemoveModerator":{"id":"RemoveModerator","name":"remove-moderator"},"Reply":{"id":"Reply","name":"reply"},"Report":{"id":"Report","name":"report"},"Roadmap":{"id":"Roadmap","name":"roadmap"},"RotateLeft":{"id":"RotateLeft","name":"rotate-left"},"RotateRight":{"id":"RotateRight","name":"rotate-right"},"Search":{"id":"Search","name":"search"},"SearchStrong":{"id":"SearchStrong","name":"search-strong"},"Secure":{"id":"Secure","name":"secure"},"Send":{"id":"Send","name":"send"},"Settings":{"id":"Settings","name":"settings"},"ShortText":{"id":"ShortText","name":"short-text"},"Simplify":{"id":"Simplify","name":"simplify"},"Spellcheck":{"id":"Spellcheck","name":"spellcheck"},"Stop":{"id":"Stop","name":"stop"},"Sync":{"id":"Sync","name":"sync"},"Tasks":{"id":"Tasks","name":"tasks"},"TasksFilled":{"id":"TasksFilled","name":"tasks-filled"},"Terminal":{"id":"Terminal","name":"terminal"},"Time":{"id":"Time","name":"time"},"TimeFilled":{"id":"TimeFilled","name":"time-filled"},"Today":{"id":"Today","name":"today"},"TodayFilled":{"id":"TodayFilled","name":"today-filled"},"Translate":{"id":"Translate","name":"translate"},"TreeStructure":{"id":"TreeStructure","name":"tree-structure"},"Undo":{"id":"Undo","name":"undo"},"UnlockPerson":{"id":"UnlockPerson","name":"unlock-person"},"UserAdd":{"id":"UserAdd","name":"user-add"},"UserAssign":{"id":"UserAssign","name":"user-assign"},"VideoCamera":{"id":"VideoCamera","name":"video-camera"},"VideoCameraOff":{"id":"VideoCameraOff","name":"video-camera-off"},"VideoLibrary":{"id":"VideoLibrary","name":"video-library"},"Visibility":{"id":"Visibility","name":"visibility"},"VisibilityOff":{"id":"VisibilityOff","name":"visibility-off"},"Voice":{"id":"Voice","name":"voice"},"Warning":{"id":"Warning","name":"warning"},"WebAsset":{"id":"WebAsset","name":"web-asset"},"WebAssetOff":{"id":"WebAssetOff","name":"web-asset-off"},"Work":{"id":"Work","name":"work"}} \ No newline at end of file +{"Add":{"id":"Add","name":"add"},"AddModerator":{"id":"AddModerator","name":"add-moderator"},"AddPhoto":{"id":"AddPhoto","name":"add-photo"},"AddReaction":{"id":"AddReaction","name":"add-reaction"},"AdminPanelSettings":{"id":"AdminPanelSettings","name":"admin-panel-settings"},"Ai":{"id":"Ai","name":"ai"},"Apps":{"id":"Apps","name":"apps"},"ArrowBack":{"id":"ArrowBack","name":"arrow-back"},"ArrowDownward":{"id":"ArrowDownward","name":"arrow-downward"},"ArrowForward":{"id":"ArrowForward","name":"arrow-forward"},"ArrowLeft":{"id":"ArrowLeft","name":"arrow-left"},"ArrowRight":{"id":"ArrowRight","name":"arrow-right"},"ArrowRightSmall":{"id":"ArrowRightSmall","name":"arrow-right-small"},"ArrowUpward":{"id":"ArrowUpward","name":"arrow-upward"},"AspectRatio":{"id":"AspectRatio","name":"aspect-ratio"},"Attachment":{"id":"Attachment","name":"attachment"},"BarChart":{"id":"BarChart","name":"bar-chart"},"Block":{"id":"Block","name":"block"},"Bookmark":{"id":"Bookmark","name":"bookmark"},"BookmarkFilled":{"id":"BookmarkFilled","name":"bookmark-filled"},"Cancel":{"id":"Cancel","name":"cancel"},"ChatBubble":{"id":"ChatBubble","name":"chat-bubble"},"Chats":{"id":"Chats","name":"chats"},"ChatsFilled":{"id":"ChatsFilled","name":"chats-filled"},"Check":{"id":"Check","name":"check"},"CheckCircle":{"id":"CheckCircle","name":"check-circle"},"CheckSmall":{"id":"CheckSmall","name":"check-small"},"CheckStrong":{"id":"CheckStrong","name":"check-strong"},"ChevronLeft":{"id":"ChevronLeft","name":"chevron-left"},"ChevronRight":{"id":"ChevronRight","name":"chevron-right"},"Close":{"id":"Close","name":"close"},"CloseSmall":{"id":"CloseSmall","name":"close-small"},"CloudUpload":{"id":"CloudUpload","name":"cloud-upload"},"Column":{"id":"Column","name":"column"},"Comment":{"id":"Comment","name":"comment"},"Copy":{"id":"Copy","name":"copy"},"Crop":{"id":"Crop","name":"crop"},"DarkMode":{"id":"DarkMode","name":"dark-mode"},"DateRange":{"id":"DateRange","name":"date-range"},"Delete":{"id":"Delete","name":"delete"},"Description":{"id":"Description","name":"description"},"Desktop":{"id":"Desktop","name":"desktop"},"Directory":{"id":"Directory","name":"directory"},"DirectoryFilled":{"id":"DirectoryFilled","name":"directory-filled"},"Discover":{"id":"Discover","name":"discover"},"DockLeft":{"id":"DockLeft","name":"dock-left"},"DockLeftCollapse":{"id":"DockLeftCollapse","name":"dock-left-collapse"},"DockLeftExpand":{"id":"DockLeftExpand","name":"dock-left-expand"},"Dot":{"id":"Dot","name":"dot"},"DoubleArrowLeft":{"id":"DoubleArrowLeft","name":"double-arrow-left"},"DoubleArrowRight":{"id":"DoubleArrowRight","name":"double-arrow-right"},"Download":{"id":"Download","name":"download"},"DragHandle":{"id":"DragHandle","name":"drag-handle"},"Edit":{"id":"Edit","name":"edit"},"EmojiMood":{"id":"EmojiMood","name":"emoji-mood"},"EmojiSatisfied":{"id":"EmojiSatisfied","name":"emoji-satisfied"},"Error":{"id":"Error","name":"error"},"ExpandLess":{"id":"ExpandLess","name":"expand-less"},"ExpandMore":{"id":"ExpandMore","name":"expand-more"},"Experiment":{"id":"Experiment","name":"experiment"},"File":{"id":"File","name":"file"},"FileCopy":{"id":"FileCopy","name":"file-copy"},"Filter":{"id":"Filter","name":"filter"},"Folder":{"id":"Folder","name":"folder"},"FolderShared":{"id":"FolderShared","name":"folder-shared"},"FormatHOne":{"id":"FormatHOne","name":"format-h-one"},"Fullscreen":{"id":"Fullscreen","name":"fullscreen"},"FullscreenExit":{"id":"FullscreenExit","name":"fullscreen-exit"},"Gif":{"id":"Gif","name":"gif"},"GroupAdd":{"id":"GroupAdd","name":"group-add"},"GroupAssign":{"id":"GroupAssign","name":"group-assign"},"Groups":{"id":"Groups","name":"groups"},"GroupsFilled":{"id":"GroupsFilled","name":"groups-filled"},"HamburgerMenu":{"id":"HamburgerMenu","name":"hamburger-menu"},"Help":{"id":"Help","name":"help"},"Highlight":{"id":"Highlight","name":"highlight"},"History":{"id":"History","name":"history"},"Home":{"id":"Home","name":"home"},"Image":{"id":"Image","name":"image"},"ImproveText":{"id":"ImproveText","name":"improve-text"},"Info":{"id":"Info","name":"info"},"InsertBelow":{"id":"InsertBelow","name":"insert-below"},"InsertOnTop":{"id":"InsertOnTop","name":"insert-on-top"},"Inventory":{"id":"Inventory","name":"inventory"},"Keyboard":{"id":"Keyboard","name":"keyboard"},"KeyboardHide":{"id":"KeyboardHide","name":"keyboard-hide"},"LightMode":{"id":"LightMode","name":"light-mode"},"Like":{"id":"Like","name":"like"},"Link":{"id":"Link","name":"link"},"Live":{"id":"Live","name":"live"},"Load":{"id":"Load","name":"load"},"Lock":{"id":"Lock","name":"lock"},"LockOpen":{"id":"LockOpen","name":"lock-open"},"LockPerson":{"id":"LockPerson","name":"lock-person"},"Login":{"id":"Login","name":"login"},"Logout":{"id":"Logout","name":"logout"},"LongText":{"id":"LongText","name":"long-text"},"Mail":{"id":"Mail","name":"mail"},"ManageAccounts":{"id":"ManageAccounts","name":"manage-accounts"},"MarkChatRead":{"id":"MarkChatRead","name":"mark-chat-read"},"MarkChatUnread":{"id":"MarkChatUnread","name":"mark-chat-unread"},"Mention":{"id":"Mention","name":"mention"},"Menu":{"id":"Menu","name":"menu"},"MenuBook":{"id":"MenuBook","name":"menu-book"},"MenuFilled":{"id":"MenuFilled","name":"menu-filled"},"Message":{"id":"Message","name":"message"},"Mic":{"id":"Mic","name":"mic"},"MicOff":{"id":"MicOff","name":"mic-off"},"MoreHorizontal":{"id":"MoreHorizontal","name":"more-horizontal"},"MoreVertikal":{"id":"MoreVertikal","name":"more-vertikal"},"News":{"id":"News","name":"news"},"NewsFilled":{"id":"NewsFilled","name":"news-filled"},"NewsOff":{"id":"NewsOff","name":"news-off"},"Notifications":{"id":"Notifications","name":"notifications"},"NotificationsActive":{"id":"NotificationsActive","name":"notifications-active"},"NotificationsOff":{"id":"NotificationsOff","name":"notifications-off"},"OpenInFull":{"id":"OpenInFull","name":"open-in-full"},"OpenInNew":{"id":"OpenInNew","name":"open-in-new"},"Pause":{"id":"Pause","name":"pause"},"PauseCircle":{"id":"PauseCircle","name":"pause-circle"},"PeopleAlt":{"id":"PeopleAlt","name":"people-alt"},"Person":{"id":"Person","name":"person"},"PersonOff":{"id":"PersonOff","name":"person-off"},"Phone":{"id":"Phone","name":"phone"},"PhotoCamera":{"id":"PhotoCamera","name":"photo-camera"},"Pin":{"id":"Pin","name":"pin"},"PinOff":{"id":"PinOff","name":"pin-off"},"Place":{"id":"Place","name":"place"},"PlayArrow":{"id":"PlayArrow","name":"play-arrow"},"Poll":{"id":"Poll","name":"poll"},"PostApproval":{"id":"PostApproval","name":"post-approval"},"Present":{"id":"Present","name":"present"},"Print":{"id":"Print","name":"print"},"Public":{"id":"Public","name":"public"},"PublicOff":{"id":"PublicOff","name":"public-off"},"RatioFourToThree":{"id":"RatioFourToThree","name":"ratio-four-to-three"},"RatioFreeform":{"id":"RatioFreeform","name":"ratio-freeform"},"RatioSixteenToNine":{"id":"RatioSixteenToNine","name":"ratio-sixteen-to-nine"},"RatioSquare":{"id":"RatioSquare","name":"ratio-square"},"RatioThreeToFour":{"id":"RatioThreeToFour","name":"ratio-three-to-four"},"RatioThreeToTwo":{"id":"RatioThreeToTwo","name":"ratio-three-to-two"},"Recieved":{"id":"Recieved","name":"recieved"},"Remove":{"id":"Remove","name":"remove"},"RemoveCircle":{"id":"RemoveCircle","name":"remove-circle"},"RemoveModerator":{"id":"RemoveModerator","name":"remove-moderator"},"Reply":{"id":"Reply","name":"reply"},"Report":{"id":"Report","name":"report"},"Roadmap":{"id":"Roadmap","name":"roadmap"},"RotateLeft":{"id":"RotateLeft","name":"rotate-left"},"RotateRight":{"id":"RotateRight","name":"rotate-right"},"Screenshare":{"id":"Screenshare","name":"screenshare"},"ScreenshareOff":{"id":"ScreenshareOff","name":"screenshare-off"},"Search":{"id":"Search","name":"search"},"SearchStrong":{"id":"SearchStrong","name":"search-strong"},"Secure":{"id":"Secure","name":"secure"},"Send":{"id":"Send","name":"send"},"Settings":{"id":"Settings","name":"settings"},"ShortText":{"id":"ShortText","name":"short-text"},"Simplify":{"id":"Simplify","name":"simplify"},"Spellcheck":{"id":"Spellcheck","name":"spellcheck"},"Stop":{"id":"Stop","name":"stop"},"Sync":{"id":"Sync","name":"sync"},"Tasks":{"id":"Tasks","name":"tasks"},"TasksFilled":{"id":"TasksFilled","name":"tasks-filled"},"Terminal":{"id":"Terminal","name":"terminal"},"Time":{"id":"Time","name":"time"},"TimeFilled":{"id":"TimeFilled","name":"time-filled"},"Today":{"id":"Today","name":"today"},"TodayFilled":{"id":"TodayFilled","name":"today-filled"},"Translate":{"id":"Translate","name":"translate"},"TreeStructure":{"id":"TreeStructure","name":"tree-structure"},"Undo":{"id":"Undo","name":"undo"},"UnlockPerson":{"id":"UnlockPerson","name":"unlock-person"},"UserAdd":{"id":"UserAdd","name":"user-add"},"UserAssign":{"id":"UserAssign","name":"user-assign"},"VideoCamera":{"id":"VideoCamera","name":"video-camera"},"VideoCameraOff":{"id":"VideoCameraOff","name":"video-camera-off"},"VideoLibrary":{"id":"VideoLibrary","name":"video-library"},"VideoPlayer":{"id":"VideoPlayer","name":"video-player"},"Visibility":{"id":"Visibility","name":"visibility"},"VisibilityOff":{"id":"VisibilityOff","name":"visibility-off"},"Voice":{"id":"Voice","name":"voice"},"Warning":{"id":"Warning","name":"warning"},"WebAsset":{"id":"WebAsset","name":"web-asset"},"WebAssetOff":{"id":"WebAssetOff","name":"web-asset-off"},"Work":{"id":"Work","name":"work"}} \ No newline at end of file diff --git a/packages/swirl-components/package.json b/packages/swirl-components/package.json index 06c496a93..12c1e1f17 100644 --- a/packages/swirl-components/package.json +++ b/packages/swirl-components/package.json @@ -1,6 +1,6 @@ { "name": "@getflip/swirl-components", - "version": "0.217.0", + "version": "0.257.0", "description": "Swirl Design System Web Component Library", "main": "dist/index.cjs.js", "module": "dist/index.js", @@ -42,7 +42,7 @@ }, "dependencies": { "@floating-ui/dom": "1.0.1", - "@getflip/swirl-icons": "^0.39.0", + "@getflip/swirl-icons": "^0.45.0", "@getflip/swirl-tokens": "^2.6.0", "@stencil/core": "^4.18.1", "a11y-dialog": "^7.5.2", diff --git a/packages/swirl-components/public/menu-item-1.png b/packages/swirl-components/public/menu-item-1.png new file mode 100644 index 0000000000000000000000000000000000000000..7efa067e419ed30dabd55582e6d83f2ea490a052 GIT binary patch literal 7307 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

dBASWK3^ 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�XY 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

-OQ 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%0Dbo~)&ia1 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 Promise; + "collapsibleNavigation"?: boolean; "ctaIcon"?: string; "ctaLabel"?: string; + /** + * Get state of the collapsible navigation + */ + "getCollapsibleNavigationState": () => Promise; "hasNavigation": boolean; "hideAppBar"?: boolean; /** @@ -218,7 +227,14 @@ export namespace Components { */ "hideSidebar": () => Promise; "navigationBackButtonLabel"?: string; + "navigationExpansionStateStorageKey"?: string; "navigationLabel"?: string; + "navigationOverlayLabel"?: string; + "navigationToggleLabel"?: string; + /** + * Set state of the collapsible navigation + */ + "setCollapsibleNavigationState": (state: SwirlAppLayoutNavigationExpansionState) => Promise; "showNavigationBackButton"?: boolean; /** * Show the sidebar @@ -290,9 +306,12 @@ export namespace Components { } interface SwirlBox { "basis"?: string; + "borderColor"?: SwirlBoxBorderColor; "bordered"?: boolean; "borderedBlockEnd"?: boolean; + "borderedBlockEndWhenScrolled"?: boolean; "borderedBlockStart"?: boolean; + "borderedBlockStartWhenScrolled"?: boolean; "borderedInlineEnd"?: boolean; "borderedInlineStart"?: boolean; "bottom"?: string; @@ -607,6 +626,12 @@ export namespace Components { "errorMessage"?: string; "file": string; } + interface SwirlFileViewerFallback { + "disableDownload"?: boolean; + "downloadButtonLabel"?: string; + "file": string; + "fileName"?: string; + } interface SwirlFileViewerImage { "description"?: string; "errorMessage"?: string; @@ -665,11 +690,13 @@ export namespace Components { "description"?: string; "disabled"?: boolean; "errorMessage"?: string; + "fontSize"?: SwirlFormControlFontSize; "hideLabel"?: boolean; "inline"?: boolean; "invalid"?: boolean; "label": string; "labelPosition"?: SwirlFormControlLabelPosition; + "secondaryLabel"?: string; "tooltip"?: string; } interface SwirlFormGroup { @@ -874,6 +901,14 @@ export namespace Components { "color"?: SwirlIconColor1; "size": SwirlIconSize; } + interface SwirlIconDockLeftCollapse { + "color"?: SwirlIconColor1; + "size": SwirlIconSize; + } + interface SwirlIconDockLeftExpand { + "color"?: SwirlIconColor1; + "size": SwirlIconSize; + } interface SwirlIconDot { "color"?: SwirlIconColor1; "size": SwirlIconSize; @@ -1038,6 +1073,10 @@ export namespace Components { "color"?: SwirlIconColor1; "size": SwirlIconSize; } + interface SwirlIconLive { + "color"?: SwirlIconColor1; + "size": SwirlIconSize; + } interface SwirlIconLoad { "color"?: SwirlIconColor1; "size": SwirlIconSize; @@ -1198,10 +1237,26 @@ export namespace Components { "color"?: SwirlIconColor1; "size": SwirlIconSize; } + interface SwirlIconPostApproval { + "color"?: SwirlIconColor1; + "size": SwirlIconSize; + } + interface SwirlIconPresent { + "color"?: SwirlIconColor1; + "size": SwirlIconSize; + } interface SwirlIconPrint { "color"?: SwirlIconColor1; "size": SwirlIconSize; } + interface SwirlIconPublic { + "color"?: SwirlIconColor1; + "size": SwirlIconSize; + } + interface SwirlIconPublicOff { + "color"?: SwirlIconColor1; + "size": SwirlIconSize; + } interface SwirlIconRatioFourToThree { "color"?: SwirlIconColor1; "size": SwirlIconSize; @@ -1234,6 +1289,10 @@ export namespace Components { "color"?: SwirlIconColor1; "size": SwirlIconSize; } + interface SwirlIconRemoveCircle { + "color"?: SwirlIconColor1; + "size": SwirlIconSize; + } interface SwirlIconRemoveModerator { "color"?: SwirlIconColor1; "size": SwirlIconSize; @@ -1258,6 +1317,14 @@ export namespace Components { "color"?: SwirlIconColor1; "size": SwirlIconSize; } + interface SwirlIconScreenshare { + "color"?: SwirlIconColor1; + "size": SwirlIconSize; + } + interface SwirlIconScreenshareOff { + "color"?: SwirlIconColor1; + "size": SwirlIconSize; + } interface SwirlIconSearch { "color"?: SwirlIconColor1; "size": SwirlIconSize; @@ -1362,6 +1429,10 @@ export namespace Components { "color"?: SwirlIconColor1; "size": SwirlIconSize; } + interface SwirlIconVideoPlayer { + "color"?: SwirlIconColor1; + "size": SwirlIconSize; + } interface SwirlIconVisibility { "color"?: SwirlIconColor1; "size": SwirlIconSize; @@ -1396,10 +1467,23 @@ export namespace Components { } interface SwirlImageGridItem { "alt": string; + "gifPauseLabel"?: string; + "gifPlayLabel"?: string; "icon"?: string; "interactive"?: boolean; "loading"?: SwirlImageGridItemLoading; "overlay"?: string; + /** + * Stop Gif playback. + * @returns + */ + "pause": () => Promise; + /** + * Start Gif playback. + * @returns + */ + "play": () => Promise; + "showGifControls"?: boolean; "src": string; } interface SwirlInlineError { @@ -1654,6 +1738,7 @@ export namespace Components { "inputName": string; "invalid"?: boolean; "label"?: string; + "tooltip"?: string; "value": string; "variant"?: SwirlRadioVariant; } @@ -1668,6 +1753,7 @@ export namespace Components { "assistiveTextItemMoving"?: string; "controllingElement"?: HTMLElement; "label"?: string; + "spacing"?: SwirlStackSpacing; } interface SwirlResourceListFileItem { "description"?: string; @@ -1727,6 +1813,7 @@ export namespace Components { "searchLoading"?: boolean; "searchPlaceholder"?: string; "selectId"?: string; + "standalone"?: boolean; "swirlAriaDescribedby"?: string; "value"?: string[]; "withSearch"?: boolean; @@ -1740,13 +1827,19 @@ export namespace Components { "brandedHeader"?: boolean; "browserBackButtonLabel"?: string; "browserForwardButtonLabel"?: string; + "collapseNavigationButtonLabel"?: string; + "enableSecondaryNavGridLayout"?: boolean; + "expandNavigationButtonLabel"?: string; + "gridNavLayoutToggleLabel"?: string; /** * Hides the mobile navigation. */ "hideMobileNavigation": () => Promise; "hideMobileNavigationButtonLabel"?: string; + "listNavLayoutToggleLabel"?: string; "navigationLabel"?: string; - "navigationToggleLabel"?: string; + "secondaryNavCollapseLabel"?: string; + "secondaryNavExpandLabel"?: string; /** * Opens the mobile navigation. */ @@ -1762,9 +1855,14 @@ export namespace Components { "active"?: boolean; "badgeLabel"?: string; "boxed"?: boolean; + "hideLabel": boolean; "href"?: string; + "inlineLabel"?: boolean; + "inlineLabelColor": SwirlLabelColor; "label": string; "target"?: string; + "tiled"?: boolean; + "withGradient"?: boolean; } interface SwirlSkeletonBox { "animated"?: boolean; @@ -1788,7 +1886,7 @@ export namespace Components { "height"?: string; "justify"?: SwirlStackJustify; "orientation"?: SwirlStackOrientation; - "spacing"?: SwirlStackSpacing; + "spacing"?: SwirlStackSpacing1; "wrap"?: boolean; } interface SwirlStatusIndicator { @@ -2049,6 +2147,7 @@ export namespace Components { interface SwirlTag { "bordered"?: boolean; "icon"?: string; + "iconPosition": SwirlTagIconPosition; "intent"?: SwirlTagIntent; "label": string; "removable"?: boolean; @@ -2064,6 +2163,7 @@ export namespace Components { "fontFamily"?: SwirlTextFontFamily; "fontStyle"?: SwirlTextFontStyle; "lines"?: number; + "responsive"?: boolean; "size"?: SwirlTextSize; "truncate"?: boolean; "truncateDirection"?: SwirlTextTruncateDirection; @@ -2081,6 +2181,7 @@ export namespace Components { "disableDynamicWidth"?: boolean; "disabled"?: boolean; "focusInput": () => Promise; + "fontSize"?: SwirlTextInputFontSize; "inline"?: boolean; "invalid"?: boolean; "max"?: number; @@ -2185,23 +2286,59 @@ export namespace Components { */ "toast": (newToast: SwirlToastConfig) => Promise; } + interface SwirlToggleButton { + "identifier": string; + "isPressed": boolean; + "label": string; + } + interface SwirlToggleGroup { + "selectedToggleId": string; + } interface SwirlToolbar { "label": string; "orientation"?: SwirlToolbarOrientation; } interface SwirlTooltip { + "active": boolean; "content": string; "delay"?: number; "position"?: SwirlTooltipPosition; "positioning"?: Strategy; } + interface SwirlTreeNavigation { + "label": string; + } interface SwirlTreeNavigationItem { "active"?: boolean; + "collapse": () => Promise; + "expand": () => Promise; + "expandable"?: boolean; + "external"?: boolean; "href"?: string; "icon"?: string; "label": string; + "level"?: number; + "navigationItemId": string; "target"?: string; } + interface SwirlTreeView { + "expandItems": (itemIds: string[]) => Promise; + "initiallyExpandedItemIds"?: string[]; + "label": string; + } + interface SwirlTreeViewItem { + "active"?: boolean; + "collapse": () => Promise; + "expand": () => Promise; + "expandable"?: boolean; + "href"?: string; + "icon"?: string; + "iconColor"?: SwirlIconColor1; + "itemId": string; + "label": string; + "select": (focus?: boolean) => Promise; + "unselect": () => Promise; + } interface SwirlVideoThumbnail { "duration"?: string; "durationLabel"?: string; @@ -2287,6 +2424,10 @@ export interface SwirlFileViewerCsvCustomEvent extends CustomEvent { detail: T; target: HTMLSwirlFileViewerCsvElement; } +export interface SwirlFileViewerFallbackCustomEvent extends CustomEvent { + detail: T; + target: HTMLSwirlFileViewerFallbackElement; +} export interface SwirlFileViewerImageCustomEvent extends CustomEvent { detail: T; target: HTMLSwirlFileViewerImageElement; @@ -2407,6 +2548,22 @@ export interface SwirlToastCustomEvent extends CustomEvent { detail: T; target: HTMLSwirlToastElement; } +export interface SwirlToggleGroupCustomEvent extends CustomEvent { + detail: T; + target: HTMLSwirlToggleGroupElement; +} +export interface SwirlTreeNavigationItemCustomEvent extends CustomEvent { + detail: T; + target: HTMLSwirlTreeNavigationItemElement; +} +export interface SwirlTreeViewCustomEvent extends CustomEvent { + detail: T; + target: HTMLSwirlTreeViewElement; +} +export interface SwirlTreeViewItemCustomEvent extends CustomEvent { + detail: T; + target: HTMLSwirlTreeViewItemElement; +} declare global { interface HTMLFileManagerElement extends Components.FileManager, HTMLStencilElement { } @@ -2496,6 +2653,7 @@ declare global { "ctaClick": MouseEvent; "mobileViewChange": SwirlAppLayoutMobileView; "navigationBackButtonClick": MouseEvent; + "navigationExpansionStateChange": SwirlAppLayoutNavigationExpansionState; "sidebarToggle": boolean; } interface HTMLSwirlAppLayoutElement extends Components.SwirlAppLayout, HTMLStencilElement { @@ -2648,6 +2806,7 @@ declare global { new (): HTMLSwirlCheckboxElement; }; interface HTMLSwirlChipElementEventMap { + "chipClick": MouseEvent; "remove": MouseEvent; } interface HTMLSwirlChipElement extends Components.SwirlChip, HTMLStencilElement { @@ -2891,6 +3050,23 @@ declare global { prototype: HTMLSwirlFileViewerCsvElement; new (): HTMLSwirlFileViewerCsvElement; }; + interface HTMLSwirlFileViewerFallbackElementEventMap { + "activate": HTMLElement; + } + interface HTMLSwirlFileViewerFallbackElement extends Components.SwirlFileViewerFallback, HTMLStencilElement { + addEventListener(type: K, listener: (this: HTMLSwirlFileViewerFallbackElement, ev: SwirlFileViewerFallbackCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; + addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; + addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; + addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; + removeEventListener(type: K, listener: (this: HTMLSwirlFileViewerFallbackElement, ev: SwirlFileViewerFallbackCustomEvent) => any, options?: boolean | EventListenerOptions): void; + removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; + removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; + removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; + } + var HTMLSwirlFileViewerFallbackElement: { + prototype: HTMLSwirlFileViewerFallbackElement; + new (): HTMLSwirlFileViewerFallbackElement; + }; interface HTMLSwirlFileViewerImageElementEventMap { "activate": HTMLElement; } @@ -3260,6 +3436,18 @@ declare global { prototype: HTMLSwirlIconDockLeftElement; new (): HTMLSwirlIconDockLeftElement; }; + interface HTMLSwirlIconDockLeftCollapseElement extends Components.SwirlIconDockLeftCollapse, HTMLStencilElement { + } + var HTMLSwirlIconDockLeftCollapseElement: { + prototype: HTMLSwirlIconDockLeftCollapseElement; + new (): HTMLSwirlIconDockLeftCollapseElement; + }; + interface HTMLSwirlIconDockLeftExpandElement extends Components.SwirlIconDockLeftExpand, HTMLStencilElement { + } + var HTMLSwirlIconDockLeftExpandElement: { + prototype: HTMLSwirlIconDockLeftExpandElement; + new (): HTMLSwirlIconDockLeftExpandElement; + }; interface HTMLSwirlIconDotElement extends Components.SwirlIconDot, HTMLStencilElement { } var HTMLSwirlIconDotElement: { @@ -3506,6 +3694,12 @@ declare global { prototype: HTMLSwirlIconLinkElement; new (): HTMLSwirlIconLinkElement; }; + interface HTMLSwirlIconLiveElement extends Components.SwirlIconLive, HTMLStencilElement { + } + var HTMLSwirlIconLiveElement: { + prototype: HTMLSwirlIconLiveElement; + new (): HTMLSwirlIconLiveElement; + }; interface HTMLSwirlIconLoadElement extends Components.SwirlIconLoad, HTMLStencilElement { } var HTMLSwirlIconLoadElement: { @@ -3746,12 +3940,36 @@ declare global { prototype: HTMLSwirlIconPollElement; new (): HTMLSwirlIconPollElement; }; + interface HTMLSwirlIconPostApprovalElement extends Components.SwirlIconPostApproval, HTMLStencilElement { + } + var HTMLSwirlIconPostApprovalElement: { + prototype: HTMLSwirlIconPostApprovalElement; + new (): HTMLSwirlIconPostApprovalElement; + }; + interface HTMLSwirlIconPresentElement extends Components.SwirlIconPresent, HTMLStencilElement { + } + var HTMLSwirlIconPresentElement: { + prototype: HTMLSwirlIconPresentElement; + new (): HTMLSwirlIconPresentElement; + }; interface HTMLSwirlIconPrintElement extends Components.SwirlIconPrint, HTMLStencilElement { } var HTMLSwirlIconPrintElement: { prototype: HTMLSwirlIconPrintElement; new (): HTMLSwirlIconPrintElement; }; + interface HTMLSwirlIconPublicElement extends Components.SwirlIconPublic, HTMLStencilElement { + } + var HTMLSwirlIconPublicElement: { + prototype: HTMLSwirlIconPublicElement; + new (): HTMLSwirlIconPublicElement; + }; + interface HTMLSwirlIconPublicOffElement extends Components.SwirlIconPublicOff, HTMLStencilElement { + } + var HTMLSwirlIconPublicOffElement: { + prototype: HTMLSwirlIconPublicOffElement; + new (): HTMLSwirlIconPublicOffElement; + }; interface HTMLSwirlIconRatioFourToThreeElement extends Components.SwirlIconRatioFourToThree, HTMLStencilElement { } var HTMLSwirlIconRatioFourToThreeElement: { @@ -3800,6 +4018,12 @@ declare global { prototype: HTMLSwirlIconRemoveElement; new (): HTMLSwirlIconRemoveElement; }; + interface HTMLSwirlIconRemoveCircleElement extends Components.SwirlIconRemoveCircle, HTMLStencilElement { + } + var HTMLSwirlIconRemoveCircleElement: { + prototype: HTMLSwirlIconRemoveCircleElement; + new (): HTMLSwirlIconRemoveCircleElement; + }; interface HTMLSwirlIconRemoveModeratorElement extends Components.SwirlIconRemoveModerator, HTMLStencilElement { } var HTMLSwirlIconRemoveModeratorElement: { @@ -3836,6 +4060,18 @@ declare global { prototype: HTMLSwirlIconRotateRightElement; new (): HTMLSwirlIconRotateRightElement; }; + interface HTMLSwirlIconScreenshareElement extends Components.SwirlIconScreenshare, HTMLStencilElement { + } + var HTMLSwirlIconScreenshareElement: { + prototype: HTMLSwirlIconScreenshareElement; + new (): HTMLSwirlIconScreenshareElement; + }; + interface HTMLSwirlIconScreenshareOffElement extends Components.SwirlIconScreenshareOff, HTMLStencilElement { + } + var HTMLSwirlIconScreenshareOffElement: { + prototype: HTMLSwirlIconScreenshareOffElement; + new (): HTMLSwirlIconScreenshareOffElement; + }; interface HTMLSwirlIconSearchElement extends Components.SwirlIconSearch, HTMLStencilElement { } var HTMLSwirlIconSearchElement: { @@ -3992,6 +4228,12 @@ declare global { prototype: HTMLSwirlIconVideoLibraryElement; new (): HTMLSwirlIconVideoLibraryElement; }; + interface HTMLSwirlIconVideoPlayerElement extends Components.SwirlIconVideoPlayer, HTMLStencilElement { + } + var HTMLSwirlIconVideoPlayerElement: { + prototype: HTMLSwirlIconVideoPlayerElement; + new (): HTMLSwirlIconVideoPlayerElement; + }; interface HTMLSwirlIconVisibilityElement extends Components.SwirlIconVisibility, HTMLStencilElement { } var HTMLSwirlIconVisibilityElement: { @@ -4041,6 +4283,8 @@ declare global { new (): HTMLSwirlImageGridElement; }; interface HTMLSwirlImageGridItemElementEventMap { + "gifStarted": void; + "gifStopped": void; "imageError": void; "imageLoad": void; } @@ -5019,6 +5263,29 @@ declare global { prototype: HTMLSwirlToastProviderElement; new (): HTMLSwirlToastProviderElement; }; + interface HTMLSwirlToggleButtonElement extends Components.SwirlToggleButton, HTMLStencilElement { + } + var HTMLSwirlToggleButtonElement: { + prototype: HTMLSwirlToggleButtonElement; + new (): HTMLSwirlToggleButtonElement; + }; + interface HTMLSwirlToggleGroupElementEventMap { + "selectedToggleChange": string; + } + interface HTMLSwirlToggleGroupElement extends Components.SwirlToggleGroup, HTMLStencilElement { + addEventListener(type: K, listener: (this: HTMLSwirlToggleGroupElement, ev: SwirlToggleGroupCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; + addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; + addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; + addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; + removeEventListener(type: K, listener: (this: HTMLSwirlToggleGroupElement, ev: SwirlToggleGroupCustomEvent) => any, options?: boolean | EventListenerOptions): void; + removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; + removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; + removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; + } + var HTMLSwirlToggleGroupElement: { + prototype: HTMLSwirlToggleGroupElement; + new (): HTMLSwirlToggleGroupElement; + }; interface HTMLSwirlToolbarElement extends Components.SwirlToolbar, HTMLStencilElement { } var HTMLSwirlToolbarElement: { @@ -5031,12 +5298,67 @@ declare global { prototype: HTMLSwirlTooltipElement; new (): HTMLSwirlTooltipElement; }; + interface HTMLSwirlTreeNavigationElement extends Components.SwirlTreeNavigation, HTMLStencilElement { + } + var HTMLSwirlTreeNavigationElement: { + prototype: HTMLSwirlTreeNavigationElement; + new (): HTMLSwirlTreeNavigationElement; + }; + interface HTMLSwirlTreeNavigationItemElementEventMap { + "expansionChange": boolean; + } interface HTMLSwirlTreeNavigationItemElement extends Components.SwirlTreeNavigationItem, HTMLStencilElement { + addEventListener(type: K, listener: (this: HTMLSwirlTreeNavigationItemElement, ev: SwirlTreeNavigationItemCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; + addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; + addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; + addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; + removeEventListener(type: K, listener: (this: HTMLSwirlTreeNavigationItemElement, ev: SwirlTreeNavigationItemCustomEvent) => any, options?: boolean | EventListenerOptions): void; + removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; + removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; + removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; } var HTMLSwirlTreeNavigationItemElement: { prototype: HTMLSwirlTreeNavigationItemElement; new (): HTMLSwirlTreeNavigationItemElement; }; + interface HTMLSwirlTreeViewElementEventMap { + "itemExpansionChanged": { + itemId: string; + expanded: boolean; + }; + } + interface HTMLSwirlTreeViewElement extends Components.SwirlTreeView, HTMLStencilElement { + addEventListener(type: K, listener: (this: HTMLSwirlTreeViewElement, ev: SwirlTreeViewCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; + addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; + addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; + addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; + removeEventListener(type: K, listener: (this: HTMLSwirlTreeViewElement, ev: SwirlTreeViewCustomEvent) => any, options?: boolean | EventListenerOptions): void; + removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; + removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; + removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; + } + var HTMLSwirlTreeViewElement: { + prototype: HTMLSwirlTreeViewElement; + new (): HTMLSwirlTreeViewElement; + }; + interface HTMLSwirlTreeViewItemElementEventMap { + "expandedChange": boolean; + "itemSelected": HTMLSwirlTreeViewItemElement; + } + interface HTMLSwirlTreeViewItemElement extends Components.SwirlTreeViewItem, HTMLStencilElement { + addEventListener(type: K, listener: (this: HTMLSwirlTreeViewItemElement, ev: SwirlTreeViewItemCustomEvent) => any, options?: boolean | AddEventListenerOptions): void; + addEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; + addEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void; + addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void; + removeEventListener(type: K, listener: (this: HTMLSwirlTreeViewItemElement, ev: SwirlTreeViewItemCustomEvent) => any, options?: boolean | EventListenerOptions): void; + removeEventListener(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void; + removeEventListener(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void; + removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void; + } + var HTMLSwirlTreeViewItemElement: { + prototype: HTMLSwirlTreeViewItemElement; + new (): HTMLSwirlTreeViewItemElement; + }; interface HTMLSwirlVideoThumbnailElement extends Components.SwirlVideoThumbnail, HTMLStencilElement { } var HTMLSwirlVideoThumbnailElement: { @@ -5092,6 +5414,7 @@ declare global { "swirl-file-viewer": HTMLSwirlFileViewerElement; "swirl-file-viewer-audio": HTMLSwirlFileViewerAudioElement; "swirl-file-viewer-csv": HTMLSwirlFileViewerCsvElement; + "swirl-file-viewer-fallback": HTMLSwirlFileViewerFallbackElement; "swirl-file-viewer-image": HTMLSwirlFileViewerImageElement; "swirl-file-viewer-pdf": HTMLSwirlFileViewerPdfElement; "swirl-file-viewer-text": HTMLSwirlFileViewerTextElement; @@ -5146,6 +5469,8 @@ declare global { "swirl-icon-directory-filled": HTMLSwirlIconDirectoryFilledElement; "swirl-icon-discover": HTMLSwirlIconDiscoverElement; "swirl-icon-dock-left": HTMLSwirlIconDockLeftElement; + "swirl-icon-dock-left-collapse": HTMLSwirlIconDockLeftCollapseElement; + "swirl-icon-dock-left-expand": HTMLSwirlIconDockLeftExpandElement; "swirl-icon-dot": HTMLSwirlIconDotElement; "swirl-icon-double-arrow-left": HTMLSwirlIconDoubleArrowLeftElement; "swirl-icon-double-arrow-right": HTMLSwirlIconDoubleArrowRightElement; @@ -5187,6 +5512,7 @@ declare global { "swirl-icon-light-mode": HTMLSwirlIconLightModeElement; "swirl-icon-like": HTMLSwirlIconLikeElement; "swirl-icon-link": HTMLSwirlIconLinkElement; + "swirl-icon-live": HTMLSwirlIconLiveElement; "swirl-icon-load": HTMLSwirlIconLoadElement; "swirl-icon-lock": HTMLSwirlIconLockElement; "swirl-icon-lock-open": HTMLSwirlIconLockOpenElement; @@ -5227,7 +5553,11 @@ declare global { "swirl-icon-place": HTMLSwirlIconPlaceElement; "swirl-icon-play-arrow": HTMLSwirlIconPlayArrowElement; "swirl-icon-poll": HTMLSwirlIconPollElement; + "swirl-icon-post-approval": HTMLSwirlIconPostApprovalElement; + "swirl-icon-present": HTMLSwirlIconPresentElement; "swirl-icon-print": HTMLSwirlIconPrintElement; + "swirl-icon-public": HTMLSwirlIconPublicElement; + "swirl-icon-public-off": HTMLSwirlIconPublicOffElement; "swirl-icon-ratio-four-to-three": HTMLSwirlIconRatioFourToThreeElement; "swirl-icon-ratio-freeform": HTMLSwirlIconRatioFreeformElement; "swirl-icon-ratio-sixteen-to-nine": HTMLSwirlIconRatioSixteenToNineElement; @@ -5236,12 +5566,15 @@ declare global { "swirl-icon-ratio-three-to-two": HTMLSwirlIconRatioThreeToTwoElement; "swirl-icon-recieved": HTMLSwirlIconRecievedElement; "swirl-icon-remove": HTMLSwirlIconRemoveElement; + "swirl-icon-remove-circle": HTMLSwirlIconRemoveCircleElement; "swirl-icon-remove-moderator": HTMLSwirlIconRemoveModeratorElement; "swirl-icon-reply": HTMLSwirlIconReplyElement; "swirl-icon-report": HTMLSwirlIconReportElement; "swirl-icon-roadmap": HTMLSwirlIconRoadmapElement; "swirl-icon-rotate-left": HTMLSwirlIconRotateLeftElement; "swirl-icon-rotate-right": HTMLSwirlIconRotateRightElement; + "swirl-icon-screenshare": HTMLSwirlIconScreenshareElement; + "swirl-icon-screenshare-off": HTMLSwirlIconScreenshareOffElement; "swirl-icon-search": HTMLSwirlIconSearchElement; "swirl-icon-search-strong": HTMLSwirlIconSearchStrongElement; "swirl-icon-secure": HTMLSwirlIconSecureElement; @@ -5268,6 +5601,7 @@ declare global { "swirl-icon-video-camera": HTMLSwirlIconVideoCameraElement; "swirl-icon-video-camera-off": HTMLSwirlIconVideoCameraOffElement; "swirl-icon-video-library": HTMLSwirlIconVideoLibraryElement; + "swirl-icon-video-player": HTMLSwirlIconVideoPlayerElement; "swirl-icon-visibility": HTMLSwirlIconVisibilityElement; "swirl-icon-visibility-off": HTMLSwirlIconVisibilityOffElement; "swirl-icon-voice": HTMLSwirlIconVoiceElement; @@ -5386,9 +5720,14 @@ declare global { "swirl-time-input": HTMLSwirlTimeInputElement; "swirl-toast": HTMLSwirlToastElement; "swirl-toast-provider": HTMLSwirlToastProviderElement; + "swirl-toggle-button": HTMLSwirlToggleButtonElement; + "swirl-toggle-group": HTMLSwirlToggleGroupElement; "swirl-toolbar": HTMLSwirlToolbarElement; "swirl-tooltip": HTMLSwirlTooltipElement; + "swirl-tree-navigation": HTMLSwirlTreeNavigationElement; "swirl-tree-navigation-item": HTMLSwirlTreeNavigationItemElement; + "swirl-tree-view": HTMLSwirlTreeViewElement; + "swirl-tree-view-item": HTMLSwirlTreeViewItemElement; "swirl-video-thumbnail": HTMLSwirlVideoThumbnailElement; "swirl-visually-hidden": HTMLSwirlVisuallyHiddenElement; } @@ -5448,15 +5787,20 @@ declare namespace LocalJSX { interface SwirlAppLayout { "appName": string; "backToNavigationViewButtonLabel"?: string; + "collapsibleNavigation"?: boolean; "ctaIcon"?: string; "ctaLabel"?: string; "hasNavigation"?: boolean; "hideAppBar"?: boolean; "navigationBackButtonLabel"?: string; + "navigationExpansionStateStorageKey"?: string; "navigationLabel"?: string; + "navigationOverlayLabel"?: string; + "navigationToggleLabel"?: string; "onCtaClick"?: (event: SwirlAppLayoutCustomEvent) => void; "onMobileViewChange"?: (event: SwirlAppLayoutCustomEvent) => void; "onNavigationBackButtonClick"?: (event: SwirlAppLayoutCustomEvent) => void; + "onNavigationExpansionStateChange"?: (event: SwirlAppLayoutCustomEvent) => void; "onSidebarToggle"?: (event: SwirlAppLayoutCustomEvent) => void; "showNavigationBackButton"?: boolean; "sidebarCloseButtonLabel"?: string; @@ -5526,9 +5870,12 @@ declare namespace LocalJSX { } interface SwirlBox { "basis"?: string; + "borderColor"?: SwirlBoxBorderColor; "bordered"?: boolean; "borderedBlockEnd"?: boolean; + "borderedBlockEndWhenScrolled"?: boolean; "borderedBlockStart"?: boolean; + "borderedBlockStartWhenScrolled"?: boolean; "borderedInlineEnd"?: boolean; "borderedInlineStart"?: boolean; "bottom"?: string; @@ -5651,6 +5998,7 @@ declare namespace LocalJSX { "intent"?: SwirlChipIntent; "interactive"?: boolean; "label": string; + "onChipClick"?: (event: SwirlChipCustomEvent) => void; "onRemove"?: (event: SwirlChipCustomEvent) => void; "pressed"?: boolean; "progress"?: number; @@ -5823,6 +6171,13 @@ declare namespace LocalJSX { "file": string; "onActivate"?: (event: SwirlFileViewerCsvCustomEvent) => void; } + interface SwirlFileViewerFallback { + "disableDownload"?: boolean; + "downloadButtonLabel"?: string; + "file": string; + "fileName"?: string; + "onActivate"?: (event: SwirlFileViewerFallbackCustomEvent) => void; + } interface SwirlFileViewerImage { "description"?: string; "errorMessage"?: string; @@ -5856,11 +6211,13 @@ declare namespace LocalJSX { "description"?: string; "disabled"?: boolean; "errorMessage"?: string; + "fontSize"?: SwirlFormControlFontSize; "hideLabel"?: boolean; "inline"?: boolean; "invalid"?: boolean; "label": string; "labelPosition"?: SwirlFormControlLabelPosition; + "secondaryLabel"?: string; "tooltip"?: string; } interface SwirlFormGroup { @@ -6065,6 +6422,14 @@ declare namespace LocalJSX { "color"?: SwirlIconColor1; "size"?: SwirlIconSize; } + interface SwirlIconDockLeftCollapse { + "color"?: SwirlIconColor1; + "size"?: SwirlIconSize; + } + interface SwirlIconDockLeftExpand { + "color"?: SwirlIconColor1; + "size"?: SwirlIconSize; + } interface SwirlIconDot { "color"?: SwirlIconColor1; "size"?: SwirlIconSize; @@ -6229,6 +6594,10 @@ declare namespace LocalJSX { "color"?: SwirlIconColor1; "size"?: SwirlIconSize; } + interface SwirlIconLive { + "color"?: SwirlIconColor1; + "size"?: SwirlIconSize; + } interface SwirlIconLoad { "color"?: SwirlIconColor1; "size"?: SwirlIconSize; @@ -6389,10 +6758,26 @@ declare namespace LocalJSX { "color"?: SwirlIconColor1; "size"?: SwirlIconSize; } + interface SwirlIconPostApproval { + "color"?: SwirlIconColor1; + "size"?: SwirlIconSize; + } + interface SwirlIconPresent { + "color"?: SwirlIconColor1; + "size"?: SwirlIconSize; + } interface SwirlIconPrint { "color"?: SwirlIconColor1; "size"?: SwirlIconSize; } + interface SwirlIconPublic { + "color"?: SwirlIconColor1; + "size"?: SwirlIconSize; + } + interface SwirlIconPublicOff { + "color"?: SwirlIconColor1; + "size"?: SwirlIconSize; + } interface SwirlIconRatioFourToThree { "color"?: SwirlIconColor1; "size"?: SwirlIconSize; @@ -6425,6 +6810,10 @@ declare namespace LocalJSX { "color"?: SwirlIconColor1; "size"?: SwirlIconSize; } + interface SwirlIconRemoveCircle { + "color"?: SwirlIconColor1; + "size"?: SwirlIconSize; + } interface SwirlIconRemoveModerator { "color"?: SwirlIconColor1; "size"?: SwirlIconSize; @@ -6449,6 +6838,14 @@ declare namespace LocalJSX { "color"?: SwirlIconColor1; "size"?: SwirlIconSize; } + interface SwirlIconScreenshare { + "color"?: SwirlIconColor1; + "size"?: SwirlIconSize; + } + interface SwirlIconScreenshareOff { + "color"?: SwirlIconColor1; + "size"?: SwirlIconSize; + } interface SwirlIconSearch { "color"?: SwirlIconColor1; "size"?: SwirlIconSize; @@ -6553,6 +6950,10 @@ declare namespace LocalJSX { "color"?: SwirlIconColor1; "size"?: SwirlIconSize; } + interface SwirlIconVideoPlayer { + "color"?: SwirlIconColor1; + "size"?: SwirlIconSize; + } interface SwirlIconVisibility { "color"?: SwirlIconColor1; "size"?: SwirlIconSize; @@ -6587,12 +6988,17 @@ declare namespace LocalJSX { } interface SwirlImageGridItem { "alt": string; + "gifPauseLabel"?: string; + "gifPlayLabel"?: string; "icon"?: string; "interactive"?: boolean; "loading"?: SwirlImageGridItemLoading; + "onGifStarted"?: (event: SwirlImageGridItemCustomEvent) => void; + "onGifStopped"?: (event: SwirlImageGridItemCustomEvent) => void; "onImageError"?: (event: SwirlImageGridItemCustomEvent) => void; "onImageLoad"?: (event: SwirlImageGridItemCustomEvent) => void; "overlay"?: string; + "showGifControls"?: boolean; "src": string; } interface SwirlInlineError { @@ -6792,6 +7198,7 @@ declare namespace LocalJSX { "invalid"?: boolean; "label"?: string; "onValueChange"?: (event: SwirlRadioCustomEvent) => void; + "tooltip"?: string; "value": string; "variant"?: SwirlRadioVariant; } @@ -6812,6 +7219,7 @@ declare namespace LocalJSX { oldIndex: number; newIndex: number; }>) => void; + "spacing"?: SwirlStackSpacing; } interface SwirlResourceListFileItem { "description"?: string; @@ -6880,6 +7288,7 @@ declare namespace LocalJSX { "searchLoading"?: boolean; "searchPlaceholder"?: string; "selectId"?: string; + "standalone"?: boolean; "swirlAriaDescribedby"?: string; "value"?: string[]; "withSearch"?: boolean; @@ -6893,11 +7302,17 @@ declare namespace LocalJSX { "brandedHeader"?: boolean; "browserBackButtonLabel"?: string; "browserForwardButtonLabel"?: string; + "collapseNavigationButtonLabel"?: string; + "enableSecondaryNavGridLayout"?: boolean; + "expandNavigationButtonLabel"?: string; + "gridNavLayoutToggleLabel"?: string; "hideMobileNavigationButtonLabel"?: string; + "listNavLayoutToggleLabel"?: string; "navigationLabel"?: string; - "navigationToggleLabel"?: string; "onSidebarToggleClick"?: (event: SwirlShellLayoutCustomEvent) => void; "onSkipLinkClick"?: (event: SwirlShellLayoutCustomEvent) => void; + "secondaryNavCollapseLabel"?: string; + "secondaryNavExpandLabel"?: string; "sidebarActive"?: boolean; "sidebarToggleBadge"?: string | boolean; "sidebarToggleBadgeAriaLabel"?: string; @@ -6909,9 +7324,14 @@ declare namespace LocalJSX { "active"?: boolean; "badgeLabel"?: string; "boxed"?: boolean; + "hideLabel"?: boolean; "href"?: string; + "inlineLabel"?: boolean; + "inlineLabelColor"?: SwirlLabelColor; "label": string; "target"?: string; + "tiled"?: boolean; + "withGradient"?: boolean; } interface SwirlSkeletonBox { "animated"?: boolean; @@ -6935,7 +7355,7 @@ declare namespace LocalJSX { "height"?: string; "justify"?: SwirlStackJustify; "orientation"?: SwirlStackOrientation; - "spacing"?: SwirlStackSpacing; + "spacing"?: SwirlStackSpacing1; "wrap"?: boolean; } interface SwirlStatusIndicator { @@ -7188,6 +7608,7 @@ declare namespace LocalJSX { interface SwirlTag { "bordered"?: boolean; "icon"?: string; + "iconPosition"?: SwirlTagIconPosition; "intent"?: SwirlTagIntent; "label": string; "onRemove"?: (event: SwirlTagCustomEvent) => void; @@ -7204,6 +7625,7 @@ declare namespace LocalJSX { "fontFamily"?: SwirlTextFontFamily; "fontStyle"?: SwirlTextFontStyle; "lines"?: number; + "responsive"?: boolean; "size"?: SwirlTextSize; "truncate"?: boolean; "truncateDirection"?: SwirlTextTruncateDirection; @@ -7219,6 +7641,7 @@ declare namespace LocalJSX { "clearable"?: boolean; "disableDynamicWidth"?: boolean; "disabled"?: boolean; + "fontSize"?: SwirlTextInputFontSize; "inline"?: boolean; "invalid"?: boolean; "max"?: number; @@ -7299,23 +7722,60 @@ declare namespace LocalJSX { */ "globalDuration"?: number; } + interface SwirlToggleButton { + "identifier": string; + "isPressed"?: boolean; + "label": string; + } + interface SwirlToggleGroup { + "onSelectedToggleChange"?: (event: SwirlToggleGroupCustomEvent) => void; + "selectedToggleId": string; + } interface SwirlToolbar { "label"?: string; "orientation"?: SwirlToolbarOrientation; } interface SwirlTooltip { + "active"?: boolean; "content": string; "delay"?: number; "position"?: SwirlTooltipPosition; "positioning"?: Strategy; } + interface SwirlTreeNavigation { + "label": string; + } interface SwirlTreeNavigationItem { "active"?: boolean; + "expandable"?: boolean; + "external"?: boolean; "href"?: string; "icon"?: string; "label": string; + "level"?: number; + "navigationItemId": string; + "onExpansionChange"?: (event: SwirlTreeNavigationItemCustomEvent) => void; "target"?: string; } + interface SwirlTreeView { + "initiallyExpandedItemIds"?: string[]; + "label": string; + "onItemExpansionChanged"?: (event: SwirlTreeViewCustomEvent<{ + itemId: string; + expanded: boolean; + }>) => void; + } + interface SwirlTreeViewItem { + "active"?: boolean; + "expandable"?: boolean; + "href"?: string; + "icon"?: string; + "iconColor"?: SwirlIconColor1; + "itemId": string; + "label": string; + "onExpandedChange"?: (event: SwirlTreeViewItemCustomEvent) => void; + "onItemSelected"?: (event: SwirlTreeViewItemCustomEvent) => void; + } interface SwirlVideoThumbnail { "duration"?: string; "durationLabel"?: string; @@ -7367,6 +7827,7 @@ declare namespace LocalJSX { "swirl-file-viewer": SwirlFileViewer; "swirl-file-viewer-audio": SwirlFileViewerAudio; "swirl-file-viewer-csv": SwirlFileViewerCsv; + "swirl-file-viewer-fallback": SwirlFileViewerFallback; "swirl-file-viewer-image": SwirlFileViewerImage; "swirl-file-viewer-pdf": SwirlFileViewerPdf; "swirl-file-viewer-text": SwirlFileViewerText; @@ -7421,6 +7882,8 @@ declare namespace LocalJSX { "swirl-icon-directory-filled": SwirlIconDirectoryFilled; "swirl-icon-discover": SwirlIconDiscover; "swirl-icon-dock-left": SwirlIconDockLeft; + "swirl-icon-dock-left-collapse": SwirlIconDockLeftCollapse; + "swirl-icon-dock-left-expand": SwirlIconDockLeftExpand; "swirl-icon-dot": SwirlIconDot; "swirl-icon-double-arrow-left": SwirlIconDoubleArrowLeft; "swirl-icon-double-arrow-right": SwirlIconDoubleArrowRight; @@ -7462,6 +7925,7 @@ declare namespace LocalJSX { "swirl-icon-light-mode": SwirlIconLightMode; "swirl-icon-like": SwirlIconLike; "swirl-icon-link": SwirlIconLink; + "swirl-icon-live": SwirlIconLive; "swirl-icon-load": SwirlIconLoad; "swirl-icon-lock": SwirlIconLock; "swirl-icon-lock-open": SwirlIconLockOpen; @@ -7502,7 +7966,11 @@ declare namespace LocalJSX { "swirl-icon-place": SwirlIconPlace; "swirl-icon-play-arrow": SwirlIconPlayArrow; "swirl-icon-poll": SwirlIconPoll; + "swirl-icon-post-approval": SwirlIconPostApproval; + "swirl-icon-present": SwirlIconPresent; "swirl-icon-print": SwirlIconPrint; + "swirl-icon-public": SwirlIconPublic; + "swirl-icon-public-off": SwirlIconPublicOff; "swirl-icon-ratio-four-to-three": SwirlIconRatioFourToThree; "swirl-icon-ratio-freeform": SwirlIconRatioFreeform; "swirl-icon-ratio-sixteen-to-nine": SwirlIconRatioSixteenToNine; @@ -7511,12 +7979,15 @@ declare namespace LocalJSX { "swirl-icon-ratio-three-to-two": SwirlIconRatioThreeToTwo; "swirl-icon-recieved": SwirlIconRecieved; "swirl-icon-remove": SwirlIconRemove; + "swirl-icon-remove-circle": SwirlIconRemoveCircle; "swirl-icon-remove-moderator": SwirlIconRemoveModerator; "swirl-icon-reply": SwirlIconReply; "swirl-icon-report": SwirlIconReport; "swirl-icon-roadmap": SwirlIconRoadmap; "swirl-icon-rotate-left": SwirlIconRotateLeft; "swirl-icon-rotate-right": SwirlIconRotateRight; + "swirl-icon-screenshare": SwirlIconScreenshare; + "swirl-icon-screenshare-off": SwirlIconScreenshareOff; "swirl-icon-search": SwirlIconSearch; "swirl-icon-search-strong": SwirlIconSearchStrong; "swirl-icon-secure": SwirlIconSecure; @@ -7543,6 +8014,7 @@ declare namespace LocalJSX { "swirl-icon-video-camera": SwirlIconVideoCamera; "swirl-icon-video-camera-off": SwirlIconVideoCameraOff; "swirl-icon-video-library": SwirlIconVideoLibrary; + "swirl-icon-video-player": SwirlIconVideoPlayer; "swirl-icon-visibility": SwirlIconVisibility; "swirl-icon-visibility-off": SwirlIconVisibilityOff; "swirl-icon-voice": SwirlIconVoice; @@ -7661,9 +8133,14 @@ declare namespace LocalJSX { "swirl-time-input": SwirlTimeInput; "swirl-toast": SwirlToast; "swirl-toast-provider": SwirlToastProvider; + "swirl-toggle-button": SwirlToggleButton; + "swirl-toggle-group": SwirlToggleGroup; "swirl-toolbar": SwirlToolbar; "swirl-tooltip": SwirlTooltip; + "swirl-tree-navigation": SwirlTreeNavigation; "swirl-tree-navigation-item": SwirlTreeNavigationItem; + "swirl-tree-view": SwirlTreeView; + "swirl-tree-view-item": SwirlTreeViewItem; "swirl-video-thumbnail": SwirlVideoThumbnail; "swirl-visually-hidden": SwirlVisuallyHidden; } @@ -7720,6 +8197,7 @@ declare module "@stencil/core" { "swirl-file-viewer": LocalJSX.SwirlFileViewer & JSXBase.HTMLAttributes; "swirl-file-viewer-audio": LocalJSX.SwirlFileViewerAudio & JSXBase.HTMLAttributes; "swirl-file-viewer-csv": LocalJSX.SwirlFileViewerCsv & JSXBase.HTMLAttributes; + "swirl-file-viewer-fallback": LocalJSX.SwirlFileViewerFallback & JSXBase.HTMLAttributes; "swirl-file-viewer-image": LocalJSX.SwirlFileViewerImage & JSXBase.HTMLAttributes; "swirl-file-viewer-pdf": LocalJSX.SwirlFileViewerPdf & JSXBase.HTMLAttributes; "swirl-file-viewer-text": LocalJSX.SwirlFileViewerText & JSXBase.HTMLAttributes; @@ -7774,6 +8252,8 @@ declare module "@stencil/core" { "swirl-icon-directory-filled": LocalJSX.SwirlIconDirectoryFilled & JSXBase.HTMLAttributes; "swirl-icon-discover": LocalJSX.SwirlIconDiscover & JSXBase.HTMLAttributes; "swirl-icon-dock-left": LocalJSX.SwirlIconDockLeft & JSXBase.HTMLAttributes; + "swirl-icon-dock-left-collapse": LocalJSX.SwirlIconDockLeftCollapse & JSXBase.HTMLAttributes; + "swirl-icon-dock-left-expand": LocalJSX.SwirlIconDockLeftExpand & JSXBase.HTMLAttributes; "swirl-icon-dot": LocalJSX.SwirlIconDot & JSXBase.HTMLAttributes; "swirl-icon-double-arrow-left": LocalJSX.SwirlIconDoubleArrowLeft & JSXBase.HTMLAttributes; "swirl-icon-double-arrow-right": LocalJSX.SwirlIconDoubleArrowRight & JSXBase.HTMLAttributes; @@ -7815,6 +8295,7 @@ declare module "@stencil/core" { "swirl-icon-light-mode": LocalJSX.SwirlIconLightMode & JSXBase.HTMLAttributes; "swirl-icon-like": LocalJSX.SwirlIconLike & JSXBase.HTMLAttributes; "swirl-icon-link": LocalJSX.SwirlIconLink & JSXBase.HTMLAttributes; + "swirl-icon-live": LocalJSX.SwirlIconLive & JSXBase.HTMLAttributes; "swirl-icon-load": LocalJSX.SwirlIconLoad & JSXBase.HTMLAttributes; "swirl-icon-lock": LocalJSX.SwirlIconLock & JSXBase.HTMLAttributes; "swirl-icon-lock-open": LocalJSX.SwirlIconLockOpen & JSXBase.HTMLAttributes; @@ -7855,7 +8336,11 @@ declare module "@stencil/core" { "swirl-icon-place": LocalJSX.SwirlIconPlace & JSXBase.HTMLAttributes; "swirl-icon-play-arrow": LocalJSX.SwirlIconPlayArrow & JSXBase.HTMLAttributes; "swirl-icon-poll": LocalJSX.SwirlIconPoll & JSXBase.HTMLAttributes; + "swirl-icon-post-approval": LocalJSX.SwirlIconPostApproval & JSXBase.HTMLAttributes; + "swirl-icon-present": LocalJSX.SwirlIconPresent & JSXBase.HTMLAttributes; "swirl-icon-print": LocalJSX.SwirlIconPrint & JSXBase.HTMLAttributes; + "swirl-icon-public": LocalJSX.SwirlIconPublic & JSXBase.HTMLAttributes; + "swirl-icon-public-off": LocalJSX.SwirlIconPublicOff & JSXBase.HTMLAttributes; "swirl-icon-ratio-four-to-three": LocalJSX.SwirlIconRatioFourToThree & JSXBase.HTMLAttributes; "swirl-icon-ratio-freeform": LocalJSX.SwirlIconRatioFreeform & JSXBase.HTMLAttributes; "swirl-icon-ratio-sixteen-to-nine": LocalJSX.SwirlIconRatioSixteenToNine & JSXBase.HTMLAttributes; @@ -7864,12 +8349,15 @@ declare module "@stencil/core" { "swirl-icon-ratio-three-to-two": LocalJSX.SwirlIconRatioThreeToTwo & JSXBase.HTMLAttributes; "swirl-icon-recieved": LocalJSX.SwirlIconRecieved & JSXBase.HTMLAttributes; "swirl-icon-remove": LocalJSX.SwirlIconRemove & JSXBase.HTMLAttributes; + "swirl-icon-remove-circle": LocalJSX.SwirlIconRemoveCircle & JSXBase.HTMLAttributes; "swirl-icon-remove-moderator": LocalJSX.SwirlIconRemoveModerator & JSXBase.HTMLAttributes; "swirl-icon-reply": LocalJSX.SwirlIconReply & JSXBase.HTMLAttributes; "swirl-icon-report": LocalJSX.SwirlIconReport & JSXBase.HTMLAttributes; "swirl-icon-roadmap": LocalJSX.SwirlIconRoadmap & JSXBase.HTMLAttributes; "swirl-icon-rotate-left": LocalJSX.SwirlIconRotateLeft & JSXBase.HTMLAttributes; "swirl-icon-rotate-right": LocalJSX.SwirlIconRotateRight & JSXBase.HTMLAttributes; + "swirl-icon-screenshare": LocalJSX.SwirlIconScreenshare & JSXBase.HTMLAttributes; + "swirl-icon-screenshare-off": LocalJSX.SwirlIconScreenshareOff & JSXBase.HTMLAttributes; "swirl-icon-search": LocalJSX.SwirlIconSearch & JSXBase.HTMLAttributes; "swirl-icon-search-strong": LocalJSX.SwirlIconSearchStrong & JSXBase.HTMLAttributes; "swirl-icon-secure": LocalJSX.SwirlIconSecure & JSXBase.HTMLAttributes; @@ -7896,6 +8384,7 @@ declare module "@stencil/core" { "swirl-icon-video-camera": LocalJSX.SwirlIconVideoCamera & JSXBase.HTMLAttributes; "swirl-icon-video-camera-off": LocalJSX.SwirlIconVideoCameraOff & JSXBase.HTMLAttributes; "swirl-icon-video-library": LocalJSX.SwirlIconVideoLibrary & JSXBase.HTMLAttributes; + "swirl-icon-video-player": LocalJSX.SwirlIconVideoPlayer & JSXBase.HTMLAttributes; "swirl-icon-visibility": LocalJSX.SwirlIconVisibility & JSXBase.HTMLAttributes; "swirl-icon-visibility-off": LocalJSX.SwirlIconVisibilityOff & JSXBase.HTMLAttributes; "swirl-icon-voice": LocalJSX.SwirlIconVoice & JSXBase.HTMLAttributes; @@ -8014,9 +8503,14 @@ declare module "@stencil/core" { "swirl-time-input": LocalJSX.SwirlTimeInput & JSXBase.HTMLAttributes; "swirl-toast": LocalJSX.SwirlToast & JSXBase.HTMLAttributes; "swirl-toast-provider": LocalJSX.SwirlToastProvider & JSXBase.HTMLAttributes; + "swirl-toggle-button": LocalJSX.SwirlToggleButton & JSXBase.HTMLAttributes; + "swirl-toggle-group": LocalJSX.SwirlToggleGroup & JSXBase.HTMLAttributes; "swirl-toolbar": LocalJSX.SwirlToolbar & JSXBase.HTMLAttributes; "swirl-tooltip": LocalJSX.SwirlTooltip & JSXBase.HTMLAttributes; + "swirl-tree-navigation": LocalJSX.SwirlTreeNavigation & JSXBase.HTMLAttributes; "swirl-tree-navigation-item": LocalJSX.SwirlTreeNavigationItem & JSXBase.HTMLAttributes; + "swirl-tree-view": LocalJSX.SwirlTreeView & JSXBase.HTMLAttributes; + "swirl-tree-view-item": LocalJSX.SwirlTreeViewItem & JSXBase.HTMLAttributes; "swirl-video-thumbnail": LocalJSX.SwirlVideoThumbnail & JSXBase.HTMLAttributes; "swirl-visually-hidden": LocalJSX.SwirlVisuallyHidden & JSXBase.HTMLAttributes; } diff --git a/packages/swirl-components/src/components/swirl-app-bar/swirl-app-bar.css b/packages/swirl-components/src/components/swirl-app-bar/swirl-app-bar.css index 84f08440e..f3bec65c8 100644 --- a/packages/swirl-components/src/components/swirl-app-bar/swirl-app-bar.css +++ b/packages/swirl-components/src/components/swirl-app-bar/swirl-app-bar.css @@ -17,10 +17,6 @@ padding-left: var(--s-space-16); align-items: center; gap: var(--s-space-16); - - @media (--from-desktop) { - min-width: min-content; - } } .app-bar--has-cta { @@ -58,7 +54,7 @@ align-items: center; @media (--from-desktop) { - min-width: min-content; + min-width: 0; flex-grow: 0; } } diff --git a/packages/swirl-components/src/components/swirl-app-icon/swirl-app-icon.css b/packages/swirl-components/src/components/swirl-app-icon/swirl-app-icon.css index 1e01b15d6..d84f91e8a 100644 --- a/packages/swirl-components/src/components/swirl-app-icon/swirl-app-icon.css +++ b/packages/swirl-components/src/components/swirl-app-icon/swirl-app-icon.css @@ -16,6 +16,7 @@ & > img { width: 100%; height: 100%; + object-fit: cover; } } diff --git a/packages/swirl-components/src/components/swirl-app-icon/swirl-app-icon.spec.tsx b/packages/swirl-components/src/components/swirl-app-icon/swirl-app-icon.spec.tsx index f85ef7c1d..fd6446717 100644 --- a/packages/swirl-components/src/components/swirl-app-icon/swirl-app-icon.spec.tsx +++ b/packages/swirl-components/src/components/swirl-app-icon/swirl-app-icon.spec.tsx @@ -34,7 +34,7 @@ describe("swirl-app-icon", () => { - + diff --git a/packages/swirl-components/src/components/swirl-app-icon/swirl-app-icon.tsx b/packages/swirl-components/src/components/swirl-app-icon/swirl-app-icon.tsx index ae369fd38..ca2792cf1 100644 --- a/packages/swirl-components/src/components/swirl-app-icon/swirl-app-icon.tsx +++ b/packages/swirl-components/src/components/swirl-app-icon/swirl-app-icon.tsx @@ -38,11 +38,11 @@ export class SwirlAppIcon { {showImage && ( )} {showIcon && ( diff --git a/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout-base.css b/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout-base.css index 71adccb22..3c9876ff4 100644 --- a/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout-base.css +++ b/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout-base.css @@ -1,4 +1,6 @@ :host { + --header-height: 3.5625rem; + position: relative; z-index: 1; display: flex; @@ -25,7 +27,7 @@ width: 100%; height: 100%; grid-template-columns: 100%; - grid-template-rows: 3.5625rem 1fr; + grid-template-rows: var(--header-height) 1fr; grid-template-areas: "body" "body"; @@ -90,6 +92,67 @@ display: none; } } + + &.app-layout--nav-collapsible { + @media (--from-desktop) { + &.app-layout--nav-collapsed { + & .app-layout__grid { + grid-template-columns: 0 1fr; + } + } + + &.app-layout--nav-overlayed { + & .app-layout__grid { + grid-template-columns: 0 1fr; + } + + & .app-layout__header, + & .app-layout__navigation { + position: absolute; + z-index: 4; + top: 0; + left: 0; + width: 22.5rem; + animation: app-layout-nav-overlay-slide-in-desktop 0.1s; + animation-fill-mode: forwards; + } + + & .app-layout__header { + &:after { + position: absolute; + z-index: 1; + top: 0; + left: calc(100% + var(--s-border-width-default)); + display: block; + width: 2rem; + height: 100vh; + background-image: linear-gradient( + to right, + rgba(0, 0, 0, 0.05) 0, + rgba(0, 0, 0, 0) 80%, + rgba(0, 0, 0, 0) 100% + ); + content: ""; + } + } + + & .app-layout__navigation { + z-index: 3; + bottom: 0; + } + } + } + + @media (--from-large-desktop) { + &.app-layout--nav-overlayed { + & .app-layout__header, + & .app-layout__navigation { + width: 25rem; + animation: app-layout-nav-overlay-slide-in-large-desktop 0.1s; + } + } + } + } } .app-layout--has-sidebar { @@ -140,18 +203,33 @@ .app-layout--has-navigation.app-layout--has-sidebar { &.app-layout--sidebar-active { - @media (--from-larger-desktop) { - & .app-layout__grid { - animation: app-layout-sidebar-slide-in 0.3s; + & .app-layout__grid { + @media (--from-larger-desktop) { grid-template-columns: 25rem 1fr 25rem; grid-template-areas: "header body sidebar" "navigation body sidebar"; + } + } + } + + &.app-layout--sidebar-opening { + @media (--from-larger-desktop) { + & .app-layout__grid { + animation: app-layout-sidebar-slide-in 0.3s; + animation-fill-mode: forwards; @media (prefers-reduced-motion) { animation: none; } } + + &.app-layout--nav-collapsed, + &.app-layout--nav-overlayed { + & .app-layout__grid { + animation: app-layout-sidebar-slide-in-with-collapsed-nav 0.3s; + } + } } } @@ -164,6 +242,13 @@ animation: none; } } + + &.app-layout--nav-collapsed, + &.app-layout--nav-overlayed { + & .app-layout__grid { + animation: app-layout-sidebar-slide-out-with-collapsed-nav 0.3s; + } + } } } @@ -184,6 +269,22 @@ } } + &.app-layout--nav-collapsible { + @media (--from-desktop) { + &.app-layout--nav-collapsed { + & .app-layout__grid { + grid-template-columns: 0 1fr; + } + } + + &.app-layout--nav-overlayed { + & .app-layout__grid { + grid-template-columns: 0 1fr; + } + } + } + } + @media (--from-tablet) and (--to-larger-desktop) { & .app-layout__sidebar { position: absolute; @@ -274,7 +375,7 @@ .app-layout--has-bottom-bar { & .app-layout__body { - grid-template-rows: minmax(3.5rem, auto) auto 1fr auto; + grid-template-rows: minmax(var(--header-height), auto) auto 1fr auto; grid-template-areas: "app-bar" "banner" @@ -282,6 +383,10 @@ "bottom-bar"; } + & .app-layout__content { + border-bottom: var(--s-border-width-default) solid transparent; + } + & .app-layout__bottom-bar { display: block; } @@ -318,16 +423,48 @@ } } +.app-layout--content-scrollable { + &:not(.app-layout--content-scrolled-to-top) { + & .app-layout__app-bar { + border-bottom-color: var(--s-border-default); + } + } + + &.app-layout--has-bottom-bar:not(.app-layout--content-scrolled-to-bottom) { + & .app-layout__content { + border-bottom-color: var(--s-border-default); + } + } +} + +.app-layout--nav-scrollable { + &:not(.app-layout--nav-scrolled-to-top) { + & .app-layout__header { + border-bottom-color: var(--s-border-default); + } + } +} + +.app-layout--sidebar-scrollable { + &:not(.app-layout--sidebar-scrolled-to-top) { + & .app-layout__sidebar-header, + & .app-layout__custom-sidebar-header { + border-bottom-color: var(--s-border-default); + } + } +} + .app-layout__header { z-index: 1; display: flex; min-width: 0; + height: var(--header-height); padding-top: var(--s-space-12); padding-right: var(--s-space-8); padding-bottom: var(--s-space-12); padding-left: var(--s-space-8); align-items: center; - border-bottom: var(--s-border-width-default) solid var(--s-border-default); + border-bottom: var(--s-border-width-default) solid transparent; background-color: var(--s-background-default); grid-area: header; gap: var(--s-space-8); @@ -393,13 +530,26 @@ grid-area: navigation; } +.app-layout__nav-overlay-toggle, +.app-layout__nav-expansion-toggle { + display: none; + + @media (--from-desktop) { + display: block; + } +} + +.app-layout__nav-expansion-toggle { + padding-left: var(--s-space-16); +} + .app-layout__body { z-index: 2; display: grid; width: 100%; height: 100%; grid-area: body; - grid-template-rows: minmax(3.5rem, auto) auto 1fr; + grid-template-rows: minmax(var(--header-height), auto) auto 1fr; grid-template-areas: "app-bar" "banner" @@ -409,10 +559,11 @@ .app-layout__app-bar { --swirl-tab-bar-border-width: 0; --swirl-tab-bar-height: 3.5rem; + display: flex; min-width: 0; align-items: center; - border-bottom: var(--s-border-width-default) solid var(--s-border-default); + border-bottom: var(--s-border-width-default) solid transparent; background-color: var(--s-background-default); grid-area: app-bar; gap: var(--s-space-8); @@ -422,7 +573,6 @@ display: none; min-width: 0; align-items: center; - border-top: var(--s-border-width-default) solid var(--s-border-default); background-color: var(--s-background-default); grid-area: bottom-bar; } @@ -471,7 +621,7 @@ height: 100%; border-left: var(--s-border-width-default) solid var(--s-border-default); grid-area: sidebar; - grid-template-rows: 3.5625rem 1fr; + grid-template-rows: var(--header-height) 1fr; grid-template-areas: "sidebar-header" "sidebar-content"; @@ -493,7 +643,7 @@ .app-layout__custom-sidebar-header { display: none; min-width: 0; - border-bottom: var(--s-border-width-default) solid var(--s-border-default); + border-bottom: var(--s-border-width-default) solid transparent; background-color: var(--s-background-default); grid-area: sidebar-header; } @@ -506,7 +656,7 @@ padding-bottom: var(--s-space-12); padding-left: var(--s-space-8); align-items: center; - border-bottom: var(--s-border-width-default) solid var(--s-border-default); + border-bottom: var(--s-border-width-default) solid transparent; background-color: var(--s-background-default); grid-area: sidebar-header; gap: var(--s-space-8); @@ -537,3 +687,23 @@ background-color: var(--s-background-default); grid-area: sidebar-content; } + +@keyframes app-layout-nav-overlay-slide-in-desktop { + from { + width: 0; + } + + to { + width: 22.5rem; + } +} + +@keyframes app-layout-nav-overlay-slide-in-large-desktop { + from { + width: 0; + } + + to { + width: 25rem; + } +} diff --git a/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout-transitions.css b/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout-transitions.css index 15fb31227..88900fbc9 100644 --- a/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout-transitions.css +++ b/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout-transitions.css @@ -334,6 +334,17 @@ } } +@keyframes app-layout-sidebar-slide-in-with-collapsed-nav { + from { + overflow: hidden; + grid-template-columns: 0 1fr 0; + } + to { + overflow: hidden; + grid-template-columns: 0 1fr 25rem; + } +} + @keyframes app-layout-sidebar-slide-out { from { overflow: hidden; @@ -345,6 +356,17 @@ } } +@keyframes app-layout-sidebar-slide-out-with-collapsed-nav { + from { + overflow: hidden; + grid-template-columns: 0 1fr 25rem; + } + to { + overflow: hidden; + grid-template-columns: 0 1fr 0; + } +} + @keyframes app-layout-no-nav-sidebar-slide-in { from { overflow: hidden; diff --git a/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout.spec.tsx b/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout.spec.tsx index 1f208d7f6..beec4ccb9 100644 --- a/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout.spec.tsx +++ b/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout.spec.tsx @@ -182,45 +182,4 @@ describe("swirl-app-layout", () => { expect(spy.mock.calls[0][0].detail).toBe("body"); expect(spy.mock.calls[1][0].detail).toBe("sidebar"); }); - - it("toggles the sidebar", async () => { - const page = await newSpecPage({ - components: [SwirlAppLayout], - html: ` - -

Sidebar
- - `, - }); - - const container = page.root.shadowRoot.children[0]; - const spy = jest.fn(); - - page.root.addEventListener("sidebarToggle", spy); - - expect( - container.classList.contains("app-layout--sidebar-active") - ).toBeFalsy(); - - await (page.root as HTMLSwirlAppLayoutElement).toggleSidebar(); - await page.waitForChanges(); - - expect( - container.classList.contains("app-layout--sidebar-active") - ).toBeTruthy(); - - await (page.root as HTMLSwirlAppLayoutElement).toggleSidebar(); - - // wait for animation - await new Promise((resolve) => setTimeout(resolve, 300)); - - await page.waitForChanges(); - - expect( - container.classList.contains("app-layout--sidebar-active") - ).toBeFalsy(); - - expect(spy.mock.calls[0][0].detail).toBe(true); - expect(spy.mock.calls[1][0].detail).toBe(false); - }); }); diff --git a/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout.tsx b/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout.tsx index ce9556e34..6704f6a8e 100644 --- a/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout.tsx +++ b/packages/swirl-components/src/components/swirl-app-layout/swirl-app-layout.tsx @@ -5,18 +5,32 @@ import { EventEmitter, h, Host, + Listen, Method, Prop, State, Watch, } from "@stencil/core"; import classnames from "classnames"; -import { isMobileViewport, prefersReducedMotion } from "../../utils"; +import { + debounce, + getDesktopMediaQuery, + isMobileViewport, + prefersReducedMotion, +} from "../../utils"; export type SwirlAppLayoutMobileView = "navigation" | "body" | "sidebar"; +export type SwirlAppLayoutNavigationExpansionState = + | "expanded" + | "collapsed" + | "overlayed"; + export type SwirlAppLayoutTransitionStyle = "none" | "slides" | "dialog"; +const SWIRL_APP_LAYOUT_NAV_EXPANSION_STATE_STORAGE_KEY = + "SWIRL_APP_LAYOUT_NAV_EXPANSION_STATE"; + /** * @slot content - Main content area * @slot navigation - The navigation area content @@ -41,32 +55,62 @@ export class SwirlAppLayout { @Prop() appName!: string; @Prop() backToNavigationViewButtonLabel?: string = "Back to navigation"; + @Prop() collapsibleNavigation?: boolean; @Prop() ctaIcon?: string; @Prop() ctaLabel?: string; @Prop({ mutable: true }) hasNavigation: boolean; @Prop() hideAppBar?: boolean; @Prop() navigationBackButtonLabel?: string = "Go back"; + @Prop() navigationExpansionStateStorageKey?: string = + SWIRL_APP_LAYOUT_NAV_EXPANSION_STATE_STORAGE_KEY; + @Prop() navigationToggleLabel?: string = "Toggle navigation"; + @Prop() navigationOverlayLabel?: string = "Show navigation"; @Prop() navigationLabel?: string; @Prop() showNavigationBackButton?: boolean; @Prop() sidebarCloseButtonLabel?: string = "Close sidebar"; @Prop() sidebarHeading?: string; @Prop() transitionStyle?: string = "slides"; + @State() contentScrollState = { + scrollable: false, + scrolledToTop: false, + scrolledToBottom: false, + }; @State() hasCustomAppBarBackButton: boolean; @State() hasSidebar: boolean; + @State() isDesktop: boolean; @State() mobileView: SwirlAppLayoutMobileView = "navigation"; + @State() navScrollState = { + scrollable: false, + scrolledToTop: false, + }; + @State() navExpansionState: SwirlAppLayoutNavigationExpansionState = + "expanded"; @State() sidebarActive: boolean; @State() sidebarClosing: boolean; + @State() sidebarOpening: boolean; + @State() sidebarScrollState = { + scrollable: false, + scrolledToTop: false, + }; @State() transitioningFrom: string; @State() transitioningTo: string; @Event() ctaClick: EventEmitter; @Event() mobileViewChange: EventEmitter; @Event() navigationBackButtonClick: EventEmitter; + @Event() + navigationExpansionStateChange: EventEmitter; @Event() sidebarToggle: EventEmitter; + private contentEl: HTMLElement; + private desktopMediaQuery: MediaQueryList = getDesktopMediaQuery(); + private headerEl: HTMLElement; private mutationObserver: MutationObserver; + private navEl: HTMLElement; private sidebarClosingTimeout: NodeJS.Timeout; + private sidebarOpeningTimeout: NodeJS.Timeout; + private sidebarEl: HTMLElement; private transitionTimeout: NodeJS.Timeout; componentWillLoad() { @@ -86,10 +130,50 @@ export class SwirlAppLayout { }); } + componentDidLoad() { + this.desktopMediaQuery.onchange = this.desktopMediaQueryHandler; + + queueMicrotask(() => { + this.isDesktop = this.desktopMediaQuery.matches; + + this.restoreNavExpansionState(); + this.updateContentScrollState(); + this.updateSidebarScrollState(); + this.updateNavScrollState(); + }); + } + disconnectedCallback() { + this.desktopMediaQuery.removeEventListener?.( + "change", + this.desktopMediaQueryHandler + ); + this.mutationObserver?.disconnect(); } + @Listen("click", { target: "document" }) + onDocumentClick(event: MouseEvent) { + if (!this.collapsibleNavigation || this.navExpansionState !== "overlayed") { + return; + } + + const clickedInsideOfOverlayedNav = + event.composedPath().includes(this.navEl) || + event.composedPath().includes(this.headerEl); + + if (!clickedInsideOfOverlayedNav) { + this.setCollapsibleNavigationState("collapsed"); + } + } + + @Listen("keydown") + onKeyDown(event: KeyboardEvent) { + if (event.key === "Escape" && this.navExpansionState === "overlayed") { + this.setCollapsibleNavigationState("collapsed"); + } + } + @Watch("mobileView") watchMobileView() { this.checkMobileView(); @@ -104,10 +188,21 @@ export class SwirlAppLayout { return; } - this.sidebarActive = true; - this.changeMobileView("sidebar"); + if (Boolean(this.sidebarOpeningTimeout)) { + clearTimeout(this.sidebarOpeningTimeout); + } + + this.sidebarOpening = true; + + const delay = isMobileViewport() || prefersReducedMotion() ? 0 : 300; + + this.sidebarOpeningTimeout = setTimeout(() => { + this.sidebarActive = true; + this.sidebarOpening = false; - this.sidebarToggle.emit(true); + this.changeMobileView("sidebar"); + this.sidebarToggle.emit(true); + }, delay); } /** @@ -152,6 +247,35 @@ export class SwirlAppLayout { } } + /** + * Get state of the collapsible navigation + */ + @Method() + async getCollapsibleNavigationState() { + return this.navExpansionState; + } + + /** + * Set state of the collapsible navigation + */ + @Method() + async setCollapsibleNavigationState( + state: SwirlAppLayoutNavigationExpansionState + ) { + if (!this.collapsibleNavigation) { + return; + } + + this.navExpansionState = state; + + this.navigationExpansionStateChange.emit(this.navExpansionState); + + localStorage.setItem( + this.navigationExpansionStateStorageKey, + this.navExpansionState + ); + } + /** * Change the currently displayed view on mobile viewports * @param mobileView @@ -203,6 +327,10 @@ export class SwirlAppLayout { }, delay); } + private desktopMediaQueryHandler = (event: MediaQueryListEvent) => { + this.isDesktop = event.matches; + }; + private checkMobileView() { if ( (this.mobileView === "navigation" && !this.hasNavigation) || @@ -255,6 +383,96 @@ export class SwirlAppLayout { this.hideSidebar(); }; + private updateContentScrollState() { + const newContentScrollState = { + scrollable: this.contentEl.scrollHeight > this.contentEl.clientHeight, + scrolledToTop: this.contentEl.scrollTop === 0, + scrolledToBottom: + Math.round(this.contentEl.scrollTop + this.contentEl.clientHeight) >= + this.contentEl.scrollHeight, + }; + + if ( + Object.keys(newContentScrollState).some( + (key) => newContentScrollState[key] !== this.contentScrollState[key] + ) + ) { + this.contentScrollState = newContentScrollState; + } + } + + private onContentScroll = debounce(() => { + this.updateContentScrollState(); + }, 16); + + private updateNavScrollState() { + const newNavScrollState = { + scrollable: this.navEl.scrollHeight > this.navEl.clientHeight, + scrolledToTop: this.navEl.scrollTop === 0, + }; + + if ( + Object.keys(newNavScrollState).some( + (key) => newNavScrollState[key] !== this.navScrollState[key] + ) + ) { + this.navScrollState = newNavScrollState; + } + } + + private onNavScroll = debounce(() => { + this.updateNavScrollState(); + }, 16); + + private updateSidebarScrollState() { + const newSidebarScrollState = { + scrollable: this.sidebarEl.scrollHeight > this.sidebarEl.clientHeight, + scrolledToTop: this.sidebarEl.scrollTop === 0, + }; + + if ( + Object.keys(newSidebarScrollState).some( + (key) => newSidebarScrollState[key] !== this.sidebarScrollState[key] + ) + ) { + this.sidebarScrollState = newSidebarScrollState; + } + } + + private onSidebarScroll = debounce(() => { + this.updateSidebarScrollState(); + }, 16); + + private toggleNavigation = () => { + if (!this.collapsibleNavigation) { + return; + } + + const newNavExpansionState = + this.navExpansionState === "expanded" ? "collapsed" : "expanded"; + + this.setCollapsibleNavigationState(newNavExpansionState); + }; + + private overlayNavigation = (event: MouseEvent) => { + event.stopPropagation(); + this.setCollapsibleNavigationState("overlayed"); + }; + + private restoreNavExpansionState() { + if (!this.collapsibleNavigation) { + return; + } + + const restoredNavExpansionState = localStorage.getItem( + this.navigationExpansionStateStorageKey + ) as SwirlAppLayoutNavigationExpansionState | undefined; + + if (Boolean(restoredNavExpansionState)) { + this.setCollapsibleNavigationState(restoredNavExpansionState); + } + } + render() { const showBackToNavigationButton = (this.mobileView === "body" || this.transitioningTo) && @@ -279,13 +497,25 @@ export class SwirlAppLayout { Boolean(this.el.querySelector('[slot="floating-action-button"]')) || Boolean(this.ctaLabel); + const navigationActive = + this.hasNavigation && + (!this.collapsibleNavigation || + this.navExpansionState !== "collapsed" || + !this.isDesktop); + const className = classnames( "app-layout", `app-layout--mobile-view-${this.mobileView}`, + `app-layout--nav-${this.isDesktop ? this.navExpansionState : "expanded"}`, `app-layout--transitioning-from-${this.transitioningFrom}`, `app-layout--transitioning-to-${this.transitioningTo}`, `app-layout--transition-style-${this.transitionStyle}`, { + "app-layout--content-scrollable": this.contentScrollState.scrollable, + "app-layout--content-scrolled-to-top": + this.contentScrollState.scrolledToTop, + "app-layout--content-scrolled-to-bottom": + this.contentScrollState.scrolledToBottom, "app-layout--has-app-bar-mobile-menu-button": hasAppBarMobileMenuButton, "app-layout--has-app-bar-controls": hasAppBarControls, "app-layout--has-bottom-bar": hasBottomBar, @@ -296,9 +526,17 @@ export class SwirlAppLayout { "app-layout--has-navigation": this.hasNavigation, "app-layout--has-sidebar": this.hasSidebar, "app-layout--hide-app-bar": this.hideAppBar, + "app-layout--nav-collapsible": + this.collapsibleNavigation && this.isDesktop, + "app-layout--nav-scrollable": this.navScrollState.scrollable, + "app-layout--nav-scrolled-to-top": this.navScrollState.scrolledToTop, "app-layout--sidebar-active": this.mobileView === "sidebar" || this.sidebarActive, "app-layout--sidebar-closing": this.sidebarClosing, + "app-layout--sidebar-opening": this.sidebarOpening, + "app-layout--sidebar-scrollable": this.sidebarScrollState.scrollable, + "app-layout--sidebar-scrolled-to-top": + this.sidebarScrollState.scrolledToTop, } ); @@ -306,10 +544,27 @@ export class SwirlAppLayout {
-
+
(this.headerEl = el)} + > + {this.collapsibleNavigation && ( + + " + : "" + } + label={this.navigationToggleLabel} + onClick={this.toggleNavigation} + > + + )} {this.showNavigationBackButton && ( - {this.hasNavigation && ( + {navigationActive && ( @@ -336,6 +591,14 @@ export class SwirlAppLayout { @@ -359,6 +622,17 @@ export class SwirlAppLayout { > )} + {this.collapsibleNavigation && + this.navExpansionState !== "expanded" && ( + + + + )} @@ -373,7 +647,11 @@ export class SwirlAppLayout {
-
+
(this.contentEl = el)} + >
@@ -400,7 +678,11 @@ export class SwirlAppLayout { text={this.sidebarHeading} >
-
+
(this.sidebarEl = el)} + >
diff --git a/packages/swirl-components/src/components/swirl-avatar-group/swirl-avatar-group.tsx b/packages/swirl-components/src/components/swirl-avatar-group/swirl-avatar-group.tsx index 1476a273c..0842ff6ff 100644 --- a/packages/swirl-components/src/components/swirl-avatar-group/swirl-avatar-group.tsx +++ b/packages/swirl-components/src/components/swirl-avatar-group/swirl-avatar-group.tsx @@ -24,8 +24,11 @@ export class SwirlAvatarGroup { } const badge = this.badgeEl.querySelector("swirl-badge"); + const badgeSize = badge?.getAttribute("size"); - badge?.setAttribute("size", "s"); + if (!Boolean(badgeSize)) { + badge?.setAttribute("size", "s"); + } } render() { diff --git a/packages/swirl-components/src/components/swirl-box/swirl-box.css b/packages/swirl-components/src/components/swirl-box/swirl-box.css index ac3f15298..6ae29029a 100644 --- a/packages/swirl-components/src/components/swirl-box/swirl-box.css +++ b/packages/swirl-components/src/components/swirl-box/swirl-box.css @@ -6,24 +6,52 @@ border: var(--s-border-width-default) solid var(--s-border-default); } + &(.box--border-color-default) { + border-color: var(--s-border-default); + } + + &(.box--border-color-strong) { + border-color: var(--s-border-strong); + } + &(.box--bordered-block-end) { - border-block-end: var(--s-border-width-default) solid - var(--s-border-default); + border-block-end-width: var(--s-border-width-default); + border-block-end-style: solid; } &(.box--bordered-block-start) { - border-block-start: var(--s-border-width-default) solid - var(--s-border-default); + border-block-start-width: var(--s-border-width-default); + border-block-start-style: solid; } &(.box--bordered-inline-end) { - border-inline-end: var(--s-border-width-default) solid - var(--s-border-default); + border-inline-end-width: var(--s-border-width-default); + border-inline-end-style: solid; } &(.box--bordered-inline-start) { - border-inline-start: var(--s-border-width-default) solid - var(--s-border-default); + border-inline-start-width: var(--s-border-width-default); + border-inline-start-style: solid; + } + + &(.box--bordered-block-start-when-scrolled.box--scrollable) { + border-block-start-width: var(--s-border-width-default); + border-block-start-style: solid; + border-block-start-color: transparent; + } + + &(.box--bordered-block-start-when-scrolled.box--scrollable:not(.box--scrolled-to-top)) { + border-block-start-color: var(--s-border-default); + } + + &(.box--bordered-block-end-when-scrolled.box--scrollable) { + border-block-end-width: var(--s-border-width-default); + border-block-end-style: solid; + border-block-end-color: transparent; + } + + &(.box--bordered-block-end-when-scrolled.box--scrollable:not(.box--scrolled-to-bottom)) { + border-block-end-color: var(--s-border-default); } &(.box--cover) { diff --git a/packages/swirl-components/src/components/swirl-box/swirl-box.spec.tsx b/packages/swirl-components/src/components/swirl-box/swirl-box.spec.tsx index bfcd64011..29f6678fd 100644 --- a/packages/swirl-components/src/components/swirl-box/swirl-box.spec.tsx +++ b/packages/swirl-components/src/components/swirl-box/swirl-box.spec.tsx @@ -10,7 +10,7 @@ describe("swirl-box", () => { }); expect(page.root).toEqualHtml(` - + @@ -26,7 +26,7 @@ describe("swirl-box", () => { }); expect(page.root).toEqualHtml(` - +
@@ -43,7 +43,7 @@ describe("swirl-box", () => { }); expect(page.root).toEqualHtml(` - + diff --git a/packages/swirl-components/src/components/swirl-box/swirl-box.tsx b/packages/swirl-components/src/components/swirl-box/swirl-box.tsx index 31677eb8d..b6c943dd4 100644 --- a/packages/swirl-components/src/components/swirl-box/swirl-box.tsx +++ b/packages/swirl-components/src/components/swirl-box/swirl-box.tsx @@ -1,6 +1,8 @@ -import { Component, h, Host, Prop } from "@stencil/core"; +import { Component, Element, h, Host, Prop, State } from "@stencil/core"; import classnames from "classnames"; +export type SwirlBoxBorderColor = "default" | "strong"; + export type SwirlBoxOverflow = | "visible" | "hidden" @@ -35,9 +37,14 @@ export type SwirlBoxPosition = tag: "swirl-box", }) export class SwirlBox { + @Element() el: HTMLElement; + + @Prop() borderColor?: SwirlBoxBorderColor = "default"; @Prop() bordered?: boolean; @Prop() borderedBlockEnd?: boolean; + @Prop() borderedBlockEndWhenScrolled?: boolean; @Prop() borderedBlockStart?: boolean; + @Prop() borderedBlockStartWhenScrolled?: boolean; @Prop() borderedInlineEnd?: boolean; @Prop() borderedInlineStart?: boolean; @Prop() bottom?: string; @@ -65,6 +72,40 @@ export class SwirlBox { @Prop() width?: string; @Prop() zIndex?: string; + @State() scrollState = { + scrollable: false, + scrolledToBottom: false, + scrolledToTop: false, + }; + + componentDidLoad() { + queueMicrotask(() => { + this.updateScrollState(); + }); + } + + private onScroll = () => { + this.updateScrollState(); + }; + + private updateScrollState() { + const newScrollState = { + scrollable: this.el.scrollHeight > this.el.clientHeight, + scrolledToTop: this.el.scrollTop === 0, + scrolledToBottom: + Math.round(this.el.scrollTop + this.el.clientHeight) >= + this.el.scrollHeight, + }; + + if ( + Object.keys(newScrollState).some( + (key) => newScrollState[key] !== this.scrollState[key] + ) + ) { + this.scrollState = newScrollState; + } + } + render() { const styles = { alignItems: this.centerBlock ? "center" : undefined, @@ -103,17 +144,28 @@ export class SwirlBox { zIndex: this.zIndex, }; - const className = classnames("box", { - "box--bordered": this.bordered, - "box--bordered-block-end": this.borderedBlockEnd, - "box--bordered-block-start": this.borderedBlockStart, - "box--bordered-inline-end": this.borderedInlineEnd, - "box--bordered-inline-start": this.borderedInlineStart, - "box--cover": this.cover, - }); + const className = classnames( + "box", + `box--border-color-${this.borderColor}`, + { + "box--bordered": this.bordered, + "box--bordered-block-end": this.borderedBlockEnd, + "box--bordered-block-end-when-scrolled": + this.borderedBlockEndWhenScrolled, + "box--bordered-block-start": this.borderedBlockStart, + "box--bordered-block-start-when-scrolled": + this.borderedBlockStartWhenScrolled, + "box--bordered-inline-end": this.borderedInlineEnd, + "box--bordered-inline-start": this.borderedInlineStart, + "box--cover": this.cover, + "box--scrollable": this.scrollState.scrollable, + "box--scrolled-to-top": this.scrollState.scrolledToTop, + "box--scrolled-to-bottom": this.scrollState.scrolledToBottom, + } + ); return ( - + ); diff --git a/packages/swirl-components/src/components/swirl-button/swirl-button.css b/packages/swirl-components/src/components/swirl-button/swirl-button.css index a008b2c99..423097d28 100644 --- a/packages/swirl-components/src/components/swirl-button/swirl-button.css +++ b/packages/swirl-components/src/components/swirl-button/swirl-button.css @@ -40,7 +40,8 @@ background-color: var(--swirl-ghost-button-background-pressed); } - &:disabled { + &:disabled, + &.button--disabled { color: var(--s-text-disabled); background-color: var(--swirl-ghost-button-background-disabled); cursor: default; @@ -80,7 +81,7 @@ } .button--variant-ghost { - &.button--intent-strong:not(:disabled) { + &.button--intent-strong:not(:disabled):not(.button--disabled) { color: var(--s-text-default); & .button__icon { @@ -88,7 +89,7 @@ } } - &.button--intent-primary:not(:disabled) { + &.button--intent-primary:not(:disabled):not(.button--disabled) { color: var(--s-text-highlight); & .button__icon { @@ -96,7 +97,7 @@ } } - &.button--intent-critical:not(:disabled) { + &.button--intent-critical:not(:disabled):not(.button--disabled) { color: var(--s-text-critical); & .button__icon { @@ -134,11 +135,12 @@ background-color: var(--swirl-flat-button-background-pressed); } - &:disabled { + &:disabled, + &.button--disabled { background-color: var(--swirl-flat-button-background-disabled); } - &.button--intent-primary:not(:disabled) { + &.button--intent-primary:not(:disabled):not(.button--disabled) { color: var(--s-text-on-action-primary); background-color: var(--s-action-primary-default); @@ -155,7 +157,7 @@ } } - &.button--intent-critical:not(:disabled) { + &.button--intent-critical:not(:disabled):not(.button--disabled) { color: var(--s-text-on-status); background-color: var(--s-action-critical-default); @@ -175,18 +177,27 @@ & .button__icon { color: var(--s-icon-strong); } + + &.button--size-l { + padding: var(--s-space-12) var(--s-space-20); + + &.button--icon-only { + padding: var(--s-space-12); + } + } } .button--variant-outline { color: var(--s-text-default); box-shadow: inset 0 0 0 var(--s-border-width-default) var(--s-border-strong); - &:disabled { + &:disabled, + &.button--disabled { box-shadow: inset 0 0 0 var(--s-border-width-default) var(--s-border-default); } - &.button--intent-critical:not(:disabled) { + &.button--intent-critical:not(:disabled):not(.button--disabled) { color: var(--s-text-critical); box-shadow: inset 0 0 0 var(--s-border-width-default) var(--s-border-critical); @@ -225,7 +236,7 @@ color: var(--swirl-plain-button-text-color-default); background-color: transparent; - &:hover:not(:disabled) { + &:hover:not(:disabled):not(.button--disabled) { color: var(--swirl-plain-button-text-color-hovered); background-color: transparent; text-decoration: underline; @@ -236,7 +247,7 @@ } } - &:active:not(:disabled) { + &:active:not(:disabled):not(.button--disabled) { color: var(--swirl-plain-button-text-color-pressed); background-color: transparent; @@ -245,7 +256,8 @@ } } - &:disabled { + &:disabled, + &.button--disabled { color: var(--swirl-plain-button-text-color-disabled); background-color: transparent; @@ -258,7 +270,7 @@ padding: 0; } - &.button--intent-strong:not(:disabled) { + &.button--intent-strong:not(:disabled):not(.button--disabled) { color: var(--s-text-default); & .button__icon { @@ -285,7 +297,8 @@ } } - &:disabled { + &:disabled, + &.button--disabled { color: var(--s-interactive-primary-disabled); & .button__icon { @@ -302,6 +315,14 @@ margin-left: 0; color: var(--swirl-plain-button-text-color-default); } + + &.button--size-l { + padding: var(--s-space-12) var(--s-space-20); + + &.button--icon-only { + padding: var(--s-space-12); + } + } } .button--variant-on-image { @@ -316,7 +337,8 @@ background: rgba(0, 0, 0, 0.4); } - &:disabled { + &:disabled, + &.button--disabled { color: var(--s-text-on-image); background: rgba(0, 0, 0, 0.3); @@ -328,6 +350,14 @@ & .button__icon { color: var(--s-icon-on-image); } + + &.button--size-l { + padding: var(--s-space-12) var(--s-space-20); + + &.button--icon-only { + padding: var(--s-space-12); + } + } } .button--variant-floating { @@ -355,17 +385,18 @@ color: var(--s-text-on-action-primary); background-color: var(--s-action-primary-default); - &:hover:not(:disabled) { + &:hover:not(:disabled):not(.button--disabled) { color: var(--s-text-on-action-primary); background-color: var(--s-action-primary-hovered); } - &:active:not(:disabled) { + &:active:not(:disabled):not(.button--disabled) { color: var(--s-text-on-action-primary); background-color: var(--s-action-primary-pressed); } - &:disabled { + &:disabled, + &.button--disabled { color: var(--s-text-on-action-primary); & .button__icon { diff --git a/packages/swirl-components/src/components/swirl-button/swirl-button.spec.tsx b/packages/swirl-components/src/components/swirl-button/swirl-button.spec.tsx index 62b298ffd..b33d0eda0 100644 --- a/packages/swirl-components/src/components/swirl-button/swirl-button.spec.tsx +++ b/packages/swirl-components/src/components/swirl-button/swirl-button.spec.tsx @@ -20,7 +20,7 @@ describe("swirl-button", () => { expect(page.root).toEqualHtml(` -
)} diff --git a/packages/swirl-components/src/components/swirl-file-viewer/viewers/swirl-file-viewer-fallback/swirl-file-viewer-fallback.css b/packages/swirl-components/src/components/swirl-file-viewer/viewers/swirl-file-viewer-fallback/swirl-file-viewer-fallback.css new file mode 100644 index 000000000..f28d40df3 --- /dev/null +++ b/packages/swirl-components/src/components/swirl-file-viewer/viewers/swirl-file-viewer-fallback/swirl-file-viewer-fallback.css @@ -0,0 +1,17 @@ +:host { + display: inline-flex; + width: 100%; + height: 100%; + justify-content: center; + align-items: center; + pointer-events: auto; + + & * { + box-sizing: border-box; + } +} + +.file-viewer-fallback__icon::part(icon) { + height: 2.875rem; + width: 2.875rem; +} diff --git a/packages/swirl-components/src/components/swirl-file-viewer/viewers/swirl-file-viewer-fallback/swirl-file-viewer-fallback.tsx b/packages/swirl-components/src/components/swirl-file-viewer/viewers/swirl-file-viewer-fallback/swirl-file-viewer-fallback.tsx new file mode 100644 index 000000000..d6ea05ed5 --- /dev/null +++ b/packages/swirl-components/src/components/swirl-file-viewer/viewers/swirl-file-viewer-fallback/swirl-file-viewer-fallback.tsx @@ -0,0 +1,68 @@ +import { + Component, + Element, + Event, + EventEmitter, + h, + Host, + Prop, +} from "@stencil/core"; +import { saveAs } from "file-saver"; + +@Component({ + shadow: true, + styleUrl: "swirl-file-viewer-fallback.css", + tag: "swirl-file-viewer-fallback", +}) +export class SwirlFileViewerFallback { + @Element() el: HTMLElement; + + @Prop() disableDownload?: boolean; + @Prop() downloadButtonLabel?: string = "Download"; + @Prop() fileName?: string; + @Prop() file!: string; + + @Event() activate: EventEmitter; + + componentDidLoad() { + this.activate.emit(this.el); + } + + download = async (event: Event) => { + event.preventDefault(); + + const fileName = this.fileName || this.file.split("/").pop(); + const file = await fetch(this.file); + + saveAs(await file.blob(), fileName); + }; + + render() { + return ( + + + + {this.fileName && ( + + {this.fileName} + + )} + {!this.disableDownload && ( + + )} + + + ); + } +} diff --git a/packages/swirl-components/src/components/swirl-file-viewer/viewers/swirl-file-viewer-pdf/swirl-file-viewer-pdf.tsx b/packages/swirl-components/src/components/swirl-file-viewer/viewers/swirl-file-viewer-pdf/swirl-file-viewer-pdf.tsx index 944248c7d..1fbf1fc9a 100644 --- a/packages/swirl-components/src/components/swirl-file-viewer/viewers/swirl-file-viewer-pdf/swirl-file-viewer-pdf.tsx +++ b/packages/swirl-components/src/components/swirl-file-viewer/viewers/swirl-file-viewer-pdf/swirl-file-viewer-pdf.tsx @@ -51,11 +51,11 @@ export class SwirlFileViewerPdf { @Prop() workerSrc?: string = "/pdfjs/pdf.worker.min.js"; @Prop() zoom?: SwirlFileViewerPdfZoom = 1; + @State() currentPage: number = null; @State() doc: PDFDocumentProxy; @State() error: boolean; @State() loading: boolean = true; @State() renderedPages: number[] = []; - @State() scrolledDown: boolean = false; @State() singlePageModePage: number = 1; @State() visiblePages: number[] = []; @@ -80,7 +80,6 @@ export class SwirlFileViewerPdf { componentDidRender() { this.updateVisiblePages(); - this.determineScrollStatus(); } disconnectedCallback() { @@ -92,16 +91,12 @@ export class SwirlFileViewerPdf { this.visiblePages = []; this.renderedPages = []; await this.updateVisiblePages(); - - this.determineScrollStatus(); } @Watch("file") async watchProps() { await this.getPages(); await this.updateVisiblePages(); - - this.determineScrollStatus(); } @Watch("viewMode") @@ -110,8 +105,6 @@ export class SwirlFileViewerPdf { this.visiblePages = []; this.renderedPages = []; await this.updateVisiblePages(); - - this.determineScrollStatus(); }); } @@ -123,8 +116,6 @@ export class SwirlFileViewerPdf { this.visiblePages = []; this.renderedPages = []; await this.updateVisiblePages(); - - this.determineScrollStatus(); }); } @@ -337,28 +328,45 @@ export class SwirlFileViewerPdf { ); let visiblePages: number[] = []; + let currentPage = null; if (this.singlePageMode) { visiblePages = [this.singlePageModePage]; + currentPage = this.singlePageModePage; + } else if (forPrint) { + visiblePages = pages.map((page) => +page.dataset.pageNumber); } else { - visiblePages = forPrint - ? pages.map((page) => +page.dataset.pageNumber) - : pages - .filter((page) => getVisibleHeight(page, this.scrollContainer) > 0) - .map((page) => +page.dataset.pageNumber); - - const visiblePagesDidNotChanged = - this.visiblePages.length === visiblePages.length && - this.visiblePages.every((pageNumber) => - visiblePages.includes(pageNumber) + const visiblePagesVisibleHeight = pages + .map((page) => ({ + pageNumber: +page.dataset.pageNumber, + visibleHeight: getVisibleHeight(page, this.scrollContainer), + })) + .filter(({ visibleHeight }) => visibleHeight > 0); + + visiblePages = visiblePagesVisibleHeight.map((page) => page.pageNumber); + + if (visiblePagesVisibleHeight.length > 0) { + const firstMostVisiblePage = visiblePagesVisibleHeight.reduce( + (previous, current) => + current.visibleHeight > previous.visibleHeight ? current : previous ); - if (visiblePagesDidNotChanged) { - return; + currentPage = firstMostVisiblePage.pageNumber; } } + const visiblePagesDidNotChanged = + this.visiblePages.length === visiblePages.length && + this.visiblePages.every((pageNumber) => + visiblePages.includes(pageNumber) + ); + + if (visiblePagesDidNotChanged && this.currentPage === currentPage) { + return; + } + this.visiblePages = visiblePages; + this.currentPage = currentPage; await this.renderVisiblePages(forPrint); @@ -466,17 +474,6 @@ export class SwirlFileViewerPdf { this.recentScrollPosition.x * this.scrollContainer?.scrollWidth; } - private determineScrollStatus = () => { - const scrolledDown = - Math.ceil( - this.scrollContainer?.scrollTop + this.scrollContainer?.offsetHeight - ) >= this.scrollContainer?.scrollHeight; - - if (scrolledDown !== this.scrolledDown) { - this.scrolledDown = scrolledDown; - } - }; - private storeRecentScrollPosition = () => { this.recentScrollPosition = { x: @@ -496,7 +493,6 @@ export class SwirlFileViewerPdf { private onScroll = debounce(() => { this.updateVisiblePages(); - this.determineScrollStatus(); this.storeRecentScrollPosition(); }, 60); @@ -504,11 +500,6 @@ export class SwirlFileViewerPdf { const showPagination = !this.error && !this.loading && this.visiblePages.length > 0; - const currentPage = - this.scrolledDown && !this.singlePageMode - ? this.pages.length - 1 - : this.visiblePages[0]; - const showSpinner = this.loading; const className = classnames( @@ -578,7 +569,8 @@ export class SwirlFileViewerPdf { id="pagination" part="file-viewer-pdf__pagination" > - {currentPage} / {this.doc.numPages} + {this.currentPage} /{" "} + {this.doc.numPages} )} {showSpinner && ( diff --git a/packages/swirl-components/src/components/swirl-form-control/swirl-form-control.css b/packages/swirl-components/src/components/swirl-form-control/swirl-form-control.css index 351567e1c..7b4a804d2 100644 --- a/packages/swirl-components/src/components/swirl-form-control/swirl-form-control.css +++ b/packages/swirl-components/src/components/swirl-form-control/swirl-form-control.css @@ -42,6 +42,26 @@ line-height: var(--s-line-height-sm); } } + + .form-control--font-size-sm { + & .form-control__label-text { + font-size: var(--s-font-size-sm); + } + + & .form-control__description { + font-size: var(--s-font-size-sm); + } + } + + &.form-control--font-size-base { + & .form-control__label-text { + font-size: var(--s-font-size-base); + + @media (--from-desktop-without-touch) { + font-size: var(--s-font-size-base); + } + } + } } &:not(.form-control--has-value).form-control--is-select { @@ -62,6 +82,16 @@ line-height: var(--s-line-height-sm); } } + + &.form-control--font-size-base { + & .form-control__label-text { + font-size: var(--s-font-size-base); + + @media (--from-desktop-without-touch) { + font-size: var(--s-font-size-base); + } + } + } } @media (--from-desktop-without-touch) { @@ -123,6 +153,16 @@ max-width: calc(100% - 6rem); } + &.form-control--font-size-base { + & .form-control__label-text { + font-size: var(--s-font-size-base); + + @media (--from-desktop-without-touch) { + font-size: var(--s-font-size-base); + } + } + } + @media (--from-desktop-without-touch) { --swirl-text-input-placeholder-size: var(--s-font-size-sm); } @@ -135,6 +175,7 @@ & .form-control__tooltip { display: none; + color: var(--s-icon-default); @media (--from-desktop-without-touch) { display: flex; margin-left: var(--s-space-4); @@ -275,6 +316,12 @@ gap: var(--s-space-2); } +.form-control__secondary-label { + font-weight: var(--s-font-weight-normal); + color: var(--s-text-subdued); + margin-left: var(--s-space-4); +} + .form-control__label-text { position: absolute; right: var(--s-space-16); diff --git a/packages/swirl-components/src/components/swirl-form-control/swirl-form-control.spec.tsx b/packages/swirl-components/src/components/swirl-form-control/swirl-form-control.spec.tsx index 2b9e6c786..a2b894f94 100644 --- a/packages/swirl-components/src/components/swirl-form-control/swirl-form-control.spec.tsx +++ b/packages/swirl-components/src/components/swirl-form-control/swirl-form-control.spec.tsx @@ -20,7 +20,7 @@ describe("swirl-form-control", () => { expect(page.root).toEqualHtml(` -
+
- {this.loading !== "intersecting" || this.inViewport ? ( + {this.loading !== "intersecting" || + this.inViewport || + this.gifPaused ? ( {this.alt} (this.img = el)} - src={this.src} + src={this.computedSrc} /> ) : (
)} + + {this.showGifControls && ( + + +
+ +
+
+ )} {this.loaded && !this.error && this.icon && diff --git a/packages/swirl-components/src/components/swirl-image-grid/swirl-image-grid.css b/packages/swirl-components/src/components/swirl-image-grid/swirl-image-grid.css index 12f164551..9efc7f59e 100644 --- a/packages/swirl-components/src/components/swirl-image-grid/swirl-image-grid.css +++ b/packages/swirl-components/src/components/swirl-image-grid/swirl-image-grid.css @@ -25,9 +25,10 @@ } .image-grid--item-count-3 { - grid-template-columns: calc(100% / 3 * 2 - var(--space-2) / 2) calc( + grid-template-columns: calc(100% / 3 * 2) calc( 100% / 3 - var(--s-space-2) / 2 ); + grid-template-rows: calc(50% - var(--s-space-2) / 2); & ::slotted(*:nth-child(1)) { grid-column-start: 1; diff --git a/packages/swirl-components/src/components/swirl-image-grid/swirl-image-grid.stories.ts b/packages/swirl-components/src/components/swirl-image-grid/swirl-image-grid.stories.ts index 02b37e4c1..4278b593c 100644 --- a/packages/swirl-components/src/components/swirl-image-grid/swirl-image-grid.stories.ts +++ b/packages/swirl-components/src/components/swirl-image-grid/swirl-image-grid.stories.ts @@ -25,8 +25,8 @@ export const SwirlImageGrid = Template.bind({}); SwirlImageGrid.args = { aspectRatio: "16 / 9", slot: ` - - - + + + `, }; diff --git a/packages/swirl-components/src/components/swirl-image-grid/swirl-image-grid.tsx b/packages/swirl-components/src/components/swirl-image-grid/swirl-image-grid.tsx index 54d504b4d..85d42b292 100644 --- a/packages/swirl-components/src/components/swirl-image-grid/swirl-image-grid.tsx +++ b/packages/swirl-components/src/components/swirl-image-grid/swirl-image-grid.tsx @@ -28,19 +28,36 @@ export class SwirlImageGrid { } }; + caculateAspectRatio = () => { + switch (this.items.length) { + case 1: + return this.aspectRatio; + case 2: + return "2/1"; + case 3: + return "3/2"; + case 4: + return "1"; + default: + return "1"; + } + }; + render() { const className = classnames( "image-grid", `image-grid--item-count-${Math.min(4, this.items.length)}` ); + const aspectRatio = this.caculateAspectRatio(); + return (
diff --git a/packages/swirl-components/src/components/swirl-lightbox/swirl-lightbox.spec.tsx b/packages/swirl-components/src/components/swirl-lightbox/swirl-lightbox.spec.tsx index e28ad8b5d..e34e5065e 100644 --- a/packages/swirl-components/src/components/swirl-lightbox/swirl-lightbox.spec.tsx +++ b/packages/swirl-components/src/components/swirl-lightbox/swirl-lightbox.spec.tsx @@ -244,6 +244,39 @@ describe("swirl-lightbox", () => { expect(page.rootInstance.activeSlideIndex).toBe(0); }); + it("doesn't have the drag behavior when there's only one slide", async () => { + const page = await newSpecPage({ + components: [SwirlLightbox], + html: ` + + + + `, + }); + + // wait for animation + await new Promise((resolve) => setTimeout(resolve, 300)); + + const slides = page.rootInstance.slides; + + page.root.shadowRoot + .querySelector("#lightbox") + .dispatchEvent( + new Event("touchStart", { touches: [{ clientX: 0 } as Touch] } as any) + ); + + page.root.shadowRoot + .querySelector("#lightbox") + .dispatchEvent( + new Event("touchMove", { touches: [{ clientX: -100 } as Touch] } as any) + ); + + // wait for animation + await new Promise((resolve) => setTimeout(resolve, 300)); + + expect(slides[0].style.transform).toBe("translate3d(-0%, 0, 0)"); + }); + it("fires slide change events", async () => { const page = await newSpecPage({ components: [SwirlLightbox], diff --git a/packages/swirl-components/src/components/swirl-lightbox/swirl-lightbox.tsx b/packages/swirl-components/src/components/swirl-lightbox/swirl-lightbox.tsx index 83c592cdb..376f1812c 100644 --- a/packages/swirl-components/src/components/swirl-lightbox/swirl-lightbox.tsx +++ b/packages/swirl-components/src/components/swirl-lightbox/swirl-lightbox.tsx @@ -43,6 +43,7 @@ export class SwirlLightbox { @State() isOpen = false; @State() slides: HTMLSwirlFileViewerElement[]; + private containerObserver: MutationObserver; private dragging: boolean = false; private dragStartPosition: number; private dragDelta: number; @@ -66,6 +67,7 @@ export class SwirlLightbox { disconnectedCallback() { this.focusTrap?.deactivate(); this.unlockBodyScroll(); + this.containerObserver?.disconnect(); } @Watch("activeSlideIndex") @@ -100,6 +102,31 @@ export class SwirlLightbox { setTimeout(() => { this.focusTrap = focusTrap.createFocusTrap(this.modalEl, { allowOutsideClick: true, + checkCanFocusTrap: (containers) => { + this.containerObserver?.disconnect(); + + return new Promise((resolve) => { + const container = containers[0]; + + if (container.tabIndex !== -1) { + resolve(); + return; + } + + // wait for container to become focusable + this.containerObserver = new MutationObserver(() => { + if (container.tabIndex !== -1) { + this.containerObserver.disconnect(); + resolve(); + } + }); + + this.containerObserver.observe(container, { + attributes: true, + attributeFilter: ["tabindex"], + }); + }); + }, tabbableOptions: { getShadowRoot: (node) => { return node.shadowRoot; @@ -269,6 +296,10 @@ export class SwirlLightbox { } private onPointerDown = (event: MouseEvent | TouchEvent) => { + if (this.slides.length <= 1) { + return; + } + this.dragging = true; this.dragStartPosition = @@ -280,6 +311,10 @@ export class SwirlLightbox { }; private onPointerMove = async (event: MouseEvent | TouchEvent) => { + if (!this.dragging) { + return; + } + const isMultiTouch = !(event instanceof MouseEvent) && event.touches.length > 1; @@ -295,28 +330,30 @@ export class SwirlLightbox { return; } - if (this.dragging) { - event.preventDefault(); + event.preventDefault(); - const deltaX = - event instanceof MouseEvent - ? event.clientX - this.dragStartPosition - : event.touches[0].clientX - this.dragStartPosition; + const deltaX = + event instanceof MouseEvent + ? event.clientX - this.dragStartPosition + : event.touches[0].clientX - this.dragStartPosition; - this.slides.forEach((slide) => { - const pixelOffset = - this.activeSlideIndex * slide.getBoundingClientRect().width; + this.slides.forEach((slide) => { + const pixelOffset = + this.activeSlideIndex * slide.getBoundingClientRect().width; - this.dragDelta = deltaX; + this.dragDelta = deltaX; - slide.style.transform = `translate3d(${ - (-pixelOffset + this.dragDelta) / 16 - }rem, 0, 0)`; - }); - } + slide.style.transform = `translate3d(${ + (-pixelOffset + this.dragDelta) / 16 + }rem, 0, 0)`; + }); }; private onPointerUp = () => { + if (!this.dragging) { + return; + } + this.dragging = false; this.dragStartPosition = undefined; diff --git a/packages/swirl-components/src/components/swirl-menu/swirl-menu.css b/packages/swirl-components/src/components/swirl-menu/swirl-menu.css index 0369107b9..db4de856d 100644 --- a/packages/swirl-components/src/components/swirl-menu/swirl-menu.css +++ b/packages/swirl-components/src/components/swirl-menu/swirl-menu.css @@ -50,7 +50,7 @@ } } - &:not(.menu--root) { + & :not(.menu--root) { & .menu__menu { z-index: 1; max-width: 22.5rem; diff --git a/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.css b/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.css index a32fdc1df..23184809d 100644 --- a/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.css +++ b/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.css @@ -2,7 +2,7 @@ :host { position: relative; - display: inline-flex; + display: block; width: 100%; & * { @@ -110,6 +110,16 @@ border-color: var(--s-icon-disabled); background-color: var(--s-surface-overlay-default); } + + & .option-list-item__avatar { + filter: grayscale(100%); + } +} + +.option-list-item--show-avatar { + & .option-list-item__avatar { + display: inline-flex; + } } .option-list-item__label-container { @@ -144,6 +154,13 @@ } } +.option-list-item__avatar { + display: none; + width: 2.5rem; + height: 2.5rem; + flex-shrink: 0; +} + .option-list-item__icon { display: inline-flex; width: 1.5rem; diff --git a/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.spec.tsx b/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.spec.tsx index e4686f1d3..78bd8d6a1 100644 --- a/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.spec.tsx +++ b/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.spec.tsx @@ -24,6 +24,7 @@ describe("swirl-option-list-item", () => { + Option List Item @@ -37,6 +38,23 @@ describe("swirl-option-list-item", () => { `); }); + it("renders with avatar", async () => { + const page = await newSpecPage({ + components: [SwirlOptionListItem], + html: ` + + + + `, + }); + + expect( + page.root + .querySelector(".option-list-item__avatar") + .querySelector("swirl-avatar") + ).toBeDefined(); + }); + it("can be draggable", async () => { const page = await newSpecPage({ components: [SwirlOptionListItem], diff --git a/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.stories.ts b/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.stories.ts index e5adbb57d..fa01d4ef8 100644 --- a/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.stories.ts +++ b/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.stories.ts @@ -28,6 +28,10 @@ const Template = (args) => { const element = generateStoryElement("swirl-option-list-item", args); + element.innerHTML = ` + + `; + container.append("\n ", element, "\n"); return container; @@ -36,7 +40,6 @@ const Template = (args) => { export const SwirlOptionListItem = Template.bind({}); SwirlOptionListItem.args = { - icon: ``, label: "Option List Item", value: "Value", }; diff --git a/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.tsx b/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.tsx index 730567e27..f218cf1a4 100644 --- a/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.tsx +++ b/packages/swirl-components/src/components/swirl-option-list-item/swirl-option-list-item.tsx @@ -16,6 +16,9 @@ export type SwirlOptionListItemContext = "single-select" | "multi-select"; export type SwirlOptionListItemRole = "option" | "menuitemradio"; +/** + * @slot avatar - Optional avatar displayed to the left of the label + */ @Component({ scoped: true, shadow: false, @@ -98,6 +101,9 @@ export class SwirlOptionListItem { const showCheckbox = this.context === "multi-select"; const showIcon = Boolean(this.icon) && this.context === "single-select"; + const showAvatar = + this.el.querySelector('[slot="avatar"]') && + this.context === "single-select"; const showSelectionIcon = this.selected && this.context === "single-select"; const className = classnames( @@ -108,6 +114,7 @@ export class SwirlOptionListItem { "option-list-item--draggable": this.allowDrag, "option-list-item--dragging": this.dragging, "option-list-item--selected": this.selected, + "option-list-item--show-avatar": showAvatar, } ); @@ -141,6 +148,9 @@ export class SwirlOptionListItem { ref={(el) => (this.iconEl = el)} > )} + + + {showCheckbox && ( diff --git a/packages/swirl-components/src/components/swirl-pagination/swirl-pagination.tsx b/packages/swirl-components/src/components/swirl-pagination/swirl-pagination.tsx index 166314421..fa64ee7fc 100644 --- a/packages/swirl-components/src/components/swirl-pagination/swirl-pagination.tsx +++ b/packages/swirl-components/src/components/swirl-pagination/swirl-pagination.tsx @@ -125,7 +125,9 @@ export class SwirlPagination { {this.showPageSizeSelect && (