Обновление victory-core с 37.x до 38.x
Сравнение публичного API victory-core 37.4.1 и 38.0.0, вычисленное автоматически по их типам TypeScript. Изменённая сигнатура — возможное несовместимое изменение, а не гарантия.
Сводка
| Удалённые пути импорта | 0 |
|---|---|
| Удалённые экспорты | 0 |
| Изменённые сигнатуры | 10 |
| Удалённые члены классов или интерфейсов | 0 |
| Изменённые члены классов или интерфейсов | 5 |
| Новые устаревания | 0 |
| Изменения требований (engines, peer-зависимости) | 1 |
| Новые экспорты | 1 |
Удалённые экспорты
Не обнаружено.
Изменённые сигнатуры
| export | Было | Стало |
|---|---|---|
victory-core · Text | (props: TextProps): JSX.Element | (props: TextProps): React.JSX.Element |
victory-core · TSpan | (props: VictoryCommonPrimitiveProps): JSX.Element | (props: VictoryCommonPrimitiveProps): React.JSX.Element |
victory-core · ClipPath | (props: ClipPathProps): JSX.Element | (props: ClipPathProps): React.JSX.Element |
victory-core · PortalProvider | ({ children }: PortalProviderProps): JSX.Element | ({ children }: PortalProviderProps): React.JSX.Element |
victory-core · AnimationEasing | "linear" | "back" | "backIn" | "backOut" | "backInOut" | "bounce" | "bounceIn" | "bounceOut" | "bounceInOut" | "circle" | "circleIn" | "circleOut" | "circleInOut" | "linearIn" | "linearOut" | "linearInOut" | "cubic" | "cubicIn" | "cubicOut" | "cubicInOut" | "elastic" | "elasticIn" | "elasticOut" | "elasticInOut" | "exp" | "expIn" | "expOut" | "expInOut" | "poly" | "polyIn" | "polyOut" | "polyInOut" | "quad" | "quadIn" | "quadOut" | "quadInOut" | "sin" | "sinIn" | "sinOut" | "sinInOut" | "back" | "backIn" | "backOut" | "backInOut" | "bounce" | "bounceIn" | "bounceOut" | "bounceInOut" | "circle" | "circleIn" | "circleOut" | "circleInOut" | "linear" | "linearIn" | "linearOut" | "linearInOut" | "cubic" | "cubicIn" | "cubicOut" | "cubicInOut" | "elastic" | "elasticIn" | "elasticOut" | "elasticInOut" | "exp" | "expIn" | "expOut" | "expInOut" | "poly" | "polyIn" | "polyOut" | "polyInOut" | "quad" | "quadIn" | "quadOut" | "quadInOut" | "sin" | "sinIn" | "sinOut" | "sinInOut" |
victory-core · VictoryContainer | (initialProps: VictoryContainerProps): JSX.Element | (initialProps: VictoryContainerProps): React.JSX.Element |
victory-core · PaddingOrCallback | number | VictoryPaddingCallback | BlockProps | number | BlockProps | VictoryPaddingCallback |
victory-core · useVictoryContainer | <TProps extends VictoryContainerProps>(initialProps: TProps): { className: string; portalComponent: JSX.Element; portalZIndex: number; responsive: boolean; role: string; } & TProps & { titleId: string; descId: string; dimensions: { width: string; height: string; } | { width: number | undefined; height: number | undefined; }; viewBox: string | undefined; preserveAspectRatio: string | undefined; ariaLabelledBy: string | undefined; ariaDescribedBy: string | undefined; userProps: Record<string, string>; localContainerRef: React.RefObject<HTMLDivElement>; } | <TProps extends VictoryContainerProps>(initialProps: TProps): { className: string; portalComponent: React.JSX.Element; portalZIndex: number; responsive: boolean; role: string; } & TProps & { titleId: string; descId: string; dimensions: { width: string; height: string; } | { width: number | undefined; height: number | undefined; }; viewBox: string | undefined; preserveAspectRatio: string | undefined; ariaLabelledBy: string | undefined; ariaDescribedBy: string | undefined; userProps: Record<string, string>; localContainerRef: React.RefObject<HTMLDivElement>; } |
victory-core · OrientationOrCallback | VictoryOrientationCallback | OrientationTypes | OrientationTypes | VictoryOrientationCallback |
victory-core · VictoryAccessibleGroup | ({ desc, children, tabIndex, className, ...props }: VictoryAccessibleGroupProps): JSX.Element | ({ desc, children, tabIndex, className, ...props }: VictoryAccessibleGroupProps): React.JSX.Element |
Удалённые члены классов или интерфейсов
Не обнаружено.
Изменённые члены классов или интерфейсов
| member | Было | Стало |
|---|---|---|
VictoryLabelProps.text | StringOrNumberOrCallback | string[] | undefined | string[] | StringOrNumberOrCallback | undefined |
VictoryLabelProps.lineHeight | StringOrNumberOrCallback | (string | number)[] | undefined | (string | number)[] | StringOrNumberOrCallback | undefined |
VictoryTransition.render | (): JSX.Element | (): React.JSX.Element |
VictoryClipContainer.static defaultProps | { circleComponent: JSX.Element; rectComponent: JSX.Element; clipPathComponent: JSX.Element; groupComponent: JSX.Element; } | { circleComponent: React.JSX.Element; rectComponent: React.JSX.Element; clipPathComponent: React.JSX.Element; groupComponent: React.JSX.Element; } |
EventPropTypeInterface.eventHandlers | { [key: string]: ((event: React.SyntheticEvent<any>, props?: any) => EventCallbackInterface<TTarget, TEventKey>) | ((event: React.SyntheticEvent<any>, props?: any) => EventCallbackInterface<TTarget, TEventKey>[]) | ((event: React.SyntheticEvent<any>, props?: any) => void); } | { [key: string]: ((event: React$1.SyntheticEvent<any>, props?: any) => EventCallbackInterface<TTarget, TEventKey>) | ((event: React$1.SyntheticEvent<any>, props?: any) => EventCallbackInterface<TTarget, TEventKey>[]) | ((event: React$1.SyntheticEvent<any>, props?: any) => void); } |
Новые устаревания
Не обнаружено.
Изменения требований (engines, peer-зависимости)
| Было | Стало | |
|---|---|---|
peerDependencies.react | >=16.6.0 | >=18 |
Новые экспорты (1)
| import | export | kind |
|---|---|---|
victory-core | ComponentEvent | interface |
Changelog между этими версиями
Текст, опубликованный авторами пакета, показан без изменений.
38.0.0
### Major Changes
- [#3138](https://github.com/FormidableLabs/victory/pull/3138) [`b7ebc3e`](https://github.com/FormidableLabs/victory/commit/b7ebc3e316d05740f11d4e8b8072d420db6ccfad) - Require React 18 or later: the `react` peer dependency is now `>=18` (was `>=16.6.0`). If you're on React 16 or 17, stay on Victory 37.x until you upgrade React.
- [#3107](https://github.com/FormidableLabs/victory/pull/3107) [`4c436bd`](https://github.com/FormidableLabs/victory/commit/4c436bd47b835e795e96bc205cdf9c590fe92ddb) - Remove the UMD bundles (`dist/<package>.js` and `dist/<package>.min.js`). To use Victory in the browser without a build step, import it as ESM from a CDN with an import map; see [Using Victory in the browser](https://commerce.nearform.com/open-source/victory/docs/introduction/browser).
- [#3108](https://github.com/FormidableLabs/victory/pull/3108) [`8f16467`](https://github.com/FormidableLabs/victory/commit/8f1646767d6059d764541118284cf71cc1da5c95) - Packages are now built with tsdown and published from `dist/`, with an `exports` map:
- ESM is `dist/*.mjs` and CommonJS is `dist/*.cjs`, with matching `.d.mts`/`.d.cts` types. `main`, `module` and `types` still point at them for older tooling.
- Only the package root (and `package.json`) can be imported. Deep imports into `lib/`, `es/` or `src/` no longer resolve; import from the package root instead (for example `import { Helpers } from "victory-core"`).
- The output targets ES2022 and is no longer down-leveled further. If you support older browsers, transpile `node_modules` in your bundler.
- `src/` is no longer published.
### Patch Changes
- [#3108](https://github.com/FormidableLabs/victory/pull/3108) [`8f16467`](https://github.com/FormidableLabs/victory/commit/8f1646767d6059d764541118284cf71cc1da5c95) - Export the `ComponentEvent` type. Component declarations that use it (such as `componentEvents` on `VictoryArea`) now reference `victory-core` instead of an internal path.
- [#3115](https://github.com/FormidableLabs/victory/pull/3115) [`1864919`](https://github.com/FormidableLabs/victory/commit/18649193d7c8d42a8f5f58ade9c63288af68a7f8) - Fix `VictoryLabel`'s default `fontFamily`: an invisible soft hyphen inside `'Seravek'` meant that font never matched. Remove the unused `lodash` dependency from `victory-canvas`, `victory-histogram` and `victory-scatter`.
- [#3123](https://github.com/FormidableLabs/victory/pull/3123) [`4261e04`](https://github.com/FormidableLabs/victory/commit/4261e0453733d19154dc0700f14c03e8e0aad539) - Stop the primitives (`Circle`, `Line`, `Path`, `Rect`, `Text`, `TSpan`) from writing Victory props such as `standalone`, `polar`, `theme` and `stringMap` to the DOM. `VictoryChart`, `VictoryGroup` and `VictoryStack` inject these into every child, so a primitive placed directly in a chart triggered React warnings like "Received `false` for a non-boolean attribute `standalone`" ([#3118](https://github.com/FormidableLabs/victory/issues/3118)).
- [#3132](httpsПередайте эти данные своему ИИ-агенту
Vigia — бесплатный MCP-сервер: ваш агент для программирования проверяет версии, несовместимые изменения и уязвимости до того, как напишет код. Без регистрации и API-ключа.
claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp
Добавить в CursorДобавить в VS Code★ Звезда на GitHub
Любой другой MCP-клиент
{ "mcpServers": { "vigia": { "url": "https://vigia.coredls.cloud/mcp" } } }Навык для агентов (SKILL.md): подсказывает агенту, когда использовать Vigia · GitHub Action для pull request
Часто задаваемые вопросы
Какие несовместимые изменения при обновлении victory-core с 37 до 38?
Между victory-core 37.4.1 и 38.0.0 Vigia нашла удалённых экспортов: 0, изменённых сигнатур: 10, удалённых или изменённых членов классов и интерфейсов: 5.
Что устарело в victory-core 38?
В victory-core 38.0.0 новыми устаревшими помечено экспортов или членов: 0.
Для агентов
GET https://vigia.coredls.cloud/v1/packages/npm/victory-core/upgrade?from=37.4.1&to=38.0.0