Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Snyk] Upgrade react-virtualized-auto-sizer from 1.0.6 to 1.0.20 #6798

Merged
merged 8 commits into from
Aug 11, 2023

Conversation

JasonStoltz
Copy link
Member

This PR was automatically created by Snyk using the credentials of a real user.


Snyk has created this PR to upgrade react-virtualized-auto-sizer from 1.0.6 to 1.0.15.

ℹ️ Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.


  • The recommended version is 9 versions ahead of your current version.
  • The recommended version was released a month ago, on 2023-04-17.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.

For more information:

🧐 View latest project report

🛠 Adjust upgrade PR settings

🔕 Ignore this dependency or unsubscribe from future upgrade PRs

@cee-chen
Copy link
Contributor

We should manually QA that EuiAutoSizer works as before before merging this PR in

snyk-bot and others added 6 commits August 11, 2023 09:43
Snyk has created this PR to upgrade react-virtualized-auto-sizer from 1.0.6 to 1.0.15.

See this package in npm:

See this project in Snyk:
https://app.snyk.io/org/eui/project/782ac3a8-8bb4-4658-baa9-190d6cb035f1?utm_source=github-enterprise&utm_medium=referral&page=upgrade-pr
- might as well grab the absolute latest as it has several type fixes
- lib doesn't export `AutoSizerProps` anymore, so obtain it programmatically
`disableHeight` can't be true and passing the `height` arg at the same time, so we need a new ternary
`disableHeight` can't be true and passing the `height` arg at the same time, so we need a new ternary

+ refactor virtualized logic to a separate class method, since it has so much unqiue logic + so we're not double nesting ternaries

+ stricter typing on `calculatedHeight`
- TS now lints/yells about render props args missing explicit types (might be due to React 18 upgrade)

- re-export top-level EUI types from the lib, so that consumers don't have to import types directly
@cee-chen cee-chen force-pushed the snyk-upgrade-36d60602c40679bce354b0273d5befff branch from 9f8e702 to a76c7e3 Compare August 11, 2023 18:27
@cee-chen cee-chen changed the title [Snyk] Upgrade react-virtualized-auto-sizer from 1.0.6 to 1.0.15 [Snyk] Upgrade react-virtualized-auto-sizer from 1.0.6 to 1.0.20 Aug 11, 2023
- types are already exported from package directly
@kibanamachine
Copy link

Preview documentation changes for this PR: https://eui.elastic.co/pr_6798_buildkite/

@cee-chen
Copy link
Contributor

cee-chen commented Aug 11, 2023

Changelog

https://github.com/bvaughn/react-virtualized-auto-sizer/blob/master/CHANGELOG.md

1.0.20

  • Guard against potential state update after unmount (caused by setTimeout when using ResizeObserver)

1.0.19

  • Further improved TypeScript definitions to avoid any types for children function parameters.
  • 61: Build release bundle with Preconstruct.

1.0.18

  • Refine TypeScript types so that disableHeight and disableWidth are properly paired with conditional types like children and onResize.

1.0.17

  • Support non-integer padding styles.

1.0.16

  • Relaxed children prop return type from ReactElement to ReactNode.

1.0.15

  • Readme changes

