diff --git a/.gitignore b/.gitignore index 5c1d3b074dd..a125f4c291a 100644 --- a/.gitignore +++ b/.gitignore @@ -32,3 +32,5 @@ yarn-error.log* !.yarn/sdks !.yarn/versions yarn-error.log +.cursorrules +WARP.md diff --git a/packages/eui-theme-borealis/changelogs/upcoming/9068.md b/packages/eui-theme-borealis/changelogs/upcoming/9068.md new file mode 100644 index 00000000000..33bc5022fd1 --- /dev/null +++ b/packages/eui-theme-borealis/changelogs/upcoming/9068.md @@ -0,0 +1 @@ +- Updated parameters used for `euiAnimSlightResistance` for a smoother animation diff --git a/packages/eui-theme-borealis/src/eui_theme_borealis_dark.json b/packages/eui-theme-borealis/src/eui_theme_borealis_dark.json index 1a16b4f715f..40ba0748a98 100644 --- a/packages/eui-theme-borealis/src/eui_theme_borealis_dark.json +++ b/packages/eui-theme-borealis/src/eui_theme_borealis_dark.json @@ -15,7 +15,7 @@ "euiContrastRatioGraphic": 3, "euiContrastRatioDisabled": 2, "euiAnimSlightBounce": "cubic-bezier(0.34, 1.61, 0.7, 1)", - "euiAnimSlightResistance": "cubic-bezier(0.694, 0.0482, 0.335, 1)", + "euiAnimSlightResistance": "cubic-bezier(0.32, 0.72, 0, 1)", "euiAnimSpeedExtraFast": "90ms", "euiAnimSpeedFast": "150ms", "euiAnimSpeedNormal": "250ms", diff --git a/packages/eui-theme-borealis/src/eui_theme_borealis_light.json b/packages/eui-theme-borealis/src/eui_theme_borealis_light.json index 35b8be7d98a..29ae3402725 100644 --- a/packages/eui-theme-borealis/src/eui_theme_borealis_light.json +++ b/packages/eui-theme-borealis/src/eui_theme_borealis_light.json @@ -15,7 +15,7 @@ "euiContrastRatioGraphic": 3, "euiContrastRatioDisabled": 2, "euiAnimSlightBounce": "cubic-bezier(0.34, 1.61, 0.7, 1)", - "euiAnimSlightResistance": "cubic-bezier(0.694, 0.0482, 0.335, 1)", + "euiAnimSlightResistance": "cubic-bezier(0.32, 0.72, 0, 1)", "euiAnimSpeedExtraFast": "90ms", "euiAnimSpeedFast": "150ms", "euiAnimSpeedNormal": "250ms", diff --git a/packages/eui-theme-borealis/src/variables/_animation.ts b/packages/eui-theme-borealis/src/variables/_animation.ts index 84933441db3..5a92ebe4f15 100644 --- a/packages/eui-theme-borealis/src/variables/_animation.ts +++ b/packages/eui-theme-borealis/src/variables/_animation.ts @@ -22,7 +22,7 @@ export const animation_speed: _EuiThemeAnimationSpeeds = { export const animation_ease: _EuiThemeAnimationEasings = { bounce: 'cubic-bezier(.34, 1.61, .7, 1)', - resistance: 'cubic-bezier(.694, .0482, .335, 1)', + resistance: 'cubic-bezier(.32, .72, 0, 1)', }; export const animation: _EuiThemeAnimation = { diff --git a/packages/eui-theme-common/changelogs/upcoming/9068.md b/packages/eui-theme-common/changelogs/upcoming/9068.md new file mode 100644 index 00000000000..33bc5022fd1 --- /dev/null +++ b/packages/eui-theme-common/changelogs/upcoming/9068.md @@ -0,0 +1 @@ +- Updated parameters used for `euiAnimSlightResistance` for a smoother animation diff --git a/packages/eui-theme-common/src/global_styling/variables/_animations.scss b/packages/eui-theme-common/src/global_styling/variables/_animations.scss index 93b9daf1641..85b5d0c155a 100644 --- a/packages/eui-theme-common/src/global_styling/variables/_animations.scss +++ b/packages/eui-theme-common/src/global_styling/variables/_animations.scss @@ -1,7 +1,7 @@ // Animations $euiAnimSlightBounce: cubic-bezier(.34, 1.61, .7, 1) !default; -$euiAnimSlightResistance: cubic-bezier(.694, .0482, .335, 1) !default; +$euiAnimSlightResistance: cubic-bezier(.32, .72, 0, 1) !default; $euiAnimSpeedExtraFast: 90ms !default; $euiAnimSpeedFast: 150ms !default; diff --git a/packages/eui/changelogs/upcoming/8851.md b/packages/eui/changelogs/upcoming/8851.md new file mode 100644 index 00000000000..c0e818b0cc1 --- /dev/null +++ b/packages/eui/changelogs/upcoming/8851.md @@ -0,0 +1 @@ +Adds a new `EuiFlyoutMenu` component that provides a standardized top menu bar for flyouts. diff --git a/packages/eui/changelogs/upcoming/8897.md b/packages/eui/changelogs/upcoming/8897.md new file mode 100644 index 00000000000..d7617700a36 --- /dev/null +++ b/packages/eui/changelogs/upcoming/8897.md @@ -0,0 +1 @@ +Flyout system menu bar: require tile, support custom actions diff --git a/packages/eui/changelogs/upcoming/8999.md b/packages/eui/changelogs/upcoming/8999.md new file mode 100644 index 00000000000..ad7fd45868e --- /dev/null +++ b/packages/eui/changelogs/upcoming/8999.md @@ -0,0 +1 @@ +- Added a new optional `resizable` (boolean) prop to `EuiFlyout`. Resizability can now be controlled dynamically without the need to use `EuiFlyoutResizable`. diff --git a/packages/eui/changelogs/upcoming/9003.md b/packages/eui/changelogs/upcoming/9003.md new file mode 100644 index 00000000000..614ff500158 --- /dev/null +++ b/packages/eui/changelogs/upcoming/9003.md @@ -0,0 +1,2 @@ +- Updated `EuiFlyout` with new `onActive` callback and enable stack managed history controls. +- Updated `EuiFlyoutMenu` with new prop `historyItems` and refactored props for back button. diff --git a/packages/eui/changelogs/upcoming/9056.md b/packages/eui/changelogs/upcoming/9056.md new file mode 100644 index 00000000000..8b427e7db0f --- /dev/null +++ b/packages/eui/changelogs/upcoming/9056.md @@ -0,0 +1 @@ +Added a new `hasChildBackground` boolean prop (defaults to false) to `EuiFlyout` \ No newline at end of file diff --git a/packages/eui/changelogs/upcoming/9068.md b/packages/eui/changelogs/upcoming/9068.md new file mode 100644 index 00000000000..1a28880a845 --- /dev/null +++ b/packages/eui/changelogs/upcoming/9068.md @@ -0,0 +1,7 @@ +- Added an opt-in EuiFlyout session management for creating flyout compositions and journeys effortlessly. Session management handles side-by-side flyout rendering based on parent-child grouping, simple flyout transitions with history, state sharing, and more. + - EuiFlyout session management is an optional feature that can be enabled by adding `session="start"` to EuiFlyout. Check out the [documentation](https://eui.elastic.co/docs/components/containers/flyout/session-management) to learn more. + +**Breaking changes** + +- Changed the way EuiFlyout renders overlay masks to decouple the overlay mask from the flyout itself. Now, the overlay mask is a separate portalled element. + - This change does not modify the functionality or behavior of flyout overlays but might affect some custom usages when your application relies on the specific element nesting within EuiFlyout. diff --git a/packages/eui/package.json b/packages/eui/package.json index 5a583523090..e0d6cd76d96 100644 --- a/packages/eui/package.json +++ b/packages/eui/package.json @@ -85,6 +85,7 @@ "unified": "^9.2.2", "unist-util-visit": "^2.0.3", "url-parse": "^1.5.10", + "use-sync-external-store": "^1.6.0", "uuid": "^8.3.0", "vfile": "^4.2.1" }, diff --git a/packages/eui/src/components/collapsible_nav/__snapshots__/collapsible_nav.test.tsx.snap b/packages/eui/src/components/collapsible_nav/__snapshots__/collapsible_nav.test.tsx.snap index 1bd264a3928..b3b124807f2 100644 --- a/packages/eui/src/components/collapsible_nav/__snapshots__/collapsible_nav.test.tsx.snap +++ b/packages/eui/src/components/collapsible_nav/__snapshots__/collapsible_nav.test.tsx.snap @@ -2,53 +2,54 @@ exports[`EuiCollapsibleNav close button can be hidden 1`] = `
-
-
+
+
+
+
`; @@ -56,55 +57,56 @@ exports[`EuiCollapsibleNav does not render if isOpen is false 1`] = `
`; exports[`EuiCollapsibleNav is rendered 1`] = `
-
-
+
+
+
+
`; @@ -165,105 +167,107 @@ exports[`EuiCollapsibleNav props button 1`] = ` aria-expanded="true" aria-pressed="true" /> -
-
+
+
+
+
`; exports[`EuiCollapsibleNav props dockedBreakpoint 1`] = `
-
-
+
+
+
+
`; @@ -293,53 +297,54 @@ exports[`EuiCollapsibleNav props isDocked 1`] = ` exports[`EuiCollapsibleNav props onClose 1`] = `
-
-
+
+
+
+
`; @@ -374,52 +379,53 @@ exports[`EuiCollapsibleNav props showButtonIfDocked 1`] = ` exports[`EuiCollapsibleNav props size 1`] = `
-
-
+
+
+
+
`; diff --git a/packages/eui/src/components/collapsible_nav/collapsible_nav.spec.tsx b/packages/eui/src/components/collapsible_nav/collapsible_nav.spec.tsx index e08c0850295..36eb11224af 100644 --- a/packages/eui/src/components/collapsible_nav/collapsible_nav.spec.tsx +++ b/packages/eui/src/components/collapsible_nav/collapsible_nav.spec.tsx @@ -67,7 +67,13 @@ describe('EuiCollapsibleNav', () => { it('closes the nav when the overlay mask is clicked', () => { cy.realMount(