1.0.14

  • Fix potential "ResizeObserver loop limit exceeded" error caused by long-running renders (#55)

1.0.13

  • Transpile nullish coalescing operator (#53)

1.0.12

  • Fix regression introduced in 1.0.8 with transformations; pass unscaled width and height as "default" params (and add additional scaledHeight and scaledWidth params to children function)
  • Use ResizeObserver when possible; fallback to legacy resize polyfill logic otherwise

1.0.11

  • Pre-transform static class property syntax (defaultProps) (#46)
  • Fixed bad TypeScript definition for onResize prop (#44)

1.0.10

  • Add named exports for AutoSizer as well as Props and Size types.

1.0.9

  • Add optional tagName property (default to "div").

1.0.8

  • Replace offsetHeight/offsetWidth with getBoundingClientRect to better support floating size values
  • Spread all additional props onto out HTMLDivElement

1.0.7

  • Add peer dependency for "react" / "react-dom" version 18

QA

  • EuiAutoSizer
  • EuiCodeBlock (virtualized demo)
  • EuiSelectable (virtualized demo)

@kibanamachine
Copy link

Preview documentation changes for this PR: https://eui.elastic.co/pr_6798_buildkite/

@cee-chen cee-chen enabled auto-merge (squash) August 11, 2023 18:58
@cee-chen cee-chen self-assigned this Aug 11, 2023
@kibanamachine
Copy link

Preview documentation changes for this PR: https://eui.elastic.co/pr_6798_buildkite/

1 similar comment
@kibanamachine
Copy link

Preview documentation changes for this PR: https://eui.elastic.co/pr_6798_buildkite/

@elasticmachine
Copy link
Collaborator

💚 Build Succeeded

History

cc @cee-chen

@cee-chen cee-chen merged commit fe6d803 into main Aug 11, 2023
@cee-chen cee-chen deleted the snyk-upgrade-36d60602c40679bce354b0273d5befff branch August 11, 2023 19:42
cee-chen added a commit to elastic/kibana that referenced this pull request Aug 21, 2023
`v86.0.0`⏩`v87.1.0`

⚠️ The biggest set of type changes in this PR come from the breaking
change that makes `pageSize` and `pageSizeOptions` now optional props
for `EuiBasicTable.pagination`, `EuiInMemoryTable.pagination` and
`EuiDataGrid.pagination`.

This caused several other components that were cloning EUI's pagination
type to start throwing type warnings about `pageSize` being optional.
Where I came across these errors, I modified the extended types to
require `pageSize`. These types and their usages may end up changing
again in any case once the Shared UX team looks into
#56406.

---

## [`87.1.0`](https://github.com/elastic/eui/tree/v87.1.0)

- Updated the underlying library powering `EuiAutoSizer`. This primarily
affects typing around the `disableHeight` and `disableWidth` props
([#6798](elastic/eui#6798))
- Added new `EuiAutoSize`, `EuiAutoSizeHorizontal`, and
`EuiAutoSizeVertical` types to support `EuiAutoSizer`'s now-stricter
typing ([#6798](elastic/eui#6798))
- Updated `EuiDatePickerRange` to support `compressed` display
([#7058](elastic/eui#7058))
- Updated `EuiFlyoutBody` with a new `scrollableTabIndex` prop
([#7061](elastic/eui#7061))
- Added a new `panelMinWidth` prop to `EuiInputPopover`
([#7071](elastic/eui#7071))
- Added a new `inputPopoverProps` prop for `EuiRange`s and
`EuiDualRange`s with `showInput="inputWithPopover"` set
([#7082](elastic/eui#7082))

**Bug fixes**

- Fixed `EuiToolTip` overriding instead of merging its
`aria-describedby` tooltip ID with any existing `aria-describedby`s
([#7055](elastic/eui#7055))
- Fixed `EuiSuperDatePicker`'s `compressed` display
([#7058](elastic/eui#7058))
- Fixed `EuiAccordion` to remove tabbable children from sequential
keyboard navigation when the accordion is closed
([#7064](elastic/eui#7064))
- Fixed `EuiFlyout`s to accept custom `aria-describedby` IDs
([#7065](elastic/eui#7065))

**Accessibility**

- Removed the default `dialog` role and `tabIndex` from push
`EuiFlyout`s. Push flyouts, compared to overlay flyouts, require manual
accessibility management.
([#7065](elastic/eui#7065))

## [`87.0.0`](https://github.com/elastic/eui/tree/v87.0.0)

- Added beta `componentDefaults` prop to `EuiProvider`, which will allow
configuring certain default props globally. This list of components and
defaults is still under consideration.
([#6923](elastic/eui#6923))
- `EuiPortal`'s `insert` prop can now be configured globally via
`EuiProvider.componentDefaults`
([#6941](elastic/eui#6941))
- `EuiFocusTrap`'s `crossFrame` and `gapMode` props can now be
configured globally via `EuiProvider.componentDefaults`
([#6942](elastic/eui#6942))
- `EuiTablePagination`'s `itemsPerPage`, `itemsPerPageOptions`, and
`showPerPageOptions` props can now be configured globally via
`EuiProvider.componentDefaults`
([#6951](elastic/eui#6951))
- `EuiBasicTable`, `EuiInMemoryTable`, and `EuiDataGrid` now allow
`pagination.pageSize` to be undefined. If undefined, `pageSize` defaults
to `EuiTablePagination`'s `itemsPerPage` component default.
([#6993](elastic/eui#6993))
- `EuiBasicTable`, `EuiInMemoryTable`, and `EuiDataGrid`'s
`pagination.pageSizeOptions` will now fall back to
`EuiTablePagination`'s `itemsPerPageOptions` component default.
([#6993](elastic/eui#6993))
- Updated `EuiHeaderLinks`'s `gutterSize` spacings
([#7005](elastic/eui#7005))
- Updated `EuiHeaderAlert`'s stacking styles
([#7005](elastic/eui#7005))
- Added `toolTipProps` to `EuiListGroupItem` that allows customizing
item tooltips. ([#7018](elastic/eui#7018))
- Updated `EuiBreadcrumbs` to support breadcrumbs that toggle popovers
via `popoverContent` and `popoverProps`
([#7031](elastic/eui#7031))
- Improved the contrast ratio of disabled titles within `EuiSteps` and
`EuiStepsHorizontal` to meet WCAG AA guidelines.
([#7032](elastic/eui#7032))
- Updated `EuiSteps` and `EuiStepsHorizontal` to highlight and provide a
more clear visual indication of the current step
([#7048](elastic/eui#7048))

**Bug fixes**

- Single uses of `<EuiHeaderSectionItem side="right" />` now align right
as expected without needing a previous `side="left"` sibling.
([#7005](elastic/eui#7005))
- `EuiPageTemplate` now correctly displays `panelled={true}`
([#7044](elastic/eui#7044))

**Breaking changes**

- `EuiTablePagination`'s default `itemsPerPage` is now `10` (was
previously `50`). This can be configured through
`EuiProvider.componentDefaults`.
([#6993](elastic/eui#6993))
- `EuiTablePagination`'s default `itemsPerPageOptions` is now `[10, 25,
50]` (was previously `[10, 20, 50, 100]`). This can be configured
through `EuiProvider.componentDefaults`.
([#6993](elastic/eui#6993))
- Removed `border` prop from `EuiHeaderSectionItem` (unused since
Amsterdam theme) ([#7005](elastic/eui#7005))
- Removed `borders` object configuration from `EuiHeader.sections`
([#7005](elastic/eui#7005))

**CSS-in-JS conversions**

- Converted `EuiHeaderAlert` to Emotion; Removed unused
`.euiHeaderAlert__dismiss` CSS
([#7005](elastic/eui#7005))
- Converted `EuiHeaderSection`, `EuiHeaderSectionItem`, and
`EuiHeaderSectionItemButton` to Emotion
([#7005](elastic/eui#7005))
- Converted `EuiHeaderLinks` and `EuiHeaderLink` to Emotion; Removed
`$euiHeaderLinksGutterSizes` Sass variables
([#7005](elastic/eui#7005))
- Removed `$euiHeaderBackgroundColor` Sass variable; use
`$euiColorEmptyShade` instead
([#7005](elastic/eui#7005))
- Removed `$euiHeaderChildSize` Sass variable; use `$euiSizeXXL` instead
([#7005](elastic/eui#7005))

---------

Co-authored-by: Kibana Machine <42973632+kibanamachine@users.noreply.github.com>
Co-authored-by: Patryk Kopyciński <contact@patrykkopycinski.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants