diff --git a/.eslintignore b/.eslintignore deleted file mode 100644 index e9270eb25..000000000 --- a/.eslintignore +++ /dev/null @@ -1,12 +0,0 @@ -node_modules -storybook-static -coverage -dist -lib -es -public -artifacts -tmp -demo/rn -**/*.d.ts -.wireit diff --git a/.eslintrc.js b/.eslintrc.js deleted file mode 100644 index e1cda5908..000000000 --- a/.eslintrc.js +++ /dev/null @@ -1,116 +0,0 @@ -const path = require("path"); -const BABEL_PATH = path.resolve(__dirname, ".babelrc.js"); // eslint-disable-line no-undef - -module.exports = { - settings: { - react: { - version: "detect", - }, - "import/resolver": { - node: { - extensions: [".js", ".ts", ".tsx"], - }, - }, - }, - extends: [ - "formidable/configurations/es6-react", - "plugin:react-hooks/recommended", - "plugin:eslint-comments/recommended", - "prettier", - ], - rules: { - "eslint-comments/disable-enable-pair": "off", - "func-style": "off", - "arrow-body-style": "off", - "consistent-return": "off", // we're migrating to TS and this is more properly handled there. - "react/sort-comp": "off", - "import/no-unresolved": ["error", { ignore: ["victory*"] }], - "no-restricted-imports": [ - "error", - { - patterns: [ - { - group: ["victory*/src", "victory*/src/**"], - message: - "Be sure to import directly from Victory packages, not from /src folders!", - }, - ], - }, - ], - "max-statements": "off", - complexity: ["error", { max: 16 }], - "no-magic-numbers": [ - "error", - { ignore: [-1, 0, 0.5, 1, 2, 90, 180, 270, 360] }, - ], - "no-param-reassign": "error", - }, - parser: "@babel/eslint-parser", - parserOptions: { - babelOptions: { - configFile: BABEL_PATH, - }, - }, - plugins: ["jest"], - env: { - "jest/globals": true, - }, - overrides: [ - { - files: ["**/*.test.*", "./test/**/*"], - rules: { - "react/sort-comp": "off", - "no-magic-numbers": "off", - "max-statements": "off", - "import/no-unresolved": "off", - "no-undef": "off", - "max-nested-callbacks": "off", - "@typescript-eslint/no-empty-function": "off", - }, - }, - { - files: ["*.ts", "*.tsx"], - excludedFiles: ["*.d.ts"], - parser: "@typescript-eslint/parser", - parserOptions: { - project: ["./tsconfig.base.json"], - // eslint-disable-next-line no-undef - tsconfigRootDir: __dirname, - }, - plugins: ["@typescript-eslint"], - extends: [ - "plugin:@typescript-eslint/eslint-recommended", - "plugin:@typescript-eslint/recommended", - "plugin:@typescript-eslint/recommended-requiring-type-checking", - ], - rules: { - "react/prop-types": "off", - "no-use-before-define": "off", - "valid-jsdoc": "off", - "@typescript-eslint/no-use-before-define": [ - "error", - { - // Relax this rule; still prevents errors: - variables: false, - classes: false, - functions: false, - enums: false, - typedefs: false, - }, - ], - "no-invalid-this": "off", - "@typescript-eslint/no-explicit-any": "off", - "@typescript-eslint/no-invalid-this": ["error"], - "@typescript-eslint/no-non-null-assertion": "off", - "@typescript-eslint/no-unnecessary-type-assertion": "off", - "@typescript-eslint/no-unsafe-argument": "off", - "@typescript-eslint/no-unsafe-assignment": "off", - "@typescript-eslint/no-unsafe-return": "off", - "@typescript-eslint/no-unsafe-call": "off", - "@typescript-eslint/no-unsafe-member-access": "off", - "@typescript-eslint/restrict-template-expressions": "off", - "@typescript-eslint/restrict-plus-operands": "off", - }, - }, - ], -}; diff --git a/config/.eslintrc b/config/.eslintrc deleted file mode 100644 index b98e91fce..000000000 --- a/config/.eslintrc +++ /dev/null @@ -1,5 +0,0 @@ -{ - "extends": ["../.eslintrc.js"], - "rules": { "strict": "off" }, - "globals": {} -} diff --git a/config/webpack/demo/webpack.config.dev.js b/config/webpack/demo/webpack.config.dev.js index 95fd7a9de..962970303 100644 --- a/config/webpack/demo/webpack.config.dev.js +++ b/config/webpack/demo/webpack.config.dev.js @@ -5,7 +5,7 @@ const glob = require("glob"); const LodashModuleReplacementPlugin = require("lodash-webpack-plugin"); const ForkTsCheckerWebpackPlugin = require("fork-ts-checker-webpack-plugin"); -const ROOT = path.resolve(__dirname, "../../.."); // eslint-disable-line no-undef +const ROOT = path.resolve(__dirname, "../../.."); const PKGS = path.join(ROOT, "packages"); const VICTORY_GLOB = path .join(PKGS, "victory*/package.json") @@ -50,7 +50,7 @@ module.exports = { include: [DEMO], use: { loader: "babel-loader", - // eslint-disable-next-line global-require + options: require("../../../.babelrc.js"), }, }, diff --git a/config/webpack/demo/webpack.config.hot.js b/config/webpack/demo/webpack.config.hot.js index c8825294a..354feb134 100644 --- a/config/webpack/demo/webpack.config.hot.js +++ b/config/webpack/demo/webpack.config.hot.js @@ -5,7 +5,7 @@ const base = require("./webpack.config.dev"); // Clone our own module object. const mod = _.cloneDeep(base.module); -const firstLoader = mod.rules[0]; // eslint-disable-line no-magic-numbers +const firstLoader = mod.rules[0]; // Update rules array. First loader needs react-hot-loader. firstLoader.rules = [require.resolve("react-hot-loader")] diff --git a/config/webpack/webpack.config.js b/config/webpack/webpack.config.js index 3ab821655..bba7ff8ad 100644 --- a/config/webpack/webpack.config.js +++ b/config/webpack/webpack.config.js @@ -56,7 +56,7 @@ module.exports = { include: [SRC], use: { loader: "babel-loader", - // eslint-disable-next-line global-require + options: require("../../.babelrc.js"), }, }, diff --git a/demo/ts/.eslintrc b/demo/ts/.eslintrc deleted file mode 100644 index b4baab26f..000000000 --- a/demo/ts/.eslintrc +++ /dev/null @@ -1,20 +0,0 @@ -{ - "extends": ["../../.eslintrc.js"], - "rules": { - "@typescript-eslint/ban-types": "off", - "@typescript-eslint/explicit-function-return-type": "off", - "@typescript-eslint/no-explicit-any": "off", - "@typescript-eslint/no-unsafe-argument": "off", - "@typescript-eslint/no-unsafe-assignment": "off", - "@typescript-eslint/no-unsafe-call": "off", - "@typescript-eslint/no-unsafe-expressions": "off", - "@typescript-eslint/no-unsafe-member-access": "off", - "@typescript-eslint/no-unsafe-return": "off", - "@typescript-eslint/restrict-plus-operands": "off", - "@typescript-eslint/restrict-template-expressions": "off", - "import/no-duplicates": "off", - "no-magic-numbers": "off", - "no-use-before-define": "off", - "react/no-multi-comp": "off" - } -} diff --git a/demo/ts/app.tsx b/demo/ts/app.tsx index 11e281675..596008a4d 100644 --- a/demo/ts/app.tsx +++ b/demo/ts/app.tsx @@ -289,4 +289,5 @@ class App extends React.Component { } } +// eslint-disable-next-line react/no-deprecated ReactDOM.render(, document.getElementById("content")); diff --git a/demo/ts/components/accessibility-demo.tsx b/demo/ts/components/accessibility-demo.tsx index 339a4de7c..fdd349f8a 100644 --- a/demo/ts/components/accessibility-demo.tsx +++ b/demo/ts/components/accessibility-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers */ + import React from "react"; import { isNumber } from "lodash"; import { VictoryGroup } from "victory-group"; diff --git a/demo/ts/components/animation-demo.tsx b/demo/ts/components/animation-demo.tsx index 5cbd9ce73..410c8e474 100644 --- a/demo/ts/components/animation-demo.tsx +++ b/demo/ts/components/animation-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers */ + import React from "react"; import { random, range } from "lodash"; import { VictoryBar } from "victory-bar"; diff --git a/demo/ts/components/canvas-demo.tsx b/demo/ts/components/canvas-demo.tsx index d29af4200..e7bf4acad 100644 --- a/demo/ts/components/canvas-demo.tsx +++ b/demo/ts/components/canvas-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers */ + import React from "react"; import { range, random } from "lodash"; diff --git a/demo/ts/components/create-container-demo.tsx b/demo/ts/components/create-container-demo.tsx index ab039ec71..d9690f827 100644 --- a/demo/ts/components/create-container-demo.tsx +++ b/demo/ts/components/create-container-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers,react/no-multi-comp */ + import React from "react"; import { round } from "lodash"; import { VictoryChart } from "victory-chart"; diff --git a/demo/ts/components/draggable-demo.tsx b/demo/ts/components/draggable-demo.tsx index 283cc6464..81010d97c 100644 --- a/demo/ts/components/draggable-demo.tsx +++ b/demo/ts/components/draggable-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers,react/no-multi-comp */ + import React from "react"; import { VictoryChart } from "victory-chart"; @@ -36,6 +36,7 @@ interface DraggableDemoInterface { interface TargetPropsInterface { scale?: number; + // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type onPointChange?: Function; datum?: {}; } diff --git a/demo/ts/components/events-demo.tsx b/demo/ts/components/events-demo.tsx index 50e4b6765..00596da98 100644 --- a/demo/ts/components/events-demo.tsx +++ b/demo/ts/components/events-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers */ + import React from "react"; import { VictoryChart } from "victory-chart"; import { VictoryStack } from "victory-stack"; diff --git a/demo/ts/components/external-events-demo.tsx b/demo/ts/components/external-events-demo.tsx index 81ad3e14e..c3c369e37 100644 --- a/demo/ts/components/external-events-demo.tsx +++ b/demo/ts/components/external-events-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers */ + import React from "react"; import { VictoryChart } from "victory-chart"; diff --git a/demo/ts/components/group-demo.tsx b/demo/ts/components/group-demo.tsx index 944f4250b..acccbcafd 100644 --- a/demo/ts/components/group-demo.tsx +++ b/demo/ts/components/group-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers */ + import React from "react"; import { VictoryChart } from "victory-chart"; import { VictoryStack } from "victory-stack"; diff --git a/demo/ts/components/horizontal-demo.tsx b/demo/ts/components/horizontal-demo.tsx index dd27cb931..b15b2a5cd 100644 --- a/demo/ts/components/horizontal-demo.tsx +++ b/demo/ts/components/horizontal-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers */ + import React from "react"; import { VictoryChart } from "victory-chart"; diff --git a/demo/ts/components/immutable-demo.tsx b/demo/ts/components/immutable-demo.tsx index bf7caf226..cddb68afb 100644 --- a/demo/ts/components/immutable-demo.tsx +++ b/demo/ts/components/immutable-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers, react/no-multi-comp */ + import React from "react"; import { keys, random, range, round } from "lodash"; import { fromJS } from "immutable"; @@ -20,7 +20,6 @@ import { VictorySelectionContainer } from "victory-selection-container"; import { VictoryCursorContainer } from "victory-cursor-container"; import { VictoryBrushContainer } from "victory-brush-container"; import { VictoryTooltip } from "victory-tooltip"; -import { VictoryLegend } from "victory-legend"; import { DomainTuple, VictoryClipContainer, @@ -105,7 +104,7 @@ export default class ImmutableDemo extends React.Component< } componentDidMount() { - /* eslint-disable react/no-did-mount-set-state */ + this.setStateInterval = window.setInterval(() => { this.setState({ scatterData: this.getScatterData(), diff --git a/demo/ts/components/primitives-demo.tsx b/demo/ts/components/primitives-demo.tsx index bbe77c49c..6d522b493 100644 --- a/demo/ts/components/primitives-demo.tsx +++ b/demo/ts/components/primitives-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers */ + import React from "react"; import { VictoryAxis } from "victory-axis"; diff --git a/demo/ts/components/selection-demo.tsx b/demo/ts/components/selection-demo.tsx index 009f6a003..e4f34d8d3 100644 --- a/demo/ts/components/selection-demo.tsx +++ b/demo/ts/components/selection-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers */ + import React from "react"; import { VictoryChart } from "victory-chart"; import { VictoryStack } from "victory-stack"; diff --git a/demo/ts/components/victory-axis-demo.tsx b/demo/ts/components/victory-axis-demo.tsx index 36cbe2684..7c89a544f 100644 --- a/demo/ts/components/victory-axis-demo.tsx +++ b/demo/ts/components/victory-axis-demo.tsx @@ -24,7 +24,7 @@ export default class VictoryAxisDemo extends React.Component< } componentDidMount() { - /* eslint-disable react/no-did-mount-set-state */ + this.setStateInterval = window.setInterval(() => { this.setState({ tickValues: this.getTickValues(), diff --git a/demo/ts/components/victory-box-plot-demo.tsx b/demo/ts/components/victory-box-plot-demo.tsx index 071311a3a..7c13fa585 100644 --- a/demo/ts/components/victory-box-plot-demo.tsx +++ b/demo/ts/components/victory-box-plot-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers */ + import React from "react"; import { VictoryChart } from "victory-chart"; import { VictoryBoxPlot } from "victory-box-plot"; diff --git a/demo/ts/components/victory-brush-container-demo.tsx b/demo/ts/components/victory-brush-container-demo.tsx index be1f2e259..4f00bf2e9 100644 --- a/demo/ts/components/victory-brush-container-demo.tsx +++ b/demo/ts/components/victory-brush-container-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers */ + import React from "react"; import { VictoryChart } from "victory-chart"; import { VictoryStack } from "victory-stack"; diff --git a/demo/ts/components/victory-brush-line-demo.tsx b/demo/ts/components/victory-brush-line-demo.tsx index 697de32e6..30fbf6a62 100644 --- a/demo/ts/components/victory-brush-line-demo.tsx +++ b/demo/ts/components/victory-brush-line-demo.tsx @@ -1,5 +1,5 @@ -/* eslint-disable no-magic-numbers */ -/* eslint-disable no-shadow */ + + import React from "react"; import { VictoryChart } from "victory-chart"; diff --git a/demo/ts/components/victory-candlestick-demo.tsx b/demo/ts/components/victory-candlestick-demo.tsx index 898deef66..7bf1ae2da 100644 --- a/demo/ts/components/victory-candlestick-demo.tsx +++ b/demo/ts/components/victory-candlestick-demo.tsx @@ -1,6 +1,4 @@ -/* eslint-disable no-magic-numbers */ import React from "react"; -import { random, range } from "lodash"; import { VictoryChart } from "victory-chart"; import { VictoryCandlestick } from "victory-candlestick"; import { VictoryTheme } from "victory-core"; @@ -18,30 +16,6 @@ interface VictoryCandlestickDemoState { }[]; } -const getData = () => { - const colors = [ - "violet", - "cornflowerblue", - "gold", - "orange", - "turquoise", - "tomato", - "greenyellow", - ]; - return range(50).map(() => { - return { - x: random(600), - open: random(600), - close: random(600), - high: random(450, 600), - low: random(0, 150), - size: random(15) + 3, - fill: colors[random(0, 6)], - opacity: random(0.3, 1), - }; - }); -}; - const containerStyle: React.CSSProperties = { display: "flex", flexDirection: "row", diff --git a/demo/ts/components/victory-chart-demo.tsx b/demo/ts/components/victory-chart-demo.tsx index f964704bd..4ba3e7238 100644 --- a/demo/ts/components/victory-chart-demo.tsx +++ b/demo/ts/components/victory-chart-demo.tsx @@ -12,7 +12,6 @@ import { VictoryLabel, VictoryTheme, VictoryClipContainer, - VictoryThemeDefinition, VictoryThemePalette, } from "victory-core"; @@ -41,13 +40,6 @@ class Wrapper extends React.Component { } } -const dependentAxisTheme: VictoryThemeDefinition = { - ...VictoryTheme.material, - dependentAxis: { - orientation: "right", - }, -}; - type XYNumberType = { x: number | string; y: number | string; @@ -87,7 +79,7 @@ class VictoryChartDemo extends React.Component { } componentDidMount() { - /* eslint-disable react/no-did-mount-set-state */ + this.setStateInterval = window.setInterval(() => { this.setState({ scatterData: this.getScatterData(), diff --git a/demo/ts/components/victory-cursor-container-demo.tsx b/demo/ts/components/victory-cursor-container-demo.tsx index 494f2b033..e61e408a3 100644 --- a/demo/ts/components/victory-cursor-container-demo.tsx +++ b/demo/ts/components/victory-cursor-container-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers */ + import React from "react"; import { random, range, round } from "lodash"; import { VictoryChart } from "victory-chart"; @@ -38,7 +38,7 @@ class App extends React.Component { } componentDidMount() { - /* eslint-disable react/no-did-mount-set-state */ + this.setStateInterval = window.setInterval(() => { this.setState({ data: this.getData(), diff --git a/demo/ts/components/victory-demo.tsx b/demo/ts/components/victory-demo.tsx index 511fe2038..0bd9625dd 100644 --- a/demo/ts/components/victory-demo.tsx +++ b/demo/ts/components/victory-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers*/ + import React from "react"; import { VictoryAxis } from "victory-axis"; import { VictoryArea } from "victory-area"; diff --git a/demo/ts/components/victory-errorbar-demo.tsx b/demo/ts/components/victory-errorbar-demo.tsx index 41d839447..1a96bc2da 100644 --- a/demo/ts/components/victory-errorbar-demo.tsx +++ b/demo/ts/components/victory-errorbar-demo.tsx @@ -47,7 +47,7 @@ export default class VictoryErrorBarDemo extends React.Component< } componentDidMount() { - /* eslint-disable react/no-did-mount-set-state */ + this.setStateInterval = window.setInterval(() => { this.setState({ data: this.getData(), diff --git a/demo/ts/components/victory-histogram-demo.tsx b/demo/ts/components/victory-histogram-demo.tsx index aec89fb7d..afa348dec 100644 --- a/demo/ts/components/victory-histogram-demo.tsx +++ b/demo/ts/components/victory-histogram-demo.tsx @@ -122,7 +122,7 @@ export default class App extends React.Component<{}, VictoryBarDemoState> { } componentDidMount() { - /* eslint-disable react/no-did-mount-set-state */ + this.setStateInterval = window.setInterval(() => { const randomValue = random(300); diff --git a/demo/ts/components/victory-label-demo.tsx b/demo/ts/components/victory-label-demo.tsx index f1044996c..314593102 100644 --- a/demo/ts/components/victory-label-demo.tsx +++ b/demo/ts/components/victory-label-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers*/ + import React from "react"; import { VictoryLabel, VictoryTheme } from "victory-core"; import { VictoryScatter, VictoryScatterProps } from "victory-scatter"; diff --git a/demo/ts/components/victory-pie-demo.tsx b/demo/ts/components/victory-pie-demo.tsx index 576cae9d3..dbb0cd9a1 100644 --- a/demo/ts/components/victory-pie-demo.tsx +++ b/demo/ts/components/victory-pie-demo.tsx @@ -58,7 +58,7 @@ export default class VictoryPieDemo extends React.Component< } componentDidMount() { - /* eslint-disable react/no-did-mount-set-state */ + this.setStateInterval = window.setInterval(() => { this.setState({ data: this.getData(), diff --git a/demo/ts/components/victory-polar-axis-demo.tsx b/demo/ts/components/victory-polar-axis-demo.tsx index 4380ac09f..db8ccc8f6 100644 --- a/demo/ts/components/victory-polar-axis-demo.tsx +++ b/demo/ts/components/victory-polar-axis-demo.tsx @@ -54,7 +54,7 @@ class App extends React.Component { } componentDidMount() { - /* eslint-disable react/no-did-mount-set-state */ + this.setStateInterval = window.setInterval(() => { this.setState({ data: this.getData(), diff --git a/demo/ts/components/victory-scatter-demo.tsx b/demo/ts/components/victory-scatter-demo.tsx index 8a9f03ac8..e6069546d 100644 --- a/demo/ts/components/victory-scatter-demo.tsx +++ b/demo/ts/components/victory-scatter-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers,react/no-multi-comp */ + import React, { useState } from "react"; import PropTypes from "prop-types"; import { random, range } from "lodash"; @@ -87,17 +87,6 @@ const containerStyle: React.CSSProperties = { justifyContent: "center", }; -const symbolStyle = { - parent: { border: "1px solid #ccc", margin: "2%", maxWidth: "40%" }, - data: { - fill: "red", - }, - labels: { - padding: 15, - fontSize: 15, - fill: "grey", - }, -}; const CustomSunIcon = (props) => ( ); @@ -189,7 +178,7 @@ export default class VictoryScatterDemo extends React.Component< } componentDidMount() { - /* eslint-disable react/no-did-mount-set-state */ + this.setStateInterval = window.setInterval(() => { this.setState({ data: getData(), diff --git a/demo/ts/components/victory-selection-container-demo.tsx b/demo/ts/components/victory-selection-container-demo.tsx index 1da7c003f..5551966e9 100644 --- a/demo/ts/components/victory-selection-container-demo.tsx +++ b/demo/ts/components/victory-selection-container-demo.tsx @@ -53,7 +53,7 @@ class VictorySelectionContainerDemo extends React.Component { } componentDidMount() { - /* eslint-disable react/no-did-mount-set-state */ + this.setStateInterval = window.setInterval(() => { this.setState({ data: this.getData(), diff --git a/demo/ts/components/victory-voronoi-container-demo.tsx b/demo/ts/components/victory-voronoi-container-demo.tsx index 0711475b9..1ae614f1d 100644 --- a/demo/ts/components/victory-voronoi-container-demo.tsx +++ b/demo/ts/components/victory-voronoi-container-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers */ + import React from "react"; import { random, range } from "lodash"; import { VictoryChart } from "victory-chart"; @@ -55,7 +55,7 @@ export default class VictoryVoronoiContainerDemo extends React.Component< } componentDidMount() { - /* eslint-disable react/no-did-mount-set-state */ + this.setStateInterval = window.setInterval(() => { this.setState({ data: this.getData(), diff --git a/demo/ts/components/victory-voronoi-demo.tsx b/demo/ts/components/victory-voronoi-demo.tsx index ac23b786c..00c194cf1 100644 --- a/demo/ts/components/victory-voronoi-demo.tsx +++ b/demo/ts/components/victory-voronoi-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers */ + import React from "react"; import { VictoryVoronoi } from "victory-voronoi"; import { VictoryTooltip } from "victory-tooltip"; @@ -38,7 +38,7 @@ class VoronoiDemo extends React.Component { } componentDidMount() { - /* eslint-disable react/no-did-mount-set-state */ + this.setStateInterval = window.setInterval(() => { this.setState({ data: this.getData(), diff --git a/demo/ts/components/victory-zoom-container-demo.tsx b/demo/ts/components/victory-zoom-container-demo.tsx index 73332f65d..432ce35ba 100644 --- a/demo/ts/components/victory-zoom-container-demo.tsx +++ b/demo/ts/components/victory-zoom-container-demo.tsx @@ -1,4 +1,4 @@ -/* eslint-disable no-magic-numbers,react/no-multi-comp */ + import React from "react"; import { range, random, minBy, maxBy, last } from "lodash"; import { VictoryChart } from "victory-chart"; @@ -170,7 +170,7 @@ export default class VictoryZoomContainerDemo extends React.Component< } componentDidMount() { - /* eslint-disable react/no-did-mount-set-state */ + this.setStateInterval = window.setInterval(() => { this.setState({ data: this.getData(), diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 000000000..f2f4c7944 --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,158 @@ +import eslint from "@eslint/js"; +import prettier from "eslint-plugin-prettier/recommended"; +import pluginJest from "eslint-plugin-jest"; +import pluginPromise from "eslint-plugin-promise"; +import react from "eslint-plugin-react"; +import reactHooks from "eslint-plugin-react-hooks"; +import tseslint from "typescript-eslint"; +import globals from "globals"; + +export default tseslint.config( + // enforce formatting + prettier, + + // global ignores + { + ignores: [ + "**/*.d.ts", + "**/.wireit/", + "**/artifacts/", + "**/coverage/", + "**/demo/rn/", + "**/dist/", + "**/es/", + "**/lib/", + "**/lib-vendor/", + "**/public/", + "**/storybook-static/", + "**/tmp/", + "website/src/theme/", + "website/src/plugins/", + ], + }, + + // Typescript and React Rules + { + files: ["**/*.{js,jsx,mjs,cjs,ts,tsx}"], + extends: [ + eslint.configs.recommended, + ...tseslint.configs.recommended, + react.configs.flat.recommended, + pluginPromise.configs["flat/recommended"], + ], + plugins: { + react, + "react-hooks": reactHooks, + }, + settings: { + react: { + version: "detect", + }, + }, + languageOptions: { + parserOptions: { + ecmaFeatures: { + jsx: true, + }, + }, + globals: { + ...globals.browser, + ...globals.node, + }, + }, + rules: { + // eslint overrides + eqeqeq: "error", + "max-depth": ["error", 4], + "max-nested-callbacks": ["error", 3], + "max-params": ["error", 3], + "no-console": "error", + "no-magic-numbers": [ + "error", + { ignore: [-1, 0, 0.5, 1, 2, 90, 180, 270, 360] }, + ], + "no-nested-ternary": "error", + "no-prototype-builtins": "off", + "no-param-reassign": "error", + "no-restricted-imports": [ + "error", + { + patterns: [ + { + group: ["victory*/src", "victory*/src/**"], + message: + "Be sure to import directly from Victory packages, not from /src folders!", + }, + ], + }, + ], + "no-shadow": "error", + "no-undef": "error", + "no-useless-escape": "off", + "prefer-arrow-callback": "error", + + // react overrides + "react/display-name": "off", + "react/prop-types": "off", + "react/no-multi-comp": "error", + ...reactHooks.configs.recommended.rules, + + // @typescript-eslint overrides + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-declaration-merging": "off", + }, + }, + + // Overrides for JS files + { + files: ["**/*.js"], + rules: { + "@typescript-eslint/no-require-imports": "off", + }, + }, + + // Overrides for Test files + { + files: ["**/*.test.*", "**/test/**/*", "**/jest-native-setup.tsx"], + plugins: { jest: pluginJest }, + languageOptions: { + globals: pluginJest.environments.globals.globals, + }, + rules: { + "react/sort-comp": "off", + "no-magic-numbers": "off", + "max-statements": "off", + "import/no-unresolved": "off", + "no-undef": "off", + "max-nested-callbacks": "off", + }, + }, + + // Overrides for Demos + { + files: ["**/demo/**/*.{ts,tsx}"], + rules: { + "no-magic-numbers": "off", + "prettier/prettier": "off", + "react/no-multi-comp": "off", + "@typescript-eslint/no-empty-object-type": "off", + }, + }, + + // Overrides for Storybook + { + files: ["**/stories/**/*.ts", "**/stories/**/*.stories.tsx"], + rules: { + "no-magic-numbers": "off", + "prettier/prettier": "off", + }, + }, + + // Overrides for Website + { + files: ["**/website/**/*.{js,ts,tsx}"], + rules: { + "prettier/prettier": "off", + }, + }, +); diff --git a/package-scripts.js b/package-scripts.js index 7368390a9..36ea7d02f 100644 --- a/package-scripts.js +++ b/package-scripts.js @@ -52,11 +52,6 @@ module.exports = { "format:root:fix": 'prettier --write "./*.js*" "./{scripts,config,demo,docs,stories,test}/*.{js,jsx,json,ts,tsx}"', - // - Lint - "lint:base": "eslint --cache --color", - "lint:pkg": 'nps "lint:base src"', - "lint:pkg:fix": 'nps "lint:base --fix src"', - // - TypeScript // TODO(2375): Can we cache / incremental? // https://github.com/FormidableLabs/victory/issues/2375 diff --git a/package.json b/package.json index d32bfdd28..f7edd53d1 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,6 @@ "devDependencies": { "@babel/cli": "7.23.9", "@babel/core": "7.23.9", - "@babel/eslint-parser": "7.23.9", "@babel/plugin-transform-export-namespace-from": "7.23.4", "@babel/plugin-transform-modules-commonjs": "7.23.3", "@babel/preset-env": "7.23.9", @@ -31,6 +30,7 @@ "@babel/preset-typescript": "7.23.3", "@changesets/cli": "^2.24.1", "@chromatic-com/storybook": "^3.2.2", + "@eslint/js": "^9.14.0", "@storybook/addon-essentials": "^8.4.1", "@storybook/addon-storysource": "^8.4.1", "@storybook/addon-webpack5-compiler-swc": "1.0.5", @@ -62,20 +62,17 @@ "cpx2": "^4.2.0", "cross-env": "^7.0.3", "css-loader": "^7.1.2", - "eslint": "^8.21.0", - "eslint-config-formidable": "^4.0.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-eslint-comments": "^3.2.0", - "eslint-plugin-filenames": "^1.2.0", - "eslint-plugin-import": "^2.20.1", - "eslint-plugin-jest": "^26.7.0", - "eslint-plugin-promise": "^6.0.0", - "eslint-plugin-react": "^7.0.0", - "eslint-plugin-react-hooks": "^4.2.0", - "eslint-plugin-storybook": "^0.10.2", + "eslint": "^9.14.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-jest": "^28.9.0", + "eslint-plugin-prettier": "^5.2.1", + "eslint-plugin-promise": "^7.1.0", + "eslint-plugin-react-hooks": "^5.0.0", + "eslint-plugin-react": "^7.37.2", "fork-ts-checker-webpack-plugin": "^8.0.0", "fs-extra": "^10.0.0", "glob": "8.0.3", + "globals": "^15.12.0", "immutable": "^3.8.2", "jest": "^29.7.0", "jest-environment-jsdom": "^29.7.0", @@ -87,7 +84,7 @@ "octokit": "^3.1.1", "postcss": "^8", "postcss-loader": "^8.1.1", - "prettier": "^2.6.2", + "prettier": "^3.3.3", "prop-types": "^15.8.1", "react": "^18.1.0", "react-dom": "^18.1.0", @@ -107,6 +104,7 @@ "ts-loader": "^9.3.0", "ts-node": "^10.9.1", "typescript": "^4.7.3", + "typescript-eslint": "^8.13.0", "unified": "^8.3.2", "victory-vendor": "*", "victory-voronoi": "*", @@ -282,7 +280,6 @@ "format:root": { "command": "nps format:root", "files": [ - ".eslintrc.js", "*.js", "*.json", "scripts", @@ -301,7 +298,6 @@ "format:root:fix": { "command": "pnpm run format:root || nps format:root:fix", "files": [ - ".eslintrc.js", "*.js", "*.json", "scripts", @@ -365,9 +361,8 @@ ] }, "lint:root": { - "command": "nps \"lint:base *.js scripts config demo stories test\"", + "command": "eslint --color *.js scripts config demo stories test", "files": [ - ".eslintrc.js", "*.js", "scripts", "config", @@ -382,9 +377,8 @@ ] }, "lint:root:fix": { - "command": "pnpm run lint:root || nps \"lint:base --fix *.js scripts config demo stories test\"", + "command": "eslint --color --fix *.js scripts config demo stories test", "files": [ - ".eslintrc.js", "*.js", "scripts", "config", @@ -399,37 +393,15 @@ ] }, "lint:pkgs": { + "command": "eslint --color packages", "dependencies": [ - "./packages/victory-native:lint", - "./packages/victory-vendor:lint", - "./packages/victory:lint", - "./packages/victory-area:lint", - "./packages/victory-axis:lint", - "./packages/victory-bar:lint", - "./packages/victory-box-plot:lint", - "./packages/victory-brush-container:lint", - "./packages/victory-brush-line:lint", - "./packages/victory-candlestick:lint", - "./packages/victory-canvas:lint", - "./packages/victory-chart:lint", - "./packages/victory-core:lint", - "./packages/victory-create-container:lint", - "./packages/victory-cursor-container:lint", - "./packages/victory-errorbar:lint", - "./packages/victory-group:lint", - "./packages/victory-histogram:lint", - "./packages/victory-legend:lint", - "./packages/victory-line:lint", - "./packages/victory-pie:lint", - "./packages/victory-polar-axis:lint", - "./packages/victory-scatter:lint", - "./packages/victory-selection-container:lint", - "./packages/victory-shared-events:lint", - "./packages/victory-stack:lint", - "./packages/victory-tooltip:lint", - "./packages/victory-voronoi:lint", - "./packages/victory-voronoi-container:lint", - "./packages/victory-zoom-container:lint" + "build" + ] + }, + "lint:pkgs:fix": { + "command": "eslint --color --fix packages", + "dependencies": [ + "build" ] }, "lint:docs": { @@ -568,40 +540,6 @@ "./packages/victory-zoom-container:types:create" ] }, - "lint:pkgs:fix": { - "dependencies": [ - "./packages/victory-native:lint:fix", - "./packages/victory-vendor:lint:fix", - "./packages/victory:lint:fix", - "./packages/victory-area:lint:fix", - "./packages/victory-axis:lint:fix", - "./packages/victory-bar:lint:fix", - "./packages/victory-box-plot:lint:fix", - "./packages/victory-brush-container:lint:fix", - "./packages/victory-brush-line:lint:fix", - "./packages/victory-candlestick:lint:fix", - "./packages/victory-canvas:lint:fix", - "./packages/victory-chart:lint:fix", - "./packages/victory-core:lint:fix", - "./packages/victory-create-container:lint:fix", - "./packages/victory-cursor-container:lint:fix", - "./packages/victory-errorbar:lint:fix", - "./packages/victory-group:lint:fix", - "./packages/victory-histogram:lint:fix", - "./packages/victory-legend:lint:fix", - "./packages/victory-line:lint:fix", - "./packages/victory-pie:lint:fix", - "./packages/victory-polar-axis:lint:fix", - "./packages/victory-scatter:lint:fix", - "./packages/victory-selection-container:lint:fix", - "./packages/victory-shared-events:lint:fix", - "./packages/victory-stack:lint:fix", - "./packages/victory-tooltip:lint:fix", - "./packages/victory-voronoi:lint:fix", - "./packages/victory-voronoi-container:lint:fix", - "./packages/victory-zoom-container:lint:fix" - ] - }, "format:pkgs:fix": { "dependencies": [ "./packages/victory-native:format:fix", diff --git a/packages/victory-area/package.json b/packages/victory-area/package.json index 7c9108b15..881510ca1 100644 --- a/packages/victory-area/package.json +++ b/packages/victory-area/package.json @@ -236,11 +236,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -255,11 +253,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-area/src/area.tsx b/packages/victory-area/src/area.tsx index 92b559f5a..52ffc5091 100644 --- a/packages/victory-area/src/area.tsx +++ b/packages/victory-area/src/area.tsx @@ -178,7 +178,7 @@ export const Area: React.FC = (initialProps) => { export interface AreaProps extends VictoryCommonPrimitiveProps { horizontal?: VictoryCommonThemeProps["horizontal"]; groupComponent?: React.ReactElement; - // eslint-disable-next-line @typescript-eslint/ban-types + // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type interpolation?: string | Function; pathComponent?: React.ReactElement; } diff --git a/packages/victory-area/src/victory-area.test.tsx b/packages/victory-area/src/victory-area.test.tsx index dd6a9e45b..9c9bfc9ab 100644 --- a/packages/victory-area/src/victory-area.test.tsx +++ b/packages/victory-area/src/victory-area.test.tsx @@ -118,7 +118,7 @@ describe("components/victory-area", () => { interpolation: "linear", sortKey: "x", data: Helpers.range(5) - // eslint-disable-next-line max-nested-callbacks + .map((i) => ({ x: i, y: i, y0: 0 })) .reverse(), }; diff --git a/packages/victory-area/src/victory-area.tsx b/packages/victory-area/src/victory-area.tsx index ddf1fdb06..64c821909 100644 --- a/packages/victory-area/src/victory-area.tsx +++ b/packages/victory-area/src/victory-area.tsx @@ -45,12 +45,12 @@ export interface VictoryAreaProps VictoryMultiLabelableProps { eventKey?: string[] | number[] | StringOrNumberOrCallback; events?: EventPropTypeInterface[]; - // eslint-disable-next-line @typescript-eslint/ban-types + // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type interpolation?: InterpolationPropType | Function; style?: VictoryStyleInterface; } -// eslint-disable-next-line @typescript-eslint/no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-object-type interface VictoryAreaBase extends EventsMixinClass {} /** diff --git a/packages/victory-axis/package.json b/packages/victory-axis/package.json index f0da73ab2..1d9f5d058 100644 --- a/packages/victory-axis/package.json +++ b/packages/victory-axis/package.json @@ -226,11 +226,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -243,11 +241,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-axis/src/helper-methods.tsx b/packages/victory-axis/src/helper-methods.tsx index 669219a1f..f5dc73d8b 100644 --- a/packages/victory-axis/src/helper-methods.tsx +++ b/packages/victory-axis/src/helper-methods.tsx @@ -267,7 +267,6 @@ const isEqual = (a, b) => { return a === b; }; -// eslint-disable-next-line complexity const getOffset = (props, calculatedValues) => { const { scale, origin, orientation, orientations, domain, padding } = calculatedValues; @@ -318,7 +317,6 @@ const getOffset = (props, calculatedValues) => { }; }; -// eslint-disable-next-line complexity const getHorizontalOffset = (props, calculatedValues) => { const { scale, origin, orientation, orientations, domain, padding } = calculatedValues; @@ -466,7 +464,6 @@ const getOrientation = (props) => { : defaultOrientations.independent; }; -// eslint-disable-next-line complexity const getCalculatedValues = (props) => { const defaultStyles = getStyleObject(props); const style = getStyles(props, defaultStyles); @@ -604,7 +601,7 @@ export const getBaseProps = (initialProps, fallbackProps) => { ? { [otherAxis]: props.scale[otherAxis] } : undefined, }; - // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-assertion + return (ticks as number[]).reduce((childProps, tickValue, index) => { const tick = stringTicks ? stringTicks[index] : tickValue; const text = tickFormat(tickValue, index, ticks); diff --git a/packages/victory-axis/src/victory-axis.tsx b/packages/victory-axis/src/victory-axis.tsx index 04276543e..a83214aa0 100644 --- a/packages/victory-axis/src/victory-axis.tsx +++ b/packages/victory-axis/src/victory-axis.tsx @@ -55,7 +55,7 @@ export interface VictoryAxisProps orientation?: OrientationTypes; } -// eslint-disable-next-line @typescript-eslint/no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-object-type interface VictoryAxisBase extends EventsMixinClass {} class VictoryAxisBase extends React.Component { diff --git a/packages/victory-bar/package.json b/packages/victory-bar/package.json index 286879af9..ee910faf8 100644 --- a/packages/victory-bar/package.json +++ b/packages/victory-bar/package.json @@ -236,11 +236,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -255,11 +253,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-bar/src/bar.tsx b/packages/victory-bar/src/bar.tsx index d27b70952..8af3d663e 100644 --- a/packages/victory-bar/src/bar.tsx +++ b/packages/victory-bar/src/bar.tsx @@ -74,37 +74,36 @@ const defaultProps: Partial = { shapeRendering: "auto", }; -// eslint-disable-next-line prefer-arrow-callback -export const Bar = forwardRef(function Bar( - initialProps, - ref, -) { - const props = evaluateProps(defaults({}, initialProps, defaultProps)); - const { polar, origin, style, barWidth, cornerRadius } = props; +export const Bar = forwardRef( + // eslint-disable-next-line prefer-arrow-callback + function Bar(initialProps, ref) { + const props = evaluateProps(defaults({}, initialProps, defaultProps)); + const { polar, origin, style, barWidth, cornerRadius } = props; - const path = polar - ? getPolarBarPath(props, cornerRadius) - : getBarPath(props, barWidth, cornerRadius); - const defaultTransform = - polar && origin ? `translate(${origin.x}, ${origin.y})` : undefined; + const path = polar + ? getPolarBarPath(props, cornerRadius) + : getBarPath(props, barWidth, cornerRadius); + const defaultTransform = + polar && origin ? `translate(${origin.x}, ${origin.y})` : undefined; - if (!props.pathComponent) { - return null; - } + if (!props.pathComponent) { + return null; + } - return React.cloneElement(props.pathComponent, { - ...props.events, - "aria-label": props.ariaLabel, - style, - d: path, - className: props.className, - clipPath: props.clipPath, - desc: props.desc, - index: props.index, - role: props.role, - shapeRendering: props.shapeRendering, - transform: props.transform || defaultTransform, - tabIndex: props.tabIndex, - ref, - }); -}); + return React.cloneElement(props.pathComponent, { + ...props.events, + "aria-label": props.ariaLabel, + style, + d: path, + className: props.className, + clipPath: props.clipPath, + desc: props.desc, + index: props.index, + role: props.role, + shapeRendering: props.shapeRendering, + transform: props.transform || defaultTransform, + tabIndex: props.tabIndex, + ref, + }); + }, +); diff --git a/packages/victory-bar/src/geometry-helper-methods.ts b/packages/victory-bar/src/geometry-helper-methods.ts index a56af403f..4efd1f4e9 100644 --- a/packages/victory-bar/src/geometry-helper-methods.ts +++ b/packages/victory-bar/src/geometry-helper-methods.ts @@ -66,7 +66,6 @@ export const circle = (center: Center, radius: number) => ({ // Left-most point is returned as 0th element of array // Right-most point is returned as 1st elemennt of array intersection(circle1: { center: Center; radius: number }) { - // eslint-disable-line max-statements const P0 = this.center; const P1 = circle1.center; const r0 = this.radius; diff --git a/packages/victory-bar/src/path-helper-methods.ts b/packages/victory-bar/src/path-helper-methods.ts index 44209e1c1..d143f0e36 100644 --- a/packages/victory-bar/src/path-helper-methods.ts +++ b/packages/victory-bar/src/path-helper-methods.ts @@ -119,7 +119,6 @@ const mapPointsToPath = (coords, cornerRadius, direction) => { const getVerticalBarPoints = (position, sign, cr) => { const { x0, x1, y0, y1 } = position; - // eslint-disable-next-line max-statements, max-len const getHalfPoints = (side) => { const isLeft = side === "Left"; const signL = isLeft ? 1 : -1; @@ -177,7 +176,6 @@ const getHorizontalBarPoints = (position, sign, cr) => { const x0 = position.x0 < position.x1 ? position.x0 : position.x1; const x1 = position.x0 < position.x1 ? position.x1 : position.x0; - // eslint-disable-next-line max-statements, max-len const getHalfPoints = (side) => { const isTop = side === "top"; const signL = isTop ? -1 : 1; @@ -234,7 +232,6 @@ const getHorizontalBarPoints = (position, sign, cr) => { ]; }; -// eslint-disable-next-line max-params export const getVerticalBarPath = (props, width, cornerRadius) => { const position = getPosition(props, width); @@ -244,7 +241,6 @@ export const getVerticalBarPath = (props, width, cornerRadius) => { return mapPointsToPath(points, cornerRadius, direction); }; -// eslint-disable-next-line max-params export const getHorizontalBarPath = (props, width, cornerRadius) => { const position = getPosition(props, width); @@ -310,7 +306,6 @@ export const getVerticalPolarBarPath = (props: BarProps, cornerRadius) => { }; }; - // eslint-disable-next-line max-statements const getTopPath = () => { const { topRight, topLeft } = cornerRadius; const arcLength = r2 * Math.abs(end - start); @@ -360,7 +355,6 @@ export const getVerticalPolarBarPath = (props: BarProps, cornerRadius) => { })); }; - // eslint-disable-next-line max-statements const getBottomPath = () => { const { bottomRight, bottomLeft } = cornerRadius; const arcLength = r1 * Math.abs(end - start); diff --git a/packages/victory-bar/src/victory-bar.tsx b/packages/victory-bar/src/victory-bar.tsx index c5d240eb8..11723bce3 100644 --- a/packages/victory-bar/src/victory-bar.tsx +++ b/packages/victory-bar/src/victory-bar.tsx @@ -66,7 +66,7 @@ const defaultData = [ { x: 4, y: 4 }, ]; -// eslint-disable-next-line @typescript-eslint/no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-object-type interface VictoryBarBase extends EventsMixinClass {} /** diff --git a/packages/victory-box-plot/package.json b/packages/victory-box-plot/package.json index 3e2308cb5..f84355d53 100644 --- a/packages/victory-box-plot/package.json +++ b/packages/victory-box-plot/package.json @@ -236,11 +236,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -255,11 +253,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-box-plot/src/helper-methods.tsx b/packages/victory-box-plot/src/helper-methods.tsx index 09171d31c..812b8f8b9 100644 --- a/packages/victory-box-plot/src/helper-methods.tsx +++ b/packages/victory-box-plot/src/helper-methods.tsx @@ -238,7 +238,6 @@ const getCalculatedValues = (props) => { return { data, horizontal, domain, scale, style, labelOrientation, boxWidth }; }; -// eslint-disable-next-line complexity const getWhiskerProps = (props, type) => { const { horizontal, diff --git a/packages/victory-box-plot/src/victory-box-plot.tsx b/packages/victory-box-plot/src/victory-box-plot.tsx index 3b1738bb9..3da1324dd 100644 --- a/packages/victory-box-plot/src/victory-box-plot.tsx +++ b/packages/victory-box-plot/src/victory-box-plot.tsx @@ -122,7 +122,7 @@ export interface VictoryBoxPlotProps whiskerWidth?: number; } -// eslint-disable-next-line @typescript-eslint/no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-object-type interface VictoryBoxPlotBase extends EventsMixinClass {} class VictoryBoxPlotBase extends React.Component { diff --git a/packages/victory-brush-container/package.json b/packages/victory-brush-container/package.json index 6e5af09fc..14364b099 100644 --- a/packages/victory-brush-container/package.json +++ b/packages/victory-brush-container/package.json @@ -227,11 +227,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -244,11 +242,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-brush-container/src/brush-helpers.test.tsx b/packages/victory-brush-container/src/brush-helpers.test.tsx index f61d94ed5..66b34a3f2 100644 --- a/packages/victory-brush-container/src/brush-helpers.test.tsx +++ b/packages/victory-brush-container/src/brush-helpers.test.tsx @@ -1,7 +1,6 @@ import { BrushHelpers } from "./brush-helpers"; describe("containers/brush-helpers", () => { - // eslint-disable-next-line @typescript-eslint/unbound-method const { withinBounds, constrainBox } = BrushHelpers; describe("withinBounds", () => { it("returns true when within bounds", () => { diff --git a/packages/victory-brush-container/src/brush-helpers.ts b/packages/victory-brush-container/src/brush-helpers.ts index 96cc8a30c..153992573 100644 --- a/packages/victory-brush-container/src/brush-helpers.ts +++ b/packages/victory-brush-container/src/brush-helpers.ts @@ -222,7 +222,6 @@ const Helpers = { } }, - // eslint-disable-next-line max-statements, complexity onMouseDown(evt, targetProps) { evt.preventDefault(); const { @@ -324,7 +323,6 @@ const Helpers = { : {}; }, - // eslint-disable-next-line max-statements, complexity onGlobalMouseMove(evt, targetProps) { const { scale, @@ -416,13 +414,12 @@ const Helpers = { return {}; }, - // eslint-disable-next-line complexity onGlobalMouseUp(evt, targetProps) { // if a panning or selection has not been started, ignore the event if (!targetProps.isPanning && !targetProps.isSelecting) { return {}; } - // eslint-disable-line max-statements, complexity + const { x1, y1, diff --git a/packages/victory-brush-line/package.json b/packages/victory-brush-line/package.json index 529fa03e9..82df22565 100644 --- a/packages/victory-brush-line/package.json +++ b/packages/victory-brush-line/package.json @@ -227,11 +227,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -244,11 +242,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-brush-line/src/victory-brush-line.tsx b/packages/victory-brush-line/src/victory-brush-line.tsx index ac95d16a5..3b1b54822 100644 --- a/packages/victory-brush-line/src/victory-brush-line.tsx +++ b/packages/victory-brush-line/src/victory-brush-line.tsx @@ -306,7 +306,7 @@ export class VictoryBrushLine< ] : []; }, - // eslint-disable-next-line max-statements, complexity + onMouseMove: (evt, targetProps) => { const { isPanning, diff --git a/packages/victory-candlestick/package.json b/packages/victory-candlestick/package.json index 1137035a4..455a30a96 100644 --- a/packages/victory-candlestick/package.json +++ b/packages/victory-candlestick/package.json @@ -231,11 +231,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -249,11 +247,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-candlestick/src/helper-methods.ts b/packages/victory-candlestick/src/helper-methods.ts index 24b72a8dc..51c0fa741 100644 --- a/packages/victory-candlestick/src/helper-methods.ts +++ b/packages/victory-candlestick/src/helper-methods.ts @@ -127,7 +127,7 @@ const getStyles = ( }; // This method will edit or remove candlestick data points that fall outside of the desired domain -// eslint-disable-next-line complexity + const formatDataFromDomain = (datum, domain) => { const minDomainX = Collection.getMinValue(domain.x); const maxDomainX = Collection.getMaxValue(domain.x); @@ -245,7 +245,6 @@ const getOrientation = (labelOrientation, type = "labels") => { : labelOrientation; }; -/* eslint-disable complexity*/ const calculatePlotValues = (props) => { const { positions, @@ -292,7 +291,6 @@ const calculatePlotValues = (props) => { return { yValue, xValue, dx, dy }; }; -/* eslint-enable complexity*/ /* eslint-disable max-params*/ const getLabelProps = (props, text, style, type?: string) => { @@ -374,7 +372,6 @@ const getLabelProps = (props, text, style, type?: string) => { /* eslint-enable max-params*/ export const getBaseProps = (initialProps, fallbackProps) => { - // eslint-disable-line max-statements const props = Helpers.modifyProps(initialProps, fallbackProps, "candlestick"); const calculatedValues = getCalculatedValues(props); const { data, style, scale, domain, origin, labelOrientation } = @@ -415,7 +412,6 @@ export const getBaseProps = (initialProps, fallbackProps) => { }, }; - // eslint-disable-next-line complexity return data.reduce((childProps, datum, index) => { const eventKey = !Helpers.isNil(datum.eventKey) ? datum.eventKey : index; const x = scale.x(datum._x1 !== undefined ? datum._x1 : datum._x); diff --git a/packages/victory-candlestick/src/victory-candlestick.tsx b/packages/victory-candlestick/src/victory-candlestick.tsx index 9178c3c35..76d78b87f 100644 --- a/packages/victory-candlestick/src/victory-candlestick.tsx +++ b/packages/victory-candlestick/src/victory-candlestick.tsx @@ -127,7 +127,7 @@ const datumHasXandY = (datum) => { return !Helpers.isNil(datum._x) && !Helpers.isNil(datum._y); }; -// eslint-disable-next-line @typescript-eslint/no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-object-type interface VictoryCandlestickBase extends EventsMixinClass {} diff --git a/packages/victory-canvas/package.json b/packages/victory-canvas/package.json index 07ab0b34c..a5f290fc3 100644 --- a/packages/victory-canvas/package.json +++ b/packages/victory-canvas/package.json @@ -233,11 +233,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -251,11 +249,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-canvas/src/canvas-curve.tsx b/packages/victory-canvas/src/canvas-curve.tsx index 7a8e19f91..d793eb90a 100644 --- a/packages/victory-canvas/src/canvas-curve.tsx +++ b/packages/victory-canvas/src/canvas-curve.tsx @@ -10,7 +10,7 @@ import { LineRadial } from "../../victory-vendor/d3-shape"; export interface CanvasCurveProps extends VictoryCommonPrimitiveProps { ariaLabel?: StringOrCallback; - // eslint-disable-next-line @typescript-eslint/ban-types + // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type interpolation?: string | Function; openCurve?: boolean; tabIndex?: NumberOrCallback; diff --git a/packages/victory-canvas/src/canvas-point.tsx b/packages/victory-canvas/src/canvas-point.tsx index 5642a03e0..4e1852fb4 100644 --- a/packages/victory-canvas/src/canvas-point.tsx +++ b/packages/victory-canvas/src/canvas-point.tsx @@ -10,9 +10,9 @@ import { useCanvasContext } from "./hooks/use-canvas-context"; export interface CanvasPointProps extends VictoryCommonPrimitiveProps { datum?: any; getPath?: (x: number, y: number, size: number) => string; - // eslint-disable-next-line @typescript-eslint/ban-types + // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type size?: number | Function; - // eslint-disable-next-line @typescript-eslint/ban-types + // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type symbol?: ScatterSymbolType | Function; x?: number; y?: number; @@ -68,7 +68,7 @@ export const CanvasPoint = (props: CanvasPointProps) => { const { style } = modifiedProps; const path = getPath(modifiedProps); ctx.fillStyle = style.fill; - // eslint-disable-next-line no-undef + const path2d = new Path2D(path); ctx.fill(path2d); }, diff --git a/packages/victory-chart/package.json b/packages/victory-chart/package.json index 29878f2f8..4d2bcdc16 100644 --- a/packages/victory-chart/package.json +++ b/packages/victory-chart/package.json @@ -248,11 +248,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -268,11 +266,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-chart/src/helper-methods.tsx b/packages/victory-chart/src/helper-methods.tsx index d83d25550..d427c29ec 100644 --- a/packages/victory-chart/src/helper-methods.tsx +++ b/packages/victory-chart/src/helper-methods.tsx @@ -1,5 +1,3 @@ -/* eslint-disable no-use-before-define */ - import React from "react"; import { Helpers, Scale, Axis, Wrapper } from "victory-core"; import { defaults } from "lodash"; diff --git a/packages/victory-core/package.json b/packages/victory-core/package.json index 32bd753af..ea237c5fe 100644 --- a/packages/victory-core/package.json +++ b/packages/victory-core/package.json @@ -226,11 +226,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -243,11 +241,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-core/src/exports.test.ts b/packages/victory-core/src/exports.test.ts index a50f5c7a0..5cbfba185 100644 --- a/packages/victory-core/src/exports.test.ts +++ b/packages/victory-core/src/exports.test.ts @@ -1,7 +1,6 @@ import * as VictoryCore from "./index"; /* eslint-disable @typescript-eslint/no-unused-vars */ -/* eslint-disable import/named */ // We don't need eslint to validate imports; TypeScript handles that for us. // Import EVERYTHING from 'victory-core' to ensure it's getting exported correctly: import { diff --git a/packages/victory-core/src/victory-animation/util.ts b/packages/victory-core/src/victory-animation/util.ts index bb7509ca7..0ebab4b97 100644 --- a/packages/victory-core/src/victory-animation/util.ts +++ b/packages/victory-core/src/victory-animation/util.ts @@ -83,7 +83,7 @@ export const interpolateFunction = function (a, b) { return b; } return function (this: unknown) { - /* eslint-disable no-invalid-this, prefer-rest-params */ + /* eslint-disable prefer-rest-params */ const aval = typeof a === "function" ? a.apply(this, arguments) : a; const bval = typeof b === "function" ? b.apply(this, arguments) : b; return interpolate(aval, bval)(t); diff --git a/packages/victory-core/src/victory-label/victory-label.test.tsx b/packages/victory-core/src/victory-label/victory-label.test.tsx index 2c227a5b1..e4c5a5e0a 100644 --- a/packages/victory-core/src/victory-label/victory-label.test.tsx +++ b/packages/victory-core/src/victory-label/victory-label.test.tsx @@ -72,7 +72,7 @@ describe("components/victory-label", () => { it("strips px from fontSize", () => { // This suppresses the warning about the fontSize being a string. // TODO: For some reason this test file doesn't respect the eslint override for this rule. - // eslint-disable-next-line @typescript-eslint/no-empty-function + jest.spyOn(console, "warn").mockImplementation(() => {}); const { container } = render( { it("uses a default fontSize when an invalid fontSize is given", () => { // This suppresses the console warning for invalid fontSize prop // TODO: For some reason this test file doesn't respect the eslint override for this rule. - // eslint-disable-next-line @typescript-eslint/no-empty-function + jest.spyOn(Log, "warn").mockImplementation(() => {}); const { container } = render( diff --git a/packages/victory-core/src/victory-primitives/point.test.tsx b/packages/victory-core/src/victory-primitives/point.test.tsx index 18bd45a30..ae88178a6 100644 --- a/packages/victory-core/src/victory-primitives/point.test.tsx +++ b/packages/victory-core/src/victory-primitives/point.test.tsx @@ -28,7 +28,7 @@ describe("victory-primitives/point", () => { it(`should render the appropriate symbol for "${symbol}"`, () => { const stub = jest .spyOn(PointPathHelpers, symbol) - // eslint-disable-next-line max-nested-callbacks + .mockImplementation(() => `${symbol} symbol`); const props = Object.assign({}, baseProps, { symbol }); const { container } = render(, { diff --git a/packages/victory-core/src/victory-primitives/point.tsx b/packages/victory-core/src/victory-primitives/point.tsx index f16f350b6..367fd268b 100644 --- a/packages/victory-core/src/victory-primitives/point.tsx +++ b/packages/victory-core/src/victory-primitives/point.tsx @@ -12,9 +12,9 @@ export interface PointProps extends VictoryCommonPrimitiveProps { datum?: any; getPath?: (x: number, y: number, size: number) => string; pathComponent?: React.ReactElement; - // eslint-disable-next-line @typescript-eslint/ban-types + // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type size?: number | Function; - // eslint-disable-next-line @typescript-eslint/ban-types + // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type symbol?: ScatterSymbolType | Function; x?: number; y?: number; diff --git a/packages/victory-core/src/victory-transition/victory-transition.tsx b/packages/victory-core/src/victory-transition/victory-transition.tsx index 10a60665a..ceada2f66 100644 --- a/packages/victory-core/src/victory-transition/victory-transition.tsx +++ b/packages/victory-core/src/victory-transition/victory-transition.tsx @@ -66,7 +66,7 @@ export class VictoryTransition extends React.Component< } componentDidMount() { - this.setState({ nodesShouldLoad: true }); // eslint-disable-line react/no-did-mount-set-state + this.setState({ nodesShouldLoad: true }); } shouldComponentUpdate(nextProps: VictoryTransitionProps) { diff --git a/packages/victory-core/src/victory-util/add-events.tsx b/packages/victory-core/src/victory-util/add-events.tsx index d4c4a9c85..0ec736bb7 100644 --- a/packages/victory-core/src/victory-util/add-events.tsx +++ b/packages/victory-core/src/victory-util/add-events.tsx @@ -127,7 +127,7 @@ export function addEvents< TBase extends WrappedComponentClass, TProps extends EventMixinCommonProps, >(WrappedComponent: TBase, options: MixinOptions = {}) { - // eslint-disable-next-line @typescript-eslint/no-empty-interface + // eslint-disable-next-line @typescript-eslint/no-empty-object-type interface AddEventsMixin extends EventMixinCalculatedValues {} // @ts-expect-error "TS2545: A mixin class must have a constructor with a single rest parameter of type 'any[]'." diff --git a/packages/victory-core/src/victory-util/axis.tsx b/packages/victory-core/src/victory-util/axis.tsx index d211d18f6..c47e6c83f 100644 --- a/packages/victory-core/src/victory-util/axis.tsx +++ b/packages/victory-core/src/victory-util/axis.tsx @@ -313,7 +313,7 @@ export function getTicks(props, scale: D3Scale, filterZero = false) { * @param {String} axis: either x or y * @returns {Array} returns a domain from tickValues */ -// eslint-disable-next-line max-statements + function getDomainFromData(props, axis) { const { polar, startAngle = 0, endAngle = 360 } = props; const tickArray = getTickArray(props); diff --git a/packages/victory-core/src/victory-util/common-props.tsx b/packages/victory-core/src/victory-util/common-props.tsx index dbe8fe8d6..8dc0fca1d 100644 --- a/packages/victory-core/src/victory-util/common-props.tsx +++ b/packages/victory-core/src/victory-util/common-props.tsx @@ -57,7 +57,7 @@ export interface VictoryCommonThemeProps { x?: ScalePropType | D3Scale; y?: ScalePropType | D3Scale; }; - // eslint-disable-next-line @typescript-eslint/ban-types + // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type sharedEvents?: { events: any[]; getEventState: Function }; singleQuadrantDomainPadding?: boolean | { x?: boolean; y?: boolean }; standalone?: boolean; @@ -72,11 +72,11 @@ export interface VictoryCommonPrimitiveProps { className?: string; clipPath?: string; data?: any; - // eslint-disable-next-line @typescript-eslint/ban-types + // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type desc?: string | Function; disableInlineStyles?: boolean; events?: object; - // eslint-disable-next-line @typescript-eslint/ban-types + // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type id?: number | string | Function; index?: number | string; origin?: OriginType; diff --git a/packages/victory-core/src/victory-util/data.ts b/packages/victory-core/src/victory-util/data.ts index 6a207154c..a682a1934 100644 --- a/packages/victory-core/src/victory-util/data.ts +++ b/packages/victory-core/src/victory-util/data.ts @@ -1,4 +1,3 @@ -/* eslint-disable no-use-before-define */ import React from "react"; import { uniq, @@ -141,7 +140,6 @@ export function formatDataFromDomain(dataset, domain, defaultBaseline?) { const isOverMaxX = overMax(maxDomainX); const isOverMaxY = overMax(maxDomainY); - // eslint-disable-next-line complexity return dataset.map((datum) => { let { _x, _y, _y0, _y1 } = datum; @@ -283,7 +281,6 @@ export function formatData( const data = preformattedData ? dataset : dataset.reduce((dataArr, datum, index) => { - // eslint-disable-line complexity const parsedDatum = parseDatum(datum); const fallbackValues = { x: index, y: parsedDatum }; const processedValues = expectedKeys!.reduce((memo, type) => { diff --git a/packages/victory-core/src/victory-util/domain.ts b/packages/victory-core/src/victory-util/domain.ts index 52da12f65..ef7d9bd22 100644 --- a/packages/victory-core/src/victory-util/domain.ts +++ b/packages/victory-core/src/victory-util/domain.ts @@ -1,4 +1,3 @@ -/* eslint-disable no-use-before-define */ import React from "react"; import { isPlainObject, sortedUniq, isDate } from "lodash"; import * as Data from "./data"; @@ -67,7 +66,6 @@ function getExtremeFromData(dataset, axis, type = "min") { return containsDate ? new Date(result) : result; } -// eslint-disable-next-line max-statements function padDomain(domain, props, axis) { if (!props.domainPadding) { return domain; diff --git a/packages/victory-core/src/victory-util/events.ts b/packages/victory-core/src/victory-util/events.ts index b12c551e0..4c0ab4717 100644 --- a/packages/victory-core/src/victory-util/events.ts +++ b/packages/victory-core/src/victory-util/events.ts @@ -1,4 +1,5 @@ -/* eslint-disable no-use-before-define */ +import React from "react"; + import { isEmpty, pickBy, omitBy, uniq } from "lodash"; import type { EventMixinCalculatedValues } from "./add-events"; import { isFunction } from "./helpers"; @@ -72,9 +73,12 @@ export function getEvents( const selectedEvents = getSelectedEvents(); return ( Array.isArray(selectedEvents) && - selectedEvents.reduce((memo, event) => { - return event ? Object.assign(memo, event.eventHandlers) : memo; - }, {} as ComponentEvent["eventHandlers"]) + selectedEvents.reduce( + (memo, event) => { + return event ? Object.assign(memo, event.eventHandlers) : memo; + }, + {} as ComponentEvent["eventHandlers"], + ) ); }; @@ -84,13 +88,13 @@ export function getEvents( */ const getAllEvents = () => { // Mandatory usage: `getEvents.bind(this)` - /* eslint-disable no-invalid-this */ + if (Array.isArray(this.componentEvents)) { return Array.isArray(props.events) ? this.componentEvents.concat(...props.events) : this.componentEvents; } - /* eslint-enable no-invalid-this */ + return props.events; }; @@ -127,12 +131,12 @@ export function getScopedEvents( } // Mandatory usage: `getScopedEvents.bind(this)` - // eslint-disable-next-line no-invalid-this + const newBaseProps = baseProps || this.baseProps; // returns the original base props or base state of a given target element const getTargetProps = (identifier, type) => { const { childName, target, key } = identifier; - // eslint-disable-next-line no-invalid-this + const baseType = type === "props" ? newBaseProps : this.state || {}; const base = childName === undefined || childName === null || !baseType[childName] @@ -173,7 +177,6 @@ export function getScopedEvents( // returns the state object with mutated props applied for a single key const getMutationObject = (key, childName) => { - // eslint-disable-next-line no-invalid-this const baseState = this.state || {}; if (!isFunction(eventReturn.mutation)) { return baseState; @@ -270,11 +273,10 @@ export function getScopedEvents( // into a state mutation, and calls setState // eslint-disable-next-line max-params const onEvent = (evt, childProps, eventKey, eventName) => { - // eslint-disable-next-line no-invalid-this const eventReturn = events[eventName](evt, childProps, eventKey, this); if (!isEmpty(eventReturn)) { const callbacks = compileCallbacks(eventReturn); - // eslint-disable-next-line no-invalid-this + this.setState(parseEventReturn(eventReturn, eventKey), callbacks); } }; @@ -319,7 +321,7 @@ export function getEventState( childType?: string, ) { // Mandatory usage: `getEventState.bind(this)` - // eslint-disable-next-line no-invalid-this + const state = this.state || {}; if (!childType) { return eventKey === "parent" diff --git a/packages/victory-core/src/victory-util/helpers.ts b/packages/victory-core/src/victory-util/helpers.ts index 24d7a8482..9faefcbe4 100644 --- a/packages/victory-core/src/victory-util/helpers.ts +++ b/packages/victory-core/src/victory-util/helpers.ts @@ -1,4 +1,3 @@ -/* eslint-disable no-use-before-define */ import React, { isValidElement } from "react"; import { defaults, property, pick } from "lodash"; import { CallbackArgs } from "../types/callbacks"; diff --git a/packages/victory-core/src/victory-util/immutable.test.ts b/packages/victory-core/src/victory-util/immutable.test.ts index 6d924fdc8..2de5ee051 100644 --- a/packages/victory-core/src/victory-util/immutable.test.ts +++ b/packages/victory-core/src/victory-util/immutable.test.ts @@ -2,7 +2,7 @@ import * as Immutable from "./immutable"; describe("victory-util/immutable", () => { it("should have valid type guards", () => { - // eslint-disable-next-line @typescript-eslint/no-unused-vars, @typescript-eslint/no-empty-function + // eslint-disable-next-line @typescript-eslint/no-unused-vars function noop(arg: unknown) {} // eslint-disable-next-line @typescript-eslint/no-unused-vars function typeChecks() { diff --git a/packages/victory-core/src/victory-util/label-helpers.ts b/packages/victory-core/src/victory-util/label-helpers.ts index 86961795f..4f9585c89 100644 --- a/packages/victory-core/src/victory-util/label-helpers.ts +++ b/packages/victory-core/src/victory-util/label-helpers.ts @@ -1,4 +1,3 @@ -/* eslint-disable no-use-before-define */ import { VictoryLabelProps } from "../victory-label/victory-label"; import * as Helpers from "./helpers"; import { defaults } from "lodash"; diff --git a/packages/victory-core/src/victory-util/merge-refs.ts b/packages/victory-core/src/victory-util/merge-refs.ts index ee08c87c2..19c3ee0da 100644 --- a/packages/victory-core/src/victory-util/merge-refs.ts +++ b/packages/victory-core/src/victory-util/merge-refs.ts @@ -1,3 +1,5 @@ +import React from "react"; + import * as Helpers from "./helpers"; type Ref = React.MutableRefObject | React.LegacyRef | undefined | null; diff --git a/packages/victory-core/src/victory-util/scale.test.ts b/packages/victory-core/src/victory-util/scale.test.ts index 6a16e897e..71f011a6d 100644 --- a/packages/victory-core/src/victory-util/scale.test.ts +++ b/packages/victory-core/src/victory-util/scale.test.ts @@ -104,7 +104,7 @@ describe("victory-util/scale", () => { describe("getType", () => { it("returns undefined on unknown function type", () => { // TODO: For some reason this test file doesn't respect the eslint override for this rule. - // eslint-disable-next-line @typescript-eslint/no-empty-function + const scaleType = Scale.getType(() => {}); expect(scaleType).toBeUndefined(); }); diff --git a/packages/victory-core/src/victory-util/scale.ts b/packages/victory-core/src/victory-util/scale.ts index e90f18350..e778d534a 100644 --- a/packages/victory-core/src/victory-util/scale.ts +++ b/packages/victory-core/src/victory-util/scale.ts @@ -1,4 +1,3 @@ -/* eslint-disable no-use-before-define */ import { isPlainObject } from "lodash"; import * as Helpers from "./helpers"; import * as Collection from "./collection"; diff --git a/packages/victory-core/src/victory-util/transitions.ts b/packages/victory-core/src/victory-util/transitions.ts index 5167d7616..7c640a422 100644 --- a/packages/victory-core/src/victory-util/transitions.ts +++ b/packages/victory-core/src/victory-util/transitions.ts @@ -156,7 +156,6 @@ function getChildBeforeLoad(animate, child, data, cb): TransitionProps { return { animate: newAnimate, data: newData, clipWidth: 0 }; } -// eslint-disable-next-line max-params function getChildOnLoad(animate, data, cb): TransitionProps { const newAnimate = Object.assign({}, animate, { onEnd: cb }); let newData = data; @@ -174,7 +173,7 @@ function getChildOnLoad(animate, data, cb): TransitionProps { return { animate: newAnimate, data: newData }; } -// eslint-disable-next-line max-params, max-len +// eslint-disable-next-line max-params function getChildPropsOnExit( animate, child, @@ -208,7 +207,7 @@ function getChildPropsOnExit( return { animate: newAnimate, data: newData }; } -// eslint-disable-next-line max-params,max-len +// eslint-disable-next-line max-params function getChildPropsBeforeEnter( animate, child, @@ -240,7 +239,7 @@ function getChildPropsBeforeEnter( return { animate: newAnimate, data: newData }; } -// eslint-disable-next-line max-params, max-len +// eslint-disable-next-line max-params function getChildPropsOnEnter( animate, data, @@ -357,7 +356,6 @@ export function getTransitionPropsFactory(props, state, setState) { return {}; }; - // eslint-disable-next-line max-statements, complexity, max-len return function getTransitionProps(child, index): TransitionProps { const data = getChildData(child) || []; const animate: AnimatePropTypeInterface = defaults( diff --git a/packages/victory-core/src/victory-util/type-helpers.ts b/packages/victory-core/src/victory-util/type-helpers.ts index 84a899cd0..b160edc05 100644 --- a/packages/victory-core/src/victory-util/type-helpers.ts +++ b/packages/victory-core/src/victory-util/type-helpers.ts @@ -30,7 +30,7 @@ export function getValueForAxis( return value; } -// eslint-disable-next-line @typescript-eslint/ban-types +// eslint-disable-next-line @typescript-eslint/no-unsafe-function-type export function isFunction(func?: unknown): func is T { return typeof func === "function"; } diff --git a/packages/victory-core/src/victory-util/wrapper.tsx b/packages/victory-core/src/victory-util/wrapper.tsx index a25878cf8..7236509c2 100644 --- a/packages/victory-core/src/victory-util/wrapper.tsx +++ b/packages/victory-core/src/victory-util/wrapper.tsx @@ -188,7 +188,6 @@ export function getDefaultDomainPadding(props, axis, childComponents) { } export function getDomainFromChildren(props, axis, childComponents) { - // eslint-disable-line max-statements, complexity, max-len const children = childComponents ? childComponents.slice(0) : React.Children.toArray(props.children); diff --git a/packages/victory-create-container/package.json b/packages/victory-create-container/package.json index 1b2f72d98..ee8bd5b98 100644 --- a/packages/victory-create-container/package.json +++ b/packages/victory-create-container/package.json @@ -261,11 +261,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -283,11 +281,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-cursor-container/package.json b/packages/victory-cursor-container/package.json index 4b207b2fa..b8d438dc3 100644 --- a/packages/victory-cursor-container/package.json +++ b/packages/victory-cursor-container/package.json @@ -226,11 +226,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -243,11 +241,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-cursor-container/src/victory-cursor-container.tsx b/packages/victory-cursor-container/src/victory-cursor-container.tsx index 9115462d6..d1d3ecd8c 100644 --- a/packages/victory-cursor-container/src/victory-cursor-container.tsx +++ b/packages/victory-cursor-container/src/victory-cursor-container.tsx @@ -1,4 +1,3 @@ -/* eslint-disable complexity */ import React from "react"; import { Helpers, @@ -101,7 +100,6 @@ export const useVictoryCursorContainer = ( }; const getCursorElements = () => { - // eslint-disable-line max-statements const { scale, cursorLabelComponent, diff --git a/packages/victory-errorbar/package.json b/packages/victory-errorbar/package.json index 9907dca79..5fe5335b1 100644 --- a/packages/victory-errorbar/package.json +++ b/packages/victory-errorbar/package.json @@ -229,11 +229,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -246,11 +244,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-errorbar/src/error-bar.tsx b/packages/victory-errorbar/src/error-bar.tsx index 3f1e501ce..e0d2da164 100644 --- a/packages/victory-errorbar/src/error-bar.tsx +++ b/packages/victory-errorbar/src/error-bar.tsx @@ -1,4 +1,3 @@ -/* eslint-disable max-statements */ import React from "react"; import { defaults } from "lodash"; @@ -105,7 +104,7 @@ export interface ErrorProps { top?: { error: any; errorIndex: number }; } -// eslint-disable-next-line @typescript-eslint/no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-object-type interface ErrorBar extends EventsMixinClass {} const defaultProps = { @@ -115,7 +114,6 @@ const defaultProps = { shapeRendering: "auto", }; -// eslint-disable-next-line @typescript-eslint/no-unused-vars export const ErrorBar = ( initialProps: ErrorBarProps & typeof ErrorBar.default, ) => { diff --git a/packages/victory-errorbar/src/victory-errorbar.tsx b/packages/victory-errorbar/src/victory-errorbar.tsx index f4786f2c9..5753ebb4a 100644 --- a/packages/victory-errorbar/src/victory-errorbar.tsx +++ b/packages/victory-errorbar/src/victory-errorbar.tsx @@ -51,7 +51,7 @@ export interface VictoryErrorBarProps style?: VictoryStyleInterface; } -// eslint-disable-next-line @typescript-eslint/no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-object-type interface VictoryErrorBarBase extends EventsMixinClass {} class VictoryErrorBarBase extends React.Component { diff --git a/packages/victory-group/package.json b/packages/victory-group/package.json index 9ea291eb3..9e5a8b148 100644 --- a/packages/victory-group/package.json +++ b/packages/victory-group/package.json @@ -238,11 +238,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -257,11 +255,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-group/src/helper-methods.tsx b/packages/victory-group/src/helper-methods.tsx index 5cb97b3c1..189ccf365 100644 --- a/packages/victory-group/src/helper-methods.tsx +++ b/packages/victory-group/src/helper-methods.tsx @@ -1,4 +1,3 @@ -/* eslint-disable no-use-before-define */ import React from "react"; import { Data, Helpers, Scale, Wrapper } from "victory-core"; import isEqual from "react-fast-compare"; @@ -10,7 +9,6 @@ const fallbackProps = { offset: 0, }; -// eslint-disable-next-line max-statements export function getCalculatedProps(initialProps, childComponents) { const role = "group"; const props = Helpers.modifyProps(initialProps, fallbackProps, role); diff --git a/packages/victory-group/src/victory-group.tsx b/packages/victory-group/src/victory-group.tsx index 5895ab955..ff84bb389 100644 --- a/packages/victory-group/src/victory-group.tsx +++ b/packages/victory-group/src/victory-group.tsx @@ -52,7 +52,6 @@ const defaultProps = { }; const VictoryGroupBase: React.FC = (initialProps) => { - // eslint-disable-next-line no-use-before-define const role = VictoryGroup?.role; const { getAnimationProps, setAnimationState, getProps } = Hooks.useAnimationState(); diff --git a/packages/victory-histogram/package.json b/packages/victory-histogram/package.json index 4be4dfcaf..359f9d93f 100644 --- a/packages/victory-histogram/package.json +++ b/packages/victory-histogram/package.json @@ -240,11 +240,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -259,11 +257,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-histogram/src/victory-histogram.tsx b/packages/victory-histogram/src/victory-histogram.tsx index dab2b50ee..f7aa5f685 100644 --- a/packages/victory-histogram/src/victory-histogram.tsx +++ b/packages/victory-histogram/src/victory-histogram.tsx @@ -57,7 +57,7 @@ const fallbackProps: Partial = { const defaultData = []; -// eslint-disable-next-line @typescript-eslint/no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-object-type interface VictoryHistogramBase extends EventsMixinClass {} diff --git a/packages/victory-legend/package.json b/packages/victory-legend/package.json index 2b0f06a86..f107c6345 100644 --- a/packages/victory-legend/package.json +++ b/packages/victory-legend/package.json @@ -226,11 +226,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -243,11 +241,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-legend/src/helper-methods.ts b/packages/victory-legend/src/helper-methods.ts index e8b7995df..613c15137 100644 --- a/packages/victory-legend/src/helper-methods.ts +++ b/packages/victory-legend/src/helper-methods.ts @@ -162,7 +162,6 @@ const getTitleStyle = (props) => { : defaults({}, componentStyle, baseStyle, anchors); }; -// eslint-disable-next-line complexity const getTitleProps = (props, borderProps) => { const { title, titleOrientation, centerTitle, borderPadding } = props; const { height, width } = borderProps; diff --git a/packages/victory-legend/src/victory-legend.test.tsx b/packages/victory-legend/src/victory-legend.test.tsx index b4d1650a1..2b06e9976 100644 --- a/packages/victory-legend/src/victory-legend.test.tsx +++ b/packages/victory-legend/src/victory-legend.test.tsx @@ -1,4 +1,3 @@ -/* eslint-disable max-nested-callbacks */ import React from "react"; import { render, screen } from "@testing-library/react"; diff --git a/packages/victory-legend/src/victory-legend.tsx b/packages/victory-legend/src/victory-legend.tsx index facdb476b..9bcaaab0a 100644 --- a/packages/victory-legend/src/victory-legend.tsx +++ b/packages/victory-legend/src/victory-legend.tsx @@ -64,7 +64,7 @@ const fallbackProps = { const defaultLegendData = [{ name: "Series 1" }, { name: "Series 2" }]; -// eslint-disable-next-line @typescript-eslint/no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-object-type interface VictoryLegendBase extends EventsMixinClass {} class VictoryLegendBase extends React.Component { diff --git a/packages/victory-line/package.json b/packages/victory-line/package.json index ce9222d68..175595cb6 100644 --- a/packages/victory-line/package.json +++ b/packages/victory-line/package.json @@ -236,11 +236,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -255,11 +253,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-line/src/curve.tsx b/packages/victory-line/src/curve.tsx index 6fb19276e..2766f6f6c 100644 --- a/packages/victory-line/src/curve.tsx +++ b/packages/victory-line/src/curve.tsx @@ -66,7 +66,7 @@ export const Curve: React.FC = (initialProps) => { export interface CurveProps extends VictoryCommonPrimitiveProps { ariaLabel?: StringOrCallback; - // eslint-disable-next-line @typescript-eslint/ban-types + // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type interpolation?: string | Function; openCurve?: boolean; pathComponent?: React.ReactElement; diff --git a/packages/victory-line/src/victory-line.tsx b/packages/victory-line/src/victory-line.tsx index 04204a992..6814fcba3 100644 --- a/packages/victory-line/src/victory-line.tsx +++ b/packages/victory-line/src/victory-line.tsx @@ -37,7 +37,7 @@ const options = { ], }; -// eslint-disable-next-line @typescript-eslint/no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-object-type interface VictoryLineBase extends EventsMixinClass {} class VictoryLineBase extends React.Component { @@ -118,7 +118,7 @@ export interface VictoryLineProps VictoryMultiLabelableProps { events?: EventPropTypeInterface[]; eventKey?: StringOrNumberOrCallback | string[]; - // eslint-disable-next-line @typescript-eslint/ban-types + // eslint-disable-next-line @typescript-eslint/no-unsafe-function-type interpolation?: InterpolationPropType | Function; style?: VictoryStyleInterface; } diff --git a/packages/victory-native/package.json b/packages/victory-native/package.json index 6152aaf47..d898f7dd0 100644 --- a/packages/victory-native/package.json +++ b/packages/victory-native/package.json @@ -270,11 +270,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -312,11 +310,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-native/src/components/victory-voronoi-container.tsx b/packages/victory-native/src/components/victory-voronoi-container.tsx index 2635fe2cf..9e52da35e 100644 --- a/packages/victory-native/src/components/victory-voronoi-container.tsx +++ b/packages/victory-native/src/components/victory-voronoi-container.tsx @@ -1,4 +1,3 @@ -/* eslint-disable react/no-multi-comp */ import React from "react"; import { VictoryEventHandler } from "victory-core"; import { diff --git a/packages/victory-pie/package.json b/packages/victory-pie/package.json index d51ca645f..15822269c 100644 --- a/packages/victory-pie/package.json +++ b/packages/victory-pie/package.json @@ -232,11 +232,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -250,11 +248,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-pie/src/helper-methods.ts b/packages/victory-pie/src/helper-methods.ts index 09c12f49c..4cc2beac6 100644 --- a/packages/victory-pie/src/helper-methods.ts +++ b/packages/victory-pie/src/helper-methods.ts @@ -63,7 +63,7 @@ const getSlices = (props, data) => { const getCategoriesFromProps = (props: VictoryPieProps) => Array.isArray(props.categories) ? props.categories - : (props?.categories as { x: string[] })?.x ?? []; + : ((props?.categories as { x: string[] })?.x ?? []); /** * Sorts data by props.categories or props.categories.x. If all of the data keys aren't diff --git a/packages/victory-pie/src/victory-pie.tsx b/packages/victory-pie/src/victory-pie.tsx index 5a1c9ff20..ad92dbdf6 100644 --- a/packages/victory-pie/src/victory-pie.tsx +++ b/packages/victory-pie/src/victory-pie.tsx @@ -86,7 +86,7 @@ const datumHasXandY = (datum) => { return !Helpers.isNil(datum._x) && !Helpers.isNil(datum._y); }; -// eslint-disable-next-line @typescript-eslint/no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-object-type interface VictoryPieBase extends EventsMixinClass {} class VictoryPieBase extends React.Component { diff --git a/packages/victory-polar-axis/package.json b/packages/victory-polar-axis/package.json index b1d6eb54d..824336992 100644 --- a/packages/victory-polar-axis/package.json +++ b/packages/victory-polar-axis/package.json @@ -226,11 +226,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -243,11 +241,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-polar-axis/src/types.ts b/packages/victory-polar-axis/src/types.ts index e1fd9fb39..de3869104 100644 --- a/packages/victory-polar-axis/src/types.ts +++ b/packages/victory-polar-axis/src/types.ts @@ -1,3 +1,5 @@ +import React from "react"; + import { EventPropTypeInterface, LabelOrientationType, diff --git a/packages/victory-polar-axis/src/victory-polar-axis.tsx b/packages/victory-polar-axis/src/victory-polar-axis.tsx index a894b1c43..4d80c56ca 100644 --- a/packages/victory-polar-axis/src/victory-polar-axis.tsx +++ b/packages/victory-polar-axis/src/victory-polar-axis.tsx @@ -19,7 +19,7 @@ const fallbackProps: Partial = { padding: 50, }; -// eslint-disable-next-line @typescript-eslint/no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-object-type interface VictoryPolarAxisBase extends EventsMixinClass {} diff --git a/packages/victory-scatter/package.json b/packages/victory-scatter/package.json index 2f00f8223..52b92e7b2 100644 --- a/packages/victory-scatter/package.json +++ b/packages/victory-scatter/package.json @@ -226,11 +226,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -243,11 +241,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-scatter/src/victory-scatter.tsx b/packages/victory-scatter/src/victory-scatter.tsx index a8eb8b178..ee4cd33ab 100644 --- a/packages/victory-scatter/src/victory-scatter.tsx +++ b/packages/victory-scatter/src/victory-scatter.tsx @@ -49,7 +49,7 @@ export interface VictoryScatterProps symbol?: ScatterSymbolType | { (data: any): ScatterSymbolType }; } -// eslint-disable-next-line @typescript-eslint/no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-object-type interface VictoryScatterBase extends EventsMixinClass {} /** diff --git a/packages/victory-selection-container/package.json b/packages/victory-selection-container/package.json index 60db17c5e..bbd008e35 100644 --- a/packages/victory-selection-container/package.json +++ b/packages/victory-selection-container/package.json @@ -231,11 +231,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -249,11 +247,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-shared-events/package.json b/packages/victory-shared-events/package.json index b8ad48515..24213d6ef 100644 --- a/packages/victory-shared-events/package.json +++ b/packages/victory-shared-events/package.json @@ -228,11 +228,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -245,11 +243,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-shared-events/src/victory-shared-events.tsx b/packages/victory-shared-events/src/victory-shared-events.tsx index 87549a2bd..c05e29825 100644 --- a/packages/victory-shared-events/src/victory-shared-events.tsx +++ b/packages/victory-shared-events/src/victory-shared-events.tsx @@ -30,7 +30,7 @@ export type VictorySharedEventsProps = { // to refactor in our current refactoring effort. Please do not make changes // to this file without manual testing and/or refactoring and adding tests. -// eslint-disable-next-line @typescript-eslint/no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-object-type export interface VictorySharedEvents extends EventMixinCalculatedValues {} export class VictorySharedEvents extends React.Component { diff --git a/packages/victory-stack/package.json b/packages/victory-stack/package.json index 676970208..496244d9e 100644 --- a/packages/victory-stack/package.json +++ b/packages/victory-stack/package.json @@ -242,11 +242,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -263,11 +261,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-stack/src/helper-methods.tsx b/packages/victory-stack/src/helper-methods.tsx index acf76e96b..2e4f19c29 100644 --- a/packages/victory-stack/src/helper-methods.tsx +++ b/packages/victory-stack/src/helper-methods.tsx @@ -1,4 +1,3 @@ -/* eslint-disable no-use-before-define */ import { orderBy } from "lodash"; import React from "react"; import { Helpers, Scale, Wrapper } from "victory-core"; @@ -89,20 +88,20 @@ function addLayoutData(props, datasets, index) { _y0: !(datum._y instanceof Date) ? yOffset : yOffset - ? new Date(yOffset) - : datum._y, + ? new Date(yOffset) + : datum._y, _y1: datum._y === null ? null : datum._y instanceof Date - ? new Date(Number(datum._y) + Number(yOffset)) - : datum._y + yOffset, + ? new Date(Number(datum._y) + Number(yOffset)) + : datum._y + yOffset, _x1: datum._x === null ? null : datum._x instanceof Date - ? new Date(Number(datum._x) + Number(xOffset)) - : datum._x + xOffset, + ? new Date(Number(datum._x) + Number(xOffset)) + : datum._x + xOffset, }); }); } diff --git a/packages/victory-stack/src/victory-stack.test.tsx b/packages/victory-stack/src/victory-stack.test.tsx index 62edf4e7b..d47d60ef7 100644 --- a/packages/victory-stack/src/victory-stack.test.tsx +++ b/packages/victory-stack/src/victory-stack.test.tsx @@ -1,5 +1,4 @@ /* eslint-disable no-console */ -/* eslint-disable @typescript-eslint/no-empty-function */ import { render } from "@testing-library/react"; import React from "react"; diff --git a/packages/victory-tooltip/package.json b/packages/victory-tooltip/package.json index 231e877f9..16e218950 100644 --- a/packages/victory-tooltip/package.json +++ b/packages/victory-tooltip/package.json @@ -226,11 +226,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -243,11 +241,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-tooltip/src/flyout.tsx b/packages/victory-tooltip/src/flyout.tsx index 51daff5fb..cd0c1f046 100644 --- a/packages/victory-tooltip/src/flyout.tsx +++ b/packages/victory-tooltip/src/flyout.tsx @@ -73,8 +73,8 @@ const getVerticalPath = (props: FlyoutPathProps) => { const arc = `${cornerRadius} ${cornerRadius} ${direction}`; return `M ${centerX - pointerWidth / 2}, ${pointerEdge} L ${pointerLength ? x : centerX + pointerWidth / 2}, ${ - pointerLength ? y : pointerEdge - } + pointerLength ? y : pointerEdge + } L ${centerX + pointerWidth / 2}, ${pointerEdge} L ${rightEdge - cornerRadius}, ${pointerEdge} A ${arc} ${rightEdge}, ${pointerEdge - sign * cornerRadius} @@ -104,8 +104,8 @@ const getHorizontalPath = (props: FlyoutPathProps) => { const arc = `${cornerRadius} ${cornerRadius} ${direction}`; return `M ${pointerEdge}, ${centerY - pointerWidth / 2} L ${pointerLength ? x : pointerEdge}, ${ - pointerLength ? y : centerY + pointerWidth / 2 - } + pointerLength ? y : centerY + pointerWidth / 2 + } L ${pointerEdge}, ${centerY + pointerWidth / 2} L ${pointerEdge}, ${bottomEdge - cornerRadius} A ${arc} ${pointerEdge + sign * cornerRadius}, ${bottomEdge} diff --git a/packages/victory-tooltip/src/victory-tooltip.tsx b/packages/victory-tooltip/src/victory-tooltip.tsx index c851cda71..ee90cad30 100644 --- a/packages/victory-tooltip/src/victory-tooltip.tsx +++ b/packages/victory-tooltip/src/victory-tooltip.tsx @@ -389,7 +389,6 @@ export class VictoryTooltip extends React.Component { }; } - // eslint-disable-next-line complexity getFlyoutCenter(props, dimensions) { const { x, diff --git a/packages/victory-vendor/package.json b/packages/victory-vendor/package.json index 3205e9925..508eb9ba9 100644 --- a/packages/victory-vendor/package.json +++ b/packages/victory-vendor/package.json @@ -157,10 +157,9 @@ ] }, "lint": { - "command": "nps \"lint:base scripts\"", + "command": "eslint scripts", "files": [ - "scripts/**", - "../../.eslintrc.js" + "scripts/**" ], "output": [], "packageLocks": [ @@ -168,10 +167,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps \"lint:base --fix scripts\"", + "command": "eslint --fix scripts", "files": [ - "scripts/**", - "../../.eslintrc.js" + "scripts/**" ], "output": [], "packageLocks": [ diff --git a/packages/victory-vendor/scripts/build.js b/packages/victory-vendor/scripts/build.js index 523e662b1..42c758af7 100644 --- a/packages/victory-vendor/scripts/build.js +++ b/packages/victory-vendor/scripts/build.js @@ -18,7 +18,7 @@ const rimrafP = promisify(rimraf); const vendorPkg = require("../package.json"); const VENDOR_PKGS = new Set(Object.keys(vendorPkg.dependencies)); -const { log, error } = console; // eslint-disable-line no-undef +const { log, error } = console; // Templates. const getEsmIndex = (pkg) => ` diff --git a/packages/victory-voronoi-container/package.json b/packages/victory-voronoi-container/package.json index 87a703077..d7d973ae4 100644 --- a/packages/victory-voronoi-container/package.json +++ b/packages/victory-voronoi-container/package.json @@ -235,11 +235,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -253,11 +251,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-voronoi-container/src/victory-voronoi-container.tsx b/packages/victory-voronoi-container/src/victory-voronoi-container.tsx index c17be8d13..5490d4465 100644 --- a/packages/victory-voronoi-container/src/victory-voronoi-container.tsx +++ b/packages/victory-voronoi-container/src/victory-voronoi-container.tsx @@ -1,4 +1,3 @@ -/* eslint-disable react/no-multi-comp */ import React from "react"; import { defaults, pick } from "lodash"; import { VictoryTooltip } from "victory-tooltip"; diff --git a/packages/victory-voronoi-container/src/voronoi-helpers.ts b/packages/victory-voronoi-container/src/voronoi-helpers.ts index 17edd09b6..791b66fe7 100644 --- a/packages/victory-voronoi-container/src/voronoi-helpers.ts +++ b/packages/victory-voronoi-container/src/voronoi-helpers.ts @@ -214,7 +214,6 @@ class VoronoiHelpersClass { }; private handleMouseMove = (evt, targetProps) => { - // eslint-disable-line max-statements const activePoints = targetProps.activePoints || []; const parentSVG = targetProps.parentSVG || Selection.getParentSVG(evt); const mousePosition = Selection.getSVGEventCoordinates(evt, parentSVG); diff --git a/packages/victory-voronoi/package.json b/packages/victory-voronoi/package.json index 51b04e9ec..8dddd0b4b 100644 --- a/packages/victory-voronoi/package.json +++ b/packages/victory-voronoi/package.json @@ -226,11 +226,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -242,11 +240,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-voronoi/src/victory-voronoi.tsx b/packages/victory-voronoi/src/victory-voronoi.tsx index 2e3e5bbbb..fa9d68bf2 100644 --- a/packages/victory-voronoi/src/victory-voronoi.tsx +++ b/packages/victory-voronoi/src/victory-voronoi.tsx @@ -43,7 +43,7 @@ const fallbackProps = { padding: 50, }; -// eslint-disable-next-line @typescript-eslint/no-empty-interface +// eslint-disable-next-line @typescript-eslint/no-empty-object-type interface VictoryVoronoiBase extends EventsMixinClass {} class VictoryVoronoiBase extends React.Component { diff --git a/packages/victory-zoom-container/package.json b/packages/victory-zoom-container/package.json index 7d613cbdd..64eee9a8a 100644 --- a/packages/victory-zoom-container/package.json +++ b/packages/victory-zoom-container/package.json @@ -226,11 +226,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -243,11 +241,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/packages/victory-zoom-container/src/zoom-helpers.ts b/packages/victory-zoom-container/src/zoom-helpers.ts index ab0b76d67..8f54be40a 100644 --- a/packages/victory-zoom-container/src/zoom-helpers.ts +++ b/packages/victory-zoom-container/src/zoom-helpers.ts @@ -246,7 +246,7 @@ export const RawZoomHelpers = { ]; }, - // eslint-disable-next-line max-params, max-statements + // eslint-disable-next-line max-params onMouseMove(evt, targetProps, eventKey, ctx) { if (targetProps.panning && targetProps.allowPan) { const { diff --git a/packages/victory/package.json b/packages/victory/package.json index 6c3fc9156..27a3d707c 100644 --- a/packages/victory/package.json +++ b/packages/victory/package.json @@ -407,11 +407,9 @@ ] }, "lint": { - "command": "nps lint:pkg", + "command": "eslint src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ @@ -449,11 +447,9 @@ ] }, "lint:fix": { - "command": "pnpm run lint || nps lint:pkg:fix", + "command": "eslint --fix src", "files": [ - "src/**", - "../../.eslintignore", - "../../.eslintrc.js" + "src/**" ], "output": [], "dependencies": [ diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6225d7c51..1eb29f3ab 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -21,9 +21,6 @@ importers: '@babel/core': specifier: 7.23.9 version: 7.23.9 - '@babel/eslint-parser': - specifier: 7.23.9 - version: 7.23.9(@babel/core@7.23.9)(eslint@8.21.0) '@babel/plugin-transform-export-namespace-from': specifier: 7.23.4 version: 7.23.4(@babel/core@7.23.9) @@ -45,6 +42,9 @@ importers: '@chromatic-com/storybook': specifier: ^3.2.2 version: 3.2.2(react@18.2.0)(storybook@8.4.1) + '@eslint/js': + specifier: ^9.14.0 + version: 9.14.0 '@storybook/addon-essentials': specifier: ^8.4.1 version: 8.4.1(@types/react@18.0.15)(storybook@8.4.1) @@ -101,10 +101,10 @@ importers: version: 5.14.5 '@typescript-eslint/eslint-plugin': specifier: ^5.32.0 - version: 5.32.0(@typescript-eslint/parser@5.32.0)(eslint@8.21.0)(typescript@4.7.4) + version: 5.32.0(@typescript-eslint/parser@5.32.0)(eslint@9.14.0)(typescript@4.7.4) '@typescript-eslint/parser': specifier: ^5.32.0 - version: 5.32.0(eslint@8.21.0)(typescript@4.7.4) + version: 5.32.0(eslint@9.14.0)(typescript@4.7.4) autoprefixer: specifier: ^10.0.1 version: 10.4.17(postcss@8.4.33) @@ -139,38 +139,26 @@ importers: specifier: ^7.1.2 version: 7.1.2(webpack@5.74.0) eslint: - specifier: ^8.21.0 - version: 8.21.0 - eslint-config-formidable: - specifier: ^4.0.0 - version: 4.0.0 + specifier: ^9.14.0 + version: 9.14.0 eslint-config-prettier: - specifier: ^8.5.0 - version: 8.5.0(eslint@8.21.0) - eslint-plugin-eslint-comments: - specifier: ^3.2.0 - version: 3.2.0(eslint@8.21.0) - eslint-plugin-filenames: - specifier: ^1.2.0 - version: 1.3.2(eslint@8.21.0) - eslint-plugin-import: - specifier: ^2.20.1 - version: 2.26.0(@typescript-eslint/parser@5.32.0)(eslint@8.21.0) + specifier: ^9.1.0 + version: 9.1.0(eslint@9.14.0) eslint-plugin-jest: - specifier: ^26.7.0 - version: 26.7.0(@typescript-eslint/eslint-plugin@5.32.0)(eslint@8.21.0)(jest@29.7.0)(typescript@4.7.4) + specifier: ^28.9.0 + version: 28.9.0(@typescript-eslint/eslint-plugin@5.32.0)(eslint@9.14.0)(jest@29.7.0)(typescript@4.7.4) + eslint-plugin-prettier: + specifier: ^5.2.1 + version: 5.2.1(eslint-config-prettier@9.1.0)(eslint@9.14.0)(prettier@3.3.3) eslint-plugin-promise: - specifier: ^6.0.0 - version: 6.0.0(eslint@8.21.0) + specifier: ^7.1.0 + version: 7.1.0(eslint@9.14.0) eslint-plugin-react: - specifier: ^7.0.0 - version: 7.30.1(eslint@8.21.0) + specifier: ^7.37.2 + version: 7.37.2(eslint@9.14.0) eslint-plugin-react-hooks: - specifier: ^4.2.0 - version: 4.6.0(eslint@8.21.0) - eslint-plugin-storybook: - specifier: ^0.10.2 - version: 0.10.2(eslint@8.21.0)(typescript@4.7.4) + specifier: ^5.0.0 + version: 5.0.0(eslint@9.14.0) fork-ts-checker-webpack-plugin: specifier: ^8.0.0 version: 8.0.0(typescript@4.7.4)(webpack@5.74.0) @@ -180,6 +168,9 @@ importers: glob: specifier: 8.0.3 version: 8.0.3 + globals: + specifier: ^15.12.0 + version: 15.12.0 immutable: specifier: ^3.8.2 version: 3.8.2 @@ -214,8 +205,8 @@ importers: specifier: ^8.1.1 version: 8.1.1(postcss@8.4.33)(typescript@4.7.4)(webpack@5.74.0) prettier: - specifier: ^2.6.2 - version: 2.7.1 + specifier: ^3.3.3 + version: 3.3.3 prop-types: specifier: ^15.8.1 version: 15.8.1 @@ -254,7 +245,7 @@ importers: version: 3.0.5 storybook: specifier: ^8.4.1 - version: 8.4.1(prettier@2.7.1) + version: 8.4.1(prettier@3.3.3) style-loader: specifier: ^4.0.0 version: 4.0.0(webpack@5.74.0) @@ -273,6 +264,9 @@ importers: typescript: specifier: ^4.7.3 version: 4.7.4 + typescript-eslint: + specifier: ^8.13.0 + version: 8.13.0(eslint@9.14.0)(typescript@4.7.4) unified: specifier: ^8.3.2 version: 8.4.2 @@ -1677,20 +1671,6 @@ packages: - supports-color dev: false - /@babel/eslint-parser@7.23.9(@babel/core@7.23.9)(eslint@8.21.0): - resolution: {integrity: sha512-xPndlO7qxiJbn0ATvfXQBjCS7qApc9xmKHArgI/FTEFxXas5dnjC/VqM37lfZun9dclRYcn+YQAr6uDFy0bB2g==} - engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} - peerDependencies: - '@babel/core': ^7.11.0 - eslint: ^7.5.0 || ^8.0.0 - dependencies: - '@babel/core': 7.23.9 - '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1 - eslint: 8.21.0 - eslint-visitor-keys: 2.1.0 - semver: 6.3.1 - dev: true - /@babel/generator@7.23.6: resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} engines: {node: '>=6.9.0'} @@ -4976,7 +4956,7 @@ packages: filesize: 10.1.6 jsonfile: 6.1.0 react-confetti: 6.1.0(react@18.2.0) - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) strip-ansi: 7.1.0 transitivePeerDependencies: - '@chromatic-com/cypress' @@ -6374,25 +6354,46 @@ packages: dev: true optional: true - /@eslint-community/eslint-utils@4.4.0(eslint@8.21.0): + /@eslint-community/eslint-utils@4.4.0(eslint@9.14.0): resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 dependencies: - eslint: 8.21.0 + eslint: 9.14.0 eslint-visitor-keys: 3.4.3 dev: true - /@eslint/eslintrc@1.3.0: - resolution: {integrity: sha512-UWW0TMTmk2d7hLcWD1/e2g5HDM/HQ3csaLSqXCfqwh4uNDuNqlaKWXmEsL4Cs41Z0KnILNvwbHAah3C2yt06kw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /@eslint-community/regexpp@4.12.1: + resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} + engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} + dev: true + + /@eslint/config-array@0.18.0: + resolution: {integrity: sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dependencies: + '@eslint/object-schema': 2.1.4 + debug: 4.3.4 + minimatch: 3.1.2 + transitivePeerDependencies: + - supports-color + dev: true + + /@eslint/core@0.7.0: + resolution: {integrity: sha512-xp5Jirz5DyPYlPiKat8jaq0EmYvDXKKpzTbxXMpT9eqlRJkRKIz9AGMdlvYjih+im+QlhWrpvVjl8IPC/lHlUw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dev: true + + /@eslint/eslintrc@3.1.0: + resolution: {integrity: sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} dependencies: ajv: 6.12.6 debug: 4.3.4 - espree: 9.3.3 - globals: 13.17.0 - ignore: 5.2.0 + espree: 10.3.0 + globals: 14.0.0 + ignore: 5.3.1 import-fresh: 3.3.0 js-yaml: 4.1.0 minimatch: 3.1.2 @@ -6401,6 +6402,23 @@ packages: - supports-color dev: true + /@eslint/js@9.14.0: + resolution: {integrity: sha512-pFoEtFWCPyDOl+C6Ift+wC7Ro89otjigCf5vcuWqWgqNSQbRrpjSvdeE6ofLz4dHmyxD5f7gIdGT4+p36L6Twg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dev: true + + /@eslint/object-schema@2.1.4: + resolution: {integrity: sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dev: true + + /@eslint/plugin-kit@0.2.2: + resolution: {integrity: sha512-CXtq5nR4Su+2I47WPOlWud98Y5Lv8Kyxp2ukhgFx/eW6Blm18VXJO5WuQylPugRo8nbluoi6GvvxBLqHcvqUUw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dependencies: + levn: 0.4.1 + dev: true + /@expo/bunyan@4.0.0: resolution: {integrity: sha512-Ydf4LidRB/EBI+YrB+cVLqIseiRfjUI/AeHBgjGMtq3GroraDu81OV7zqophRgupngoL3iS3JUMDMnxO7g39qA==} engines: {'0': node >=0.10.0} @@ -6477,7 +6495,7 @@ packages: resolve: 1.22.8 resolve-from: 5.0.0 resolve.exports: 2.0.2 - semver: 7.5.4 + semver: 7.6.3 send: 0.18.0 slugify: 1.6.6 source-map-support: 0.5.21 @@ -6523,7 +6541,7 @@ packages: getenv: 1.0.0 glob: 7.1.6 resolve-from: 5.0.0 - semver: 7.5.4 + semver: 7.6.3 slash: 3.0.0 slugify: 1.6.6 xcode: 3.0.1 @@ -6779,23 +6797,32 @@ packages: dependencies: '@hapi/hoek': 9.3.0 - /@humanwhocodes/config-array@0.10.4: - resolution: {integrity: sha512-mXAIHxZT3Vcpg83opl1wGlVZ9xydbfZO3r5YfRSH6Gpp2J/PfdBP0wbDa2sO6/qRbcalpoevVyW6A/fI6LfeMw==} - engines: {node: '>=10.10.0'} + /@humanfs/core@0.19.1: + resolution: {integrity: sha512-5DyQ4+1JEUzejeK1JGICcideyfUbGixgS9jNgex5nqkW+cY7WZhxBigmieN5Qnw9ZosSNVC9KQKyb+GUaGyKUA==} + engines: {node: '>=18.18.0'} + dev: true + + /@humanfs/node@0.16.6: + resolution: {integrity: sha512-YuI2ZHQL78Q5HbhDiBA1X4LmYdXCKCMQIfw0pw7piHJwyREFebJUvrQN4cMssyES6x+vfUbx1CIpaQUKYdQZOw==} + engines: {node: '>=18.18.0'} dependencies: - '@humanwhocodes/object-schema': 1.2.1 - debug: 4.3.4 - minimatch: 3.1.2 - transitivePeerDependencies: - - supports-color + '@humanfs/core': 0.19.1 + '@humanwhocodes/retry': 0.3.1 + dev: true + + /@humanwhocodes/module-importer@1.0.1: + resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==} + engines: {node: '>=12.22'} dev: true - /@humanwhocodes/gitignore-to-minimatch@1.0.2: - resolution: {integrity: sha512-rSqmMJDdLFUsyxR6FMtD00nfQKKLFb1kv+qBbOVKqErvloEIJLo5bDTJTQNTYgeyp78JsA7u/NPi5jT1GR/MuA==} + /@humanwhocodes/retry@0.3.1: + resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} + engines: {node: '>=18.18'} dev: true - /@humanwhocodes/object-schema@1.2.1: - resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} + /@humanwhocodes/retry@0.4.1: + resolution: {integrity: sha512-c7hNEllBlenFTHBky65mhq8WD2kbN9Q6gk0bTk8lSBvc554jpXSkST1iePudpt7+A/AQvuHs9EMqjHDXMY1lrA==} + engines: {node: '>=18.18'} dev: true /@isaacs/cliui@8.0.2: @@ -7147,7 +7174,7 @@ packages: /@mdx-js/mdx@3.1.0(acorn@8.14.0): resolution: {integrity: sha512-/QxEhPAvGwbQmy1Px8F899L5Uc2KZ6JtXwlCgJmjSTBedwOZkByYcBG4GceIGPXRDsmfxhHazuS+hlOShRLeDw==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 '@types/estree-jsx': 1.0.5 '@types/hast': 3.0.4 '@types/mdx': 2.0.10 @@ -7201,12 +7228,6 @@ packages: dev: true optional: true - /@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1: - resolution: {integrity: sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==} - dependencies: - eslint-scope: 5.1.1 - dev: true - /@node-rs/jieba-android-arm-eabi@1.10.4: resolution: {integrity: sha512-MhyvW5N3Fwcp385d0rxbCWH42kqDBatQTyP8XbnYbju2+0BO/eTeCCLYj7Agws4pwxn2LtdldXRSKavT7WdzNA==} engines: {node: '>= 10'} @@ -7376,7 +7397,7 @@ packages: resolution: {integrity: sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==} dependencies: '@gar/promisify': 1.1.3 - semver: 7.5.4 + semver: 7.6.3 dev: false /@npmcli/move-file@1.1.2: @@ -7788,6 +7809,11 @@ packages: requiresBuild: true optional: true + /@pkgr/core@0.1.1: + resolution: {integrity: sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==} + engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} + dev: true + /@pnpm/config.env-replace@1.1.0: resolution: {integrity: sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==} engines: {node: '>=12.22.0'} @@ -7856,7 +7882,7 @@ packages: hermes-profile-transformer: 0.0.6 node-stream-zip: 1.15.0 ora: 5.4.1 - semver: 7.5.4 + semver: 7.6.3 strip-ansi: 5.2.0 wcwidth: 1.0.1 yaml: 2.4.0 @@ -7928,7 +7954,7 @@ packages: node-fetch: 2.6.7 open: 6.4.0 ora: 5.4.1 - semver: 7.5.4 + semver: 7.6.3 shell-quote: 1.7.3 sudo-prompt: 9.2.1 transitivePeerDependencies: @@ -7961,7 +7987,7 @@ packages: fs-extra: 8.1.0 graceful-fs: 4.2.11 prompts: 2.4.2 - semver: 7.5.4 + semver: 7.6.3 transitivePeerDependencies: - bufferutil - encoding @@ -8392,7 +8418,7 @@ packages: '@types/uuid': 9.0.7 dequal: 2.0.3 polished: 4.2.2 - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) uuid: 9.0.1 dev: true @@ -8403,7 +8429,7 @@ packages: dependencies: '@storybook/global': 5.0.0 memoizerific: 1.11.3 - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) ts-dedent: 2.2.0 dev: true @@ -8414,7 +8440,7 @@ packages: dependencies: '@storybook/global': 5.0.0 dequal: 2.0.3 - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) ts-dedent: 2.2.0 dev: true @@ -8429,7 +8455,7 @@ packages: '@storybook/react-dom-shim': 8.4.1(react-dom@18.2.0)(react@18.2.0)(storybook@8.4.1) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) ts-dedent: 2.2.0 transitivePeerDependencies: - '@types/react' @@ -8449,7 +8475,7 @@ packages: '@storybook/addon-outline': 8.4.1(storybook@8.4.1) '@storybook/addon-toolbars': 8.4.1(storybook@8.4.1) '@storybook/addon-viewport': 8.4.1(storybook@8.4.1) - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) ts-dedent: 2.2.0 transitivePeerDependencies: - '@types/react' @@ -8461,7 +8487,7 @@ packages: storybook: ^8.4.1 dependencies: '@storybook/global': 5.0.0 - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) dev: true /@storybook/addon-measure@8.4.1(storybook@8.4.1): @@ -8470,7 +8496,7 @@ packages: storybook: ^8.4.1 dependencies: '@storybook/global': 5.0.0 - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) tiny-invariant: 1.3.1 dev: true @@ -8480,7 +8506,7 @@ packages: storybook: ^8.4.1 dependencies: '@storybook/global': 5.0.0 - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) ts-dedent: 2.2.0 dev: true @@ -8491,7 +8517,7 @@ packages: dependencies: '@storybook/source-loader': 8.4.1(storybook@8.4.1) estraverse: 5.3.0 - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) tiny-invariant: 1.3.1 dev: true @@ -8500,7 +8526,7 @@ packages: peerDependencies: storybook: ^8.4.1 dependencies: - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) dev: true /@storybook/addon-viewport@8.4.1(storybook@8.4.1): @@ -8509,7 +8535,7 @@ packages: storybook: ^8.4.1 dependencies: memoizerific: 1.11.3 - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) dev: true /@storybook/addon-webpack5-compiler-swc@1.0.5(webpack@5.74.0): @@ -8539,7 +8565,7 @@ packages: '@storybook/icons': 1.2.12(react-dom@18.2.0)(react@18.2.0) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) ts-dedent: 2.2.0 dev: true @@ -8566,8 +8592,8 @@ packages: magic-string: 0.30.5 path-browserify: 1.0.1 process: 0.11.10 - semver: 7.5.4 - storybook: 8.4.1(prettier@2.7.1) + semver: 7.6.3 + storybook: 8.4.1(prettier@3.3.3) style-loader: 3.3.4(webpack@5.74.0) terser-webpack-plugin: 5.3.3(@swc/core@1.8.0)(esbuild@0.18.20)(webpack@5.74.0) ts-dedent: 2.2.0 @@ -8592,7 +8618,7 @@ packages: peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 dependencies: - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) dev: true /@storybook/core-webpack@8.4.1(storybook@8.4.1): @@ -8601,11 +8627,11 @@ packages: storybook: ^8.4.1 dependencies: '@types/node': 22.8.7 - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) ts-dedent: 2.2.0 dev: true - /@storybook/core@8.4.1(prettier@2.7.1): + /@storybook/core@8.4.1(prettier@3.3.3): resolution: {integrity: sha512-q3Q4OFBj7MHHbIFYk/Beejlqv5j7CC3+VWhGcr0TK3SGvdCIZ7EliYuc5JIOgDlEPsnTIk+lkgWI4LAA9mLzSw==} peerDependencies: prettier: ^2 || ^3 @@ -8619,7 +8645,7 @@ packages: esbuild: 0.18.20 esbuild-register: 3.5.0(esbuild@0.18.20) jsdoc-type-pratt-parser: 4.1.0 - prettier: 2.7.1 + prettier: 3.3.3 process: 0.11.10 recast: 0.23.9 semver: 7.6.3 @@ -8636,7 +8662,7 @@ packages: peerDependencies: storybook: ^8.4.1 dependencies: - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) unplugin: 1.6.0 dev: true @@ -8666,7 +8692,7 @@ packages: peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 dependencies: - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) dev: true /@storybook/preset-react-webpack@8.4.1(@swc/core@1.8.0)(esbuild@0.18.20)(react-dom@18.2.0)(react@18.2.0)(storybook@8.4.1)(typescript@4.7.4)(webpack-cli@4.10.0): @@ -8692,8 +8718,8 @@ packages: react-docgen: 7.0.3 react-dom: 18.2.0(react@18.2.0) resolve: 1.22.8 - semver: 7.5.4 - storybook: 8.4.1(prettier@2.7.1) + semver: 7.6.3 + storybook: 8.4.1(prettier@3.3.3) tsconfig-paths: 4.2.0 typescript: 4.7.4 webpack: 5.74.0(@swc/core@1.8.0)(esbuild@0.18.20)(webpack-cli@4.10.0) @@ -8711,7 +8737,7 @@ packages: peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 dependencies: - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) dev: true /@storybook/react-docgen-typescript-plugin@1.0.6--canary.9.0c3f3b7.0(typescript@4.7.4)(webpack@5.74.0): @@ -8742,7 +8768,7 @@ packages: dependencies: react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) dev: true /@storybook/react-webpack5@8.4.1(@swc/core@1.8.0)(esbuild@0.18.20)(react-dom@18.2.0)(react@18.2.0)(storybook@8.4.1)(typescript@4.7.4)(webpack-cli@4.10.0): @@ -8763,7 +8789,7 @@ packages: '@types/node': 22.8.7 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) typescript: 4.7.4 transitivePeerDependencies: - '@rspack/core' @@ -8798,7 +8824,7 @@ packages: '@storybook/theming': 8.4.1(storybook@8.4.1) react: 18.2.0 react-dom: 18.2.0(react@18.2.0) - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) typescript: 4.7.4 dev: true @@ -8811,7 +8837,7 @@ packages: es-toolkit: 1.26.1 estraverse: 5.3.0 prettier: 3.3.3 - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) dev: true /@storybook/theming@8.4.1(storybook@8.4.1): @@ -8819,7 +8845,7 @@ packages: peerDependencies: storybook: ^8.2.0 || ^8.3.0-0 || ^8.4.0-0 || ^8.5.0-0 || ^8.6.0-0 dependencies: - storybook: 8.4.1(prettier@2.7.1) + storybook: 8.4.1(prettier@3.3.3) dev: true /@svgr/babel-plugin-add-jsx-attribute@8.0.0(@babel/core@7.23.9): @@ -9238,7 +9264,7 @@ packages: /@types/acorn@4.0.6: resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 /@types/aria-query@4.2.2: resolution: {integrity: sha512-HnYpAE1Y6kRyKM/XkEuiRQhTHvkzMBurTHnpFLYLBGPIylZNPs9jJcuOOYWxPLJCSEtmZT0Y8rHDokKN7rRTig==} @@ -9358,7 +9384,7 @@ packages: resolution: {integrity: sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==} dependencies: '@types/eslint': 8.4.3 - '@types/estree': 0.0.51 + '@types/estree': 1.0.6 dev: true /@types/eslint-scope@3.7.7: @@ -9370,19 +9396,17 @@ packages: /@types/eslint@8.4.3: resolution: {integrity: sha512-YP1S7YJRMPs+7KZKDb9G63n8YejIwW9BALq7a5j2+H4yl6iOv9CB29edho+cuFRrvmJbbaH2yiVChKLJVysDGw==} dependencies: - '@types/estree': 0.0.51 + '@types/estree': 1.0.6 '@types/json-schema': 7.0.15 /@types/estree-jsx@1.0.5: resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 /@types/estree@0.0.51: resolution: {integrity: sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==} - - /@types/estree@1.0.5: - resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + dev: true /@types/estree@1.0.6: resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==} @@ -9482,16 +9506,9 @@ packages: parse5: 7.1.2 dev: true - /@types/json-schema@7.0.11: - resolution: {integrity: sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==} - /@types/json-schema@7.0.15: resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} - /@types/json5@0.0.29: - resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==} - dev: true - /@types/jsonfile@6.1.3: resolution: {integrity: sha512-/yqTk2SZ1wIezK0hiRZD7RuSf4B3whFxFamB1kGStv+8zlWScTMcHanzfc0XKWs5vA1TkHeckBlOyM8jxU8nHA==} dependencies: @@ -9695,7 +9712,7 @@ packages: dependencies: '@types/yargs-parser': 21.0.0 - /@typescript-eslint/eslint-plugin@5.32.0(@typescript-eslint/parser@5.32.0)(eslint@8.21.0)(typescript@4.7.4): + /@typescript-eslint/eslint-plugin@5.32.0(@typescript-eslint/parser@5.32.0)(eslint@9.14.0)(typescript@4.7.4): resolution: {integrity: sha512-CHLuz5Uz7bHP2WgVlvoZGhf0BvFakBJKAD/43Ty0emn4wXWv5k01ND0C0fHcl/Im8Td2y/7h44E9pca9qAu2ew==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -9706,12 +9723,12 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/parser': 5.32.0(eslint@8.21.0)(typescript@4.7.4) + '@typescript-eslint/parser': 5.32.0(eslint@9.14.0)(typescript@4.7.4) '@typescript-eslint/scope-manager': 5.32.0 - '@typescript-eslint/type-utils': 5.32.0(eslint@8.21.0)(typescript@4.7.4) - '@typescript-eslint/utils': 5.32.0(eslint@8.21.0)(typescript@4.7.4) + '@typescript-eslint/type-utils': 5.32.0(eslint@9.14.0)(typescript@4.7.4) + '@typescript-eslint/utils': 5.32.0(eslint@9.14.0)(typescript@4.7.4) debug: 4.3.4 - eslint: 8.21.0 + eslint: 9.14.0 functional-red-black-tree: 1.0.1 ignore: 5.2.0 regexpp: 3.2.0 @@ -9722,7 +9739,34 @@ packages: - supports-color dev: true - /@typescript-eslint/parser@5.32.0(eslint@8.21.0)(typescript@4.7.4): + /@typescript-eslint/eslint-plugin@8.13.0(@typescript-eslint/parser@8.13.0)(eslint@9.14.0)(typescript@4.7.4): + resolution: {integrity: sha512-nQtBLiZYMUPkclSeC3id+x4uVd1SGtHuElTxL++SfP47jR0zfkZBJHc+gL4qPsgTuypz0k8Y2GheaDYn6Gy3rg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 + eslint: ^8.57.0 || ^9.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@eslint-community/regexpp': 4.12.1 + '@typescript-eslint/parser': 8.13.0(eslint@9.14.0)(typescript@4.7.4) + '@typescript-eslint/scope-manager': 8.13.0 + '@typescript-eslint/type-utils': 8.13.0(eslint@9.14.0)(typescript@4.7.4) + '@typescript-eslint/utils': 8.13.0(eslint@9.14.0)(typescript@4.7.4) + '@typescript-eslint/visitor-keys': 8.13.0 + eslint: 9.14.0 + graphemer: 1.4.0 + ignore: 5.3.1 + natural-compare: 1.4.0 + ts-api-utils: 1.4.0(typescript@4.7.4) + typescript: 4.7.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/parser@5.32.0(eslint@9.14.0)(typescript@4.7.4): resolution: {integrity: sha512-IxRtsehdGV9GFQ35IGm5oKKR2OGcazUoiNBxhRV160iF9FoyuXxjY+rIqs1gfnd+4eL98OjeGnMpE7RF/NBb3A==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -9736,7 +9780,28 @@ packages: '@typescript-eslint/types': 5.32.0 '@typescript-eslint/typescript-estree': 5.32.0(typescript@4.7.4) debug: 4.3.4 - eslint: 8.21.0 + eslint: 9.14.0 + typescript: 4.7.4 + transitivePeerDependencies: + - supports-color + dev: true + + /@typescript-eslint/parser@8.13.0(eslint@9.14.0)(typescript@4.7.4): + resolution: {integrity: sha512-w0xp+xGg8u/nONcGw1UXAr6cjCPU1w0XVyBs6Zqaj5eLmxkKQAByTdV/uGgNN5tVvN/kKpoQlP2cL7R+ajZZIQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/scope-manager': 8.13.0 + '@typescript-eslint/types': 8.13.0 + '@typescript-eslint/typescript-estree': 8.13.0(typescript@4.7.4) + '@typescript-eslint/visitor-keys': 8.13.0 + debug: 4.3.4 + eslint: 9.14.0 typescript: 4.7.4 transitivePeerDependencies: - supports-color @@ -9750,15 +9815,15 @@ packages: '@typescript-eslint/visitor-keys': 5.32.0 dev: true - /@typescript-eslint/scope-manager@8.12.2: - resolution: {integrity: sha512-gPLpLtrj9aMHOvxJkSbDBmbRuYdtiEbnvO25bCMza3DhMjTQw0u7Y1M+YR5JPbMsXXnSPuCf5hfq0nEkQDL/JQ==} + /@typescript-eslint/scope-manager@8.13.0: + resolution: {integrity: sha512-XsGWww0odcUT0gJoBZ1DeulY1+jkaHUciUq4jKNv4cpInbvvrtDoyBH9rE/n2V29wQJPk8iCH1wipra9BhmiMA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} dependencies: - '@typescript-eslint/types': 8.12.2 - '@typescript-eslint/visitor-keys': 8.12.2 + '@typescript-eslint/types': 8.13.0 + '@typescript-eslint/visitor-keys': 8.13.0 dev: true - /@typescript-eslint/type-utils@5.32.0(eslint@8.21.0)(typescript@4.7.4): + /@typescript-eslint/type-utils@5.32.0(eslint@9.14.0)(typescript@4.7.4): resolution: {integrity: sha512-0gSsIhFDduBz3QcHJIp3qRCvVYbqzHg8D6bHFsDMrm0rURYDj+skBK2zmYebdCp+4nrd9VWd13egvhYFJj/wZg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: @@ -9768,22 +9833,41 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/utils': 5.32.0(eslint@8.21.0)(typescript@4.7.4) + '@typescript-eslint/utils': 5.32.0(eslint@9.14.0)(typescript@4.7.4) debug: 4.3.4 - eslint: 8.21.0 + eslint: 9.14.0 tsutils: 3.21.0(typescript@4.7.4) typescript: 4.7.4 transitivePeerDependencies: - supports-color dev: true + /@typescript-eslint/type-utils@8.13.0(eslint@9.14.0)(typescript@4.7.4): + resolution: {integrity: sha512-Rqnn6xXTR316fP4D2pohZenJnp+NwQ1mo7/JM+J1LWZENSLkJI8ID8QNtlvFeb0HnFSK94D6q0cnMX6SbE5/vA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/typescript-estree': 8.13.0(typescript@4.7.4) + '@typescript-eslint/utils': 8.13.0(eslint@9.14.0)(typescript@4.7.4) + debug: 4.3.4 + ts-api-utils: 1.4.0(typescript@4.7.4) + typescript: 4.7.4 + transitivePeerDependencies: + - eslint + - supports-color + dev: true + /@typescript-eslint/types@5.32.0: resolution: {integrity: sha512-EBUKs68DOcT/EjGfzywp+f8wG9Zw6gj6BjWu7KV/IYllqKJFPlZlLSYw/PTvVyiRw50t6wVbgv4p9uE2h6sZrQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /@typescript-eslint/types@8.12.2: - resolution: {integrity: sha512-VwDwMF1SZ7wPBUZwmMdnDJ6sIFk4K4s+ALKLP6aIQsISkPv8jhiw65sAK6SuWODN/ix+m+HgbYDkH+zLjrzvOA==} + /@typescript-eslint/types@8.13.0: + resolution: {integrity: sha512-4cyFErJetFLckcThRUFdReWJjVsPCqyBlJTi6IDEpc1GWCIIZRFxVppjWLIMcQhNGhdWJJRYFHpHoDWvMlDzng==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} dev: true @@ -9801,15 +9885,15 @@ packages: debug: 4.3.4 globby: 11.1.0 is-glob: 4.0.3 - semver: 7.5.4 + semver: 7.6.3 tsutils: 3.21.0(typescript@4.7.4) typescript: 4.7.4 transitivePeerDependencies: - supports-color dev: true - /@typescript-eslint/typescript-estree@8.12.2(typescript@4.7.4): - resolution: {integrity: sha512-mME5MDwGe30Pq9zKPvyduyU86PH7aixwqYR2grTglAdB+AN8xXQ1vFGpYaUSJ5o5P/5znsSBeNcs5g5/2aQwow==} + /@typescript-eslint/typescript-estree@8.13.0(typescript@4.7.4): + resolution: {integrity: sha512-v7SCIGmVsRK2Cy/LTLGN22uea6SaUIlpBcO/gnMGT/7zPtxp90bphcGf4fyrCQl3ZtiBKqVTG32hb668oIYy1g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' @@ -9817,8 +9901,8 @@ packages: typescript: optional: true dependencies: - '@typescript-eslint/types': 8.12.2 - '@typescript-eslint/visitor-keys': 8.12.2 + '@typescript-eslint/types': 8.13.0 + '@typescript-eslint/visitor-keys': 8.13.0 debug: 4.3.4 fast-glob: 3.3.2 is-glob: 4.0.3 @@ -9830,35 +9914,35 @@ packages: - supports-color dev: true - /@typescript-eslint/utils@5.32.0(eslint@8.21.0)(typescript@4.7.4): + /@typescript-eslint/utils@5.32.0(eslint@9.14.0)(typescript@4.7.4): resolution: {integrity: sha512-W7lYIAI5Zlc5K082dGR27Fczjb3Q57ECcXefKU/f0ajM5ToM0P+N9NmJWip8GmGu/g6QISNT+K6KYB+iSHjXCQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 dependencies: - '@types/json-schema': 7.0.11 + '@types/json-schema': 7.0.15 '@typescript-eslint/scope-manager': 5.32.0 '@typescript-eslint/types': 5.32.0 '@typescript-eslint/typescript-estree': 5.32.0(typescript@4.7.4) - eslint: 8.21.0 + eslint: 9.14.0 eslint-scope: 5.1.1 - eslint-utils: 3.0.0(eslint@8.21.0) + eslint-utils: 3.0.0(eslint@9.14.0) transitivePeerDependencies: - supports-color - typescript dev: true - /@typescript-eslint/utils@8.12.2(eslint@8.21.0)(typescript@4.7.4): - resolution: {integrity: sha512-UTTuDIX3fkfAz6iSVa5rTuSfWIYZ6ATtEocQ/umkRSyC9O919lbZ8dcH7mysshrCdrAM03skJOEYaBugxN+M6A==} + /@typescript-eslint/utils@8.13.0(eslint@9.14.0)(typescript@4.7.4): + resolution: {integrity: sha512-A1EeYOND6Uv250nybnLZapeXpYMl8tkzYUxqmoKAWnI4sei3ihf2XdZVd+vVOmHGcp3t+P7yRrNsyyiXTvShFQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 dependencies: - '@eslint-community/eslint-utils': 4.4.0(eslint@8.21.0) - '@typescript-eslint/scope-manager': 8.12.2 - '@typescript-eslint/types': 8.12.2 - '@typescript-eslint/typescript-estree': 8.12.2(typescript@4.7.4) - eslint: 8.21.0 + '@eslint-community/eslint-utils': 4.4.0(eslint@9.14.0) + '@typescript-eslint/scope-manager': 8.13.0 + '@typescript-eslint/types': 8.13.0 + '@typescript-eslint/typescript-estree': 8.13.0(typescript@4.7.4) + eslint: 9.14.0 transitivePeerDependencies: - supports-color - typescript @@ -9872,11 +9956,11 @@ packages: eslint-visitor-keys: 3.4.3 dev: true - /@typescript-eslint/visitor-keys@8.12.2: - resolution: {integrity: sha512-PChz8UaKQAVNHghsHcPyx1OMHoFRUEA7rJSK/mDhdq85bk+PLsUHUBqTQTFt18VJZbmxBovM65fezlheQRsSDA==} + /@typescript-eslint/visitor-keys@8.13.0: + resolution: {integrity: sha512-7N/+lztJqH4Mrf0lb10R/CbI1EaAMMGyF5y0oJvFoAhafwgiRA7TXyd8TFn8FC8k5y2dTsYogg238qavRGNnlw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} dependencies: - '@typescript-eslint/types': 8.12.2 + '@typescript-eslint/types': 8.13.0 eslint-visitor-keys: 3.4.3 dev: true @@ -10182,7 +10266,7 @@ packages: /acorn-globals@7.0.1: resolution: {integrity: sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==} dependencies: - acorn: 8.11.3 + acorn: 8.14.0 acorn-walk: 8.3.0 dev: true @@ -10202,13 +10286,6 @@ packages: acorn: 6.4.2 dev: false - /acorn-jsx@5.3.2(acorn@8.11.3): - resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} - peerDependencies: - acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - dependencies: - acorn: 8.11.3 - /acorn-jsx@5.3.2(acorn@8.14.0): resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: @@ -10226,11 +10303,6 @@ packages: hasBin: true dev: false - /acorn@8.11.3: - resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} - engines: {node: '>=0.4.0'} - hasBin: true - /acorn@8.14.0: resolution: {integrity: sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==} engines: {node: '>=0.4.0'} @@ -10481,24 +10553,14 @@ packages: /array-flatten@2.1.2: resolution: {integrity: sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==} - /array-includes@3.1.5: - resolution: {integrity: sha512-iSDYZMMyTPkiFasVqfuAQnWAYcvO/SeBSCGKePoEthjp4LEMTe4uLc7b025o4jAZpHhihh8xPo99TNWUWWkGDQ==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.22.5 - get-intrinsic: 1.2.4 - is-string: 1.0.7 - dev: true - - /array-includes@3.1.7: - resolution: {integrity: sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==} + /array-includes@3.1.8: + resolution: {integrity: sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==} engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.5 + es-abstract: 1.23.3 + es-object-atoms: 1.0.0 get-intrinsic: 1.2.4 is-string: 1.0.7 dev: true @@ -10507,13 +10569,15 @@ packages: resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} engines: {node: '>=8'} - /array.prototype.flat@1.3.0: - resolution: {integrity: sha512-12IUEkHsAhA4DY5s0FPgNXIdc8VRSqD9Zp78a5au9abH/SOBrsp082JOWFNTjkMozh8mqcdiKuaLGhPeYztxSw==} + /array.prototype.findlast@1.2.5: + resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==} engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.5 + es-abstract: 1.23.3 + es-errors: 1.3.0 + es-object-atoms: 1.0.0 es-shim-unscopables: 1.0.2 dev: true @@ -10523,17 +10587,28 @@ packages: dependencies: call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.5 + es-abstract: 1.23.3 + es-shim-unscopables: 1.0.2 + dev: true + + /array.prototype.flatmap@1.3.2: + resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 es-shim-unscopables: 1.0.2 dev: true - /array.prototype.flatmap@1.3.0: - resolution: {integrity: sha512-PZC9/8TKAIxcWKdyeb77EzULHPrIX/tIZebLJUQOMR1OwYosT8yggdfWScfTBCDj5utONvOuPQQumYsU2ULbkg==} + /array.prototype.tosorted@1.1.4: + resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.5 + es-abstract: 1.23.3 + es-errors: 1.3.0 es-shim-unscopables: 1.0.2 dev: true @@ -10544,7 +10619,7 @@ packages: array-buffer-byte-length: 1.0.1 call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.5 + es-abstract: 1.23.3 es-errors: 1.3.0 get-intrinsic: 1.2.4 is-array-buffer: 3.0.4 @@ -12542,7 +12617,7 @@ packages: postcss-modules-scope: 3.2.0(postcss@8.4.47) postcss-modules-values: 4.0.0(postcss@8.4.47) postcss-value-parser: 4.2.0 - semver: 7.5.4 + semver: 7.6.3 webpack: 5.74.0(@swc/core@1.8.0)(esbuild@0.18.20)(webpack-cli@4.10.0) dev: true @@ -12559,7 +12634,7 @@ packages: postcss-modules-scope: 3.2.0(postcss@8.4.47) postcss-modules-values: 4.0.0(postcss@8.4.47) postcss-value-parser: 4.2.0 - semver: 7.5.4 + semver: 7.6.3 webpack: 5.96.1 dev: false @@ -12939,7 +13014,6 @@ packages: call-bind: 1.0.7 es-errors: 1.3.0 is-data-view: 1.0.1 - dev: false /data-view-byte-length@1.0.1: resolution: {integrity: sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==} @@ -12948,7 +13022,6 @@ packages: call-bind: 1.0.7 es-errors: 1.3.0 is-data-view: 1.0.1 - dev: false /data-view-byte-offset@1.0.0: resolution: {integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==} @@ -12957,7 +13030,6 @@ packages: call-bind: 1.0.7 es-errors: 1.3.0 is-data-view: 1.0.1 - dev: false /dataloader@1.4.0: resolution: {integrity: sha512-68s5jYdlvasItOJnCuI2Q9s4q98g0pCyL3HrcKJu8KNugUl8ahgmZYg38ysLTgQjjXX3H8CJLkAvWrclWfcalw==} @@ -12992,6 +13064,7 @@ packages: optional: true dependencies: ms: 2.1.3 + dev: false /debug@4.3.4: resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} @@ -13508,52 +13581,6 @@ packages: accepts: 1.3.8 escape-html: 1.0.3 - /es-abstract@1.22.5: - resolution: {integrity: sha512-oW69R+4q2wG+Hc3KZePPZxOiisRIqfKBVo/HLx94QcJeWGU/8sZhCvc829rd1kS366vlJbzBfXf9yWwf0+Ko7w==} - engines: {node: '>= 0.4'} - dependencies: - array-buffer-byte-length: 1.0.1 - arraybuffer.prototype.slice: 1.0.3 - available-typed-arrays: 1.0.7 - call-bind: 1.0.7 - es-define-property: 1.0.0 - es-errors: 1.3.0 - es-set-tostringtag: 2.0.3 - es-to-primitive: 1.2.1 - function.prototype.name: 1.1.6 - get-intrinsic: 1.2.4 - get-symbol-description: 1.0.2 - globalthis: 1.0.3 - gopd: 1.0.1 - has-property-descriptors: 1.0.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 - hasown: 2.0.2 - internal-slot: 1.0.7 - is-array-buffer: 3.0.4 - is-callable: 1.2.7 - is-negative-zero: 2.0.3 - is-regex: 1.1.4 - is-shared-array-buffer: 1.0.3 - is-string: 1.0.7 - is-typed-array: 1.1.13 - is-weakref: 1.0.2 - object-inspect: 1.13.1 - object-keys: 1.1.1 - object.assign: 4.1.5 - regexp.prototype.flags: 1.5.2 - safe-array-concat: 1.1.0 - safe-regex-test: 1.0.3 - string.prototype.trim: 1.2.8 - string.prototype.trimend: 1.0.7 - string.prototype.trimstart: 1.0.7 - typed-array-buffer: 1.0.2 - typed-array-byte-length: 1.0.1 - typed-array-byte-offset: 1.0.2 - typed-array-length: 1.0.5 - unbox-primitive: 1.0.2 - which-typed-array: 1.1.14 - /es-abstract@1.23.3: resolution: {integrity: sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==} engines: {node: '>= 0.4'} @@ -13573,7 +13600,7 @@ packages: function.prototype.name: 1.1.6 get-intrinsic: 1.2.4 get-symbol-description: 1.0.2 - globalthis: 1.0.3 + globalthis: 1.0.4 gopd: 1.0.1 has-property-descriptors: 1.0.2 has-proto: 1.0.3 @@ -13604,7 +13631,6 @@ packages: typed-array-length: 1.0.6 unbox-primitive: 1.0.2 which-typed-array: 1.1.15 - dev: false /es-define-property@1.0.0: resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==} @@ -13616,6 +13642,27 @@ packages: resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} engines: {node: '>= 0.4'} + /es-iterator-helpers@1.2.0: + resolution: {integrity: sha512-tpxqxncxnpw3c93u8n3VOzACmRFoVmWJqbWXvX/JfKbkhBw1oslgPrUfeSt2psuqyEJFD6N/9lg5i7bsKpoq+Q==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-errors: 1.3.0 + es-set-tostringtag: 2.0.3 + function-bind: 1.1.2 + get-intrinsic: 1.2.4 + globalthis: 1.0.4 + gopd: 1.0.1 + has-property-descriptors: 1.0.2 + has-proto: 1.0.3 + has-symbols: 1.0.3 + internal-slot: 1.0.7 + iterator.prototype: 1.1.3 + safe-array-concat: 1.1.2 + dev: true + /es-module-lexer@0.9.3: resolution: {integrity: sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ==} dev: true @@ -13632,7 +13679,6 @@ packages: engines: {node: '>= 0.4'} dependencies: es-errors: 1.3.0 - dev: false /es-set-tostringtag@2.0.3: resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==} @@ -13672,7 +13718,7 @@ packages: resolution: {integrity: sha512-8Ja+rNJ0Lt56Pcf3TAmpBZjmx8ZcK5Ts4cAzIOjsjevg9oSXJnl6SUQ2EevU8tv3h6ZLWmoKL5H4fgWvdvfETw==} dependencies: '@types/estree-jsx': 1.0.5 - acorn: 8.11.3 + acorn: 8.14.0 esast-util-from-estree: 2.0.0 vfile-message: 4.0.2 @@ -13762,185 +13808,101 @@ packages: source-map: 0.6.1 dev: true - /eslint-config-formidable@4.0.0: - resolution: {integrity: sha512-q23C58Kf24Ob4dlwZQE5/JwvmrQ1UyxsW1j8+jNJgDKh+KhEySj3DRGkzy3lJ0556AEApGYoU7IC4gvmJ7iiKA==} - engines: {node: '>= 0.10.0'} - dev: true - - /eslint-config-prettier@8.5.0(eslint@8.21.0): - resolution: {integrity: sha512-obmWKLUNCnhtQRKc+tmnYuQl0pFU1ibYJQ5BGhTVB08bHe9wC8qUeG7c08dj9XX+AuPj1YSGSQIHl1pnDHZR0Q==} + /eslint-config-prettier@9.1.0(eslint@9.14.0): + resolution: {integrity: sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==} hasBin: true peerDependencies: eslint: '>=7.0.0' dependencies: - eslint: 8.21.0 + eslint: 9.14.0 dev: true - /eslint-import-resolver-node@0.3.6: - resolution: {integrity: sha512-0En0w03NRVMn9Uiyn8YRPDKvWjxCWkslUEhGNTdGx15RvPJYQ+lbOlqrlNI2vEAs4pDYK4f/HN2TbDmk5TP0iw==} + /eslint-plugin-jest@28.9.0(@typescript-eslint/eslint-plugin@5.32.0)(eslint@9.14.0)(jest@29.7.0)(typescript@4.7.4): + resolution: {integrity: sha512-rLu1s1Wf96TgUUxSw6loVIkNtUjq1Re7A9QdCCHSohnvXEBAjuL420h0T/fMmkQlNsQP2GhQzEUpYHPfxBkvYQ==} + engines: {node: ^16.10.0 || ^18.12.0 || >=20.0.0} + peerDependencies: + '@typescript-eslint/eslint-plugin': ^6.0.0 || ^7.0.0 || ^8.0.0 + eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 + jest: '*' + peerDependenciesMeta: + '@typescript-eslint/eslint-plugin': + optional: true + jest: + optional: true dependencies: - debug: 3.2.7 - resolve: 1.22.8 + '@typescript-eslint/eslint-plugin': 5.32.0(@typescript-eslint/parser@5.32.0)(eslint@9.14.0)(typescript@4.7.4) + '@typescript-eslint/utils': 8.13.0(eslint@9.14.0)(typescript@4.7.4) + eslint: 9.14.0 + jest: 29.7.0(@types/node@18.6.1)(ts-node@10.9.1) transitivePeerDependencies: - supports-color + - typescript dev: true - /eslint-module-utils@2.7.3(@typescript-eslint/parser@5.32.0)(eslint-import-resolver-node@0.3.6): - resolution: {integrity: sha512-088JEC7O3lDZM9xGe0RerkOMd0EjFl+Yvd1jPWIkMT5u3H9+HC34mWWPnqPrN13gieT9pBOO+Qt07Nb/6TresQ==} - engines: {node: '>=4'} + /eslint-plugin-prettier@5.2.1(eslint-config-prettier@9.1.0)(eslint@9.14.0)(prettier@3.3.3): + resolution: {integrity: sha512-gH3iR3g4JfF+yYPaJYkN7jEl9QbweL/YfkoRlNnuIEHEz1vHVlCmWOS+eGGiRuzHQXdJFCOTxRgvju9b8VUmrw==} + engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: - '@typescript-eslint/parser': '*' - eslint-import-resolver-node: '*' - eslint-import-resolver-typescript: '*' - eslint-import-resolver-webpack: '*' + '@types/eslint': '>=8.0.0' + eslint: '>=8.0.0' + eslint-config-prettier: '*' + prettier: '>=3.0.0' peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - eslint-import-resolver-node: + '@types/eslint': optional: true - eslint-import-resolver-typescript: - optional: true - eslint-import-resolver-webpack: + eslint-config-prettier: optional: true dependencies: - '@typescript-eslint/parser': 5.32.0(eslint@8.21.0)(typescript@4.7.4) - debug: 3.2.7 - eslint-import-resolver-node: 0.3.6 - find-up: 2.1.0 - transitivePeerDependencies: - - supports-color + eslint: 9.14.0 + eslint-config-prettier: 9.1.0(eslint@9.14.0) + prettier: 3.3.3 + prettier-linter-helpers: 1.0.0 + synckit: 0.9.2 dev: true - /eslint-plugin-eslint-comments@3.2.0(eslint@8.21.0): - resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==} - engines: {node: '>=6.5.0'} + /eslint-plugin-promise@7.1.0(eslint@9.14.0): + resolution: {integrity: sha512-8trNmPxdAy3W620WKDpaS65NlM5yAumod6XeC4LOb+jxlkG4IVcp68c6dXY2ev+uT4U1PtG57YDV6EGAXN0GbQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: '>=4.19.1' + eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 dependencies: - escape-string-regexp: 1.0.5 - eslint: 8.21.0 - ignore: 5.2.0 + eslint: 9.14.0 dev: true - /eslint-plugin-filenames@1.3.2(eslint@8.21.0): - resolution: {integrity: sha512-tqxJTiEM5a0JmRCUYQmxw23vtTxrb2+a3Q2mMOPhFxvt7ZQQJmdiuMby9B/vUAuVMghyP7oET+nIf6EO6CBd/w==} - peerDependencies: - eslint: '*' - dependencies: - eslint: 8.21.0 - lodash.camelcase: 4.3.0 - lodash.kebabcase: 4.1.1 - lodash.snakecase: 4.1.1 - lodash.upperfirst: 4.3.1 - dev: true - - /eslint-plugin-import@2.26.0(@typescript-eslint/parser@5.32.0)(eslint@8.21.0): - resolution: {integrity: sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==} - engines: {node: '>=4'} - peerDependencies: - '@typescript-eslint/parser': '*' - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - peerDependenciesMeta: - '@typescript-eslint/parser': - optional: true - dependencies: - '@typescript-eslint/parser': 5.32.0(eslint@8.21.0)(typescript@4.7.4) - array-includes: 3.1.5 - array.prototype.flat: 1.3.0 - debug: 2.6.9 - doctrine: 2.1.0 - eslint: 8.21.0 - eslint-import-resolver-node: 0.3.6 - eslint-module-utils: 2.7.3(@typescript-eslint/parser@5.32.0)(eslint-import-resolver-node@0.3.6) - has: 1.0.3 - is-core-module: 2.9.0 - is-glob: 4.0.3 - minimatch: 3.1.2 - object.values: 1.1.5 - resolve: 1.22.1 - tsconfig-paths: 3.14.1 - transitivePeerDependencies: - - eslint-import-resolver-typescript - - eslint-import-resolver-webpack - - supports-color - dev: true - - /eslint-plugin-jest@26.7.0(@typescript-eslint/eslint-plugin@5.32.0)(eslint@8.21.0)(jest@29.7.0)(typescript@4.7.4): - resolution: {integrity: sha512-/YNitdfG3o3cC6juZziAdkk6nfJt01jXVfj4AgaYVLs7bupHzRDL5K+eipdzhDXtQsiqaX1TzfwSuRlEgeln1A==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - '@typescript-eslint/eslint-plugin': ^5.0.0 - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - jest: '*' - peerDependenciesMeta: - '@typescript-eslint/eslint-plugin': - optional: true - jest: - optional: true - dependencies: - '@typescript-eslint/eslint-plugin': 5.32.0(@typescript-eslint/parser@5.32.0)(eslint@8.21.0)(typescript@4.7.4) - '@typescript-eslint/utils': 5.32.0(eslint@8.21.0)(typescript@4.7.4) - eslint: 8.21.0 - jest: 29.7.0(@types/node@18.6.1)(ts-node@10.9.1) - transitivePeerDependencies: - - supports-color - - typescript - dev: true - - /eslint-plugin-promise@6.0.0(eslint@8.21.0): - resolution: {integrity: sha512-7GPezalm5Bfi/E22PnQxDWH2iW9GTvAlUNTztemeHb6c1BniSyoeTrM87JkC0wYdi6aQrZX9p2qEiAno8aTcbw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - dependencies: - eslint: 8.21.0 - dev: true - - /eslint-plugin-react-hooks@4.6.0(eslint@8.21.0): - resolution: {integrity: sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==} + /eslint-plugin-react-hooks@5.0.0(eslint@9.14.0): + resolution: {integrity: sha512-hIOwI+5hYGpJEc4uPRmz2ulCjAGD/N13Lukkh8cLV0i2IRk/bdZDYjgLVHj+U9Z704kLIdIO6iueGvxNur0sgw==} engines: {node: '>=10'} peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 dependencies: - eslint: 8.21.0 + eslint: 9.14.0 dev: true - /eslint-plugin-react@7.30.1(eslint@8.21.0): - resolution: {integrity: sha512-NbEvI9jtqO46yJA3wcRF9Mo0lF9T/jhdHqhCHXiXtD+Zcb98812wvokjWpU7Q4QH5edo6dmqrukxVvWWXHlsUg==} + /eslint-plugin-react@7.37.2(eslint@9.14.0): + resolution: {integrity: sha512-EsTAnj9fLVr/GZleBLFbj/sSuXeWmp1eXIN60ceYnZveqEaUCyW4X+Vh4WTdUhCkW4xutXYqTXCUSyqD4rB75w==} engines: {node: '>=4'} peerDependencies: - eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 + eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 dependencies: - array-includes: 3.1.5 - array.prototype.flatmap: 1.3.0 + array-includes: 3.1.8 + array.prototype.findlast: 1.2.5 + array.prototype.flatmap: 1.3.2 + array.prototype.tosorted: 1.1.4 doctrine: 2.1.0 - eslint: 8.21.0 + es-iterator-helpers: 1.2.0 + eslint: 9.14.0 estraverse: 5.3.0 + hasown: 2.0.2 jsx-ast-utils: 3.3.1 minimatch: 3.1.2 - object.entries: 1.1.5 - object.fromentries: 2.0.5 - object.hasown: 1.1.1 - object.values: 1.1.5 + object.entries: 1.1.8 + object.fromentries: 2.0.8 + object.values: 1.2.0 prop-types: 15.8.1 - resolve: 2.0.0-next.4 - semver: 6.3.0 - string.prototype.matchall: 4.0.7 - dev: true - - /eslint-plugin-storybook@0.10.2(eslint@8.21.0)(typescript@4.7.4): - resolution: {integrity: sha512-iOrFJfyLgRLIbWDLbbs3J4yrknvIB+uiZ8KGqGOEXTL7/BGuBMZLiIU9Q4Pm/VYJrHN4JqmMtwCSrAemHL2nFg==} - engines: {node: '>= 18'} - peerDependencies: - eslint: '>=6' - dependencies: - '@storybook/csf': 0.1.11 - '@typescript-eslint/utils': 8.12.2(eslint@8.21.0)(typescript@4.7.4) - eslint: 8.21.0 - ts-dedent: 2.2.0 - transitivePeerDependencies: - - supports-color - - typescript + resolve: 2.0.0-next.5 + semver: 6.3.1 + string.prototype.matchall: 4.0.11 + string.prototype.repeat: 1.0.0 dev: true /eslint-scope@5.1.1: @@ -13950,21 +13912,21 @@ packages: esrecurse: 4.3.0 estraverse: 4.3.0 - /eslint-scope@7.1.1: - resolution: {integrity: sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /eslint-scope@8.2.0: + resolution: {integrity: sha512-PHlWUfG6lvPc3yvP5A4PNyBL1W8fkDUccmI21JUu/+GKZBoH/W5u6usENXUrWFRsyoW5ACUjFGgAFQp5gUlb/A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 dev: true - /eslint-utils@3.0.0(eslint@8.21.0): + /eslint-utils@3.0.0(eslint@9.14.0): resolution: {integrity: sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==} engines: {node: ^10.0.0 || ^12.0.0 || >= 14.0.0} peerDependencies: eslint: '>=5' dependencies: - eslint: 8.21.0 + eslint: 9.14.0 eslint-visitor-keys: 2.1.0 dev: true @@ -13973,71 +13935,72 @@ packages: engines: {node: '>=10'} dev: true - /eslint-visitor-keys@3.3.0: - resolution: {integrity: sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dev: true - /eslint-visitor-keys@3.4.3: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true - /eslint@8.21.0: - resolution: {integrity: sha512-/XJ1+Qurf1T9G2M5IHrsjp+xrGT73RZf23xA1z5wB1ZzzEAWSZKvRwhWxTFp1rvkvCfwcvAUNAP31bhKTTGfDA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /eslint-visitor-keys@4.2.0: + resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + dev: true + + /eslint@9.14.0: + resolution: {integrity: sha512-c2FHsVBr87lnUtjP4Yhvk4yEhKrQavGafRA/Se1ouse8PfbfC/Qh9Mxa00yWsZRlqeUB9raXip0aiiUZkgnr9g==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true + peerDependencies: + jiti: '*' + peerDependenciesMeta: + jiti: + optional: true dependencies: - '@eslint/eslintrc': 1.3.0 - '@humanwhocodes/config-array': 0.10.4 - '@humanwhocodes/gitignore-to-minimatch': 1.0.2 + '@eslint-community/eslint-utils': 4.4.0(eslint@9.14.0) + '@eslint-community/regexpp': 4.12.1 + '@eslint/config-array': 0.18.0 + '@eslint/core': 0.7.0 + '@eslint/eslintrc': 3.1.0 + '@eslint/js': 9.14.0 + '@eslint/plugin-kit': 0.2.2 + '@humanfs/node': 0.16.6 + '@humanwhocodes/module-importer': 1.0.1 + '@humanwhocodes/retry': 0.4.1 + '@types/estree': 1.0.6 + '@types/json-schema': 7.0.15 ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.3 debug: 4.3.4 - doctrine: 3.0.0 escape-string-regexp: 4.0.0 - eslint-scope: 7.1.1 - eslint-utils: 3.0.0(eslint@8.21.0) - eslint-visitor-keys: 3.3.0 - espree: 9.3.3 - esquery: 1.4.0 + eslint-scope: 8.2.0 + eslint-visitor-keys: 4.2.0 + espree: 10.3.0 + esquery: 1.6.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 - file-entry-cache: 6.0.1 + file-entry-cache: 8.0.0 find-up: 5.0.0 - functional-red-black-tree: 1.0.1 glob-parent: 6.0.2 - globals: 13.17.0 - globby: 11.1.0 - grapheme-splitter: 1.0.4 - ignore: 5.2.0 - import-fresh: 3.3.0 + ignore: 5.3.1 imurmurhash: 0.1.4 is-glob: 4.0.3 - js-yaml: 4.1.0 json-stable-stringify-without-jsonify: 1.0.1 - levn: 0.4.1 lodash.merge: 4.6.2 minimatch: 3.1.2 natural-compare: 1.4.0 - optionator: 0.9.1 - regexpp: 3.2.0 - strip-ansi: 6.0.1 - strip-json-comments: 3.1.1 + optionator: 0.9.4 text-table: 0.2.0 - v8-compile-cache: 2.3.0 transitivePeerDependencies: - supports-color dev: true - /espree@9.3.3: - resolution: {integrity: sha512-ORs1Rt/uQTqUKjDdGCyrtYxbazf5umATSf/K4qxjmZHORR6HJk+2s/2Pqe+Kk49HHINC/xNIrGfgh8sZcll0ng==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} + /espree@10.3.0: + resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} dependencies: - acorn: 8.11.3 - acorn-jsx: 5.3.2(acorn@8.11.3) - eslint-visitor-keys: 3.4.3 + acorn: 8.14.0 + acorn-jsx: 5.3.2(acorn@8.14.0) + eslint-visitor-keys: 4.2.0 dev: true /esprima@4.0.1: @@ -14045,8 +14008,8 @@ packages: engines: {node: '>=4'} hasBin: true - /esquery@1.4.0: - resolution: {integrity: sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==} + /esquery@1.6.0: + resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==} engines: {node: '>=0.10'} dependencies: estraverse: 5.3.0 @@ -14069,7 +14032,7 @@ packages: /estree-util-attach-comments@3.0.0: resolution: {integrity: sha512-cKUwm/HUcTDsYh/9FgnuFqpfquUbwIqwKM26BVCGDPVgvaCl/nDCCjUfiLlx6lsEZ3Z4RFxNbOQ60pkaEwFxGw==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 /estree-util-build-jsx@3.0.1: resolution: {integrity: sha512-8U5eiL6BTrPxp/CHbs2yMgP8ftMhR5ww1eIKoWRMlqvltHF8fZn5LRDvTKuxD3DUn+shRbLGqXemcP51oFCsGQ==} @@ -14085,7 +14048,7 @@ packages: /estree-util-scope@1.0.0: resolution: {integrity: sha512-2CAASclonf+JFWBNJPndcOpA8EMJwa0Q8LUFJEKqXLW6+qBvbFZuF5gItbQOs/umBUkjviCSDCbBwU2cXbmrhQ==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 devlop: 1.1.0 /estree-util-to-js@2.0.0: @@ -14098,7 +14061,7 @@ packages: /estree-util-value-to-estree@3.2.1: resolution: {integrity: sha512-Vt2UOjyPbNQQgT5eJh+K5aATti0OjCIAGc9SgMdOFYbohuifsWclR74l0iZTJwePMgWYdX1hlVS+dedH9XV8kw==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 dev: false /estree-util-visit@2.0.0: @@ -14110,7 +14073,7 @@ packages: /estree-walker@3.0.3: resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 /esutils@2.0.3: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} @@ -14385,6 +14348,10 @@ packages: /fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} + /fast-diff@1.3.0: + resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==} + dev: true + /fast-glob@3.2.11: resolution: {integrity: sha512-xrO3+1bxSo3ZVHAnqzyuewYT6aMFHRAd4Kcs92MAonjwQZLsK9d0SF1IyQ3k5PoirxTW0Oe/RqFgMQ6TcNE5Ew==} engines: {node: '>=8.6.0'} @@ -14499,11 +14466,11 @@ packages: escape-string-regexp: 1.0.5 dev: false - /file-entry-cache@6.0.1: - resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} - engines: {node: ^10.12.0 || >=12.0.0} + /file-entry-cache@8.0.0: + resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} + engines: {node: '>=16.0.0'} dependencies: - flat-cache: 3.0.4 + flat-cache: 4.0.1 dev: true /file-loader@6.2.0(webpack@5.96.1): @@ -14665,6 +14632,14 @@ packages: rimraf: 3.0.2 dev: true + /flat-cache@4.0.1: + resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} + engines: {node: '>=16'} + dependencies: + flatted: 3.3.1 + keyv: 4.5.4 + dev: true + /flat@5.0.2: resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==} hasBin: true @@ -14673,6 +14648,10 @@ packages: resolution: {integrity: sha512-0sQoMh9s0BYsm+12Huy/rkKxVu4R1+r96YX5cG44rHV0pQ6iC3Q+mkoMFaGWObMFYQxCVT+ssG1ksneA2MI9KQ==} dev: true + /flatted@3.3.1: + resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==} + dev: true + /flow-enums-runtime@0.0.6: resolution: {integrity: sha512-3PYnM29RFXwvAN6Pc/scUfkI7RwhQ/xqyLUyPNlXUp9S40zI8nup9tUSrTLSVnWGBN38FNiGWbwZOB6uR4OGdw==} @@ -14756,7 +14735,7 @@ packages: memfs: 3.5.3 minimatch: 3.1.2 schema-utils: 2.7.0 - semver: 7.5.4 + semver: 7.6.3 tapable: 1.1.3 typescript: 5.2.2 webpack: 5.96.1 @@ -14929,7 +14908,7 @@ packages: dependencies: call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.5 + es-abstract: 1.23.3 functions-have-names: 1.2.3 /functional-red-black-tree@1.0.1: @@ -15004,7 +14983,7 @@ packages: engines: {node: '>= 6'} dependencies: glob: 7.2.3 - ignore: 5.2.0 + ignore: 5.3.1 lodash.difference: 4.5.0 lodash.union: 4.6.0 make-array: 1.0.5 @@ -15040,7 +15019,7 @@ packages: dependencies: foreground-child: 3.1.1 jackspeak: 2.3.6 - minimatch: 9.0.3 + minimatch: 9.0.5 minipass: 7.0.4 path-scurry: 1.10.1 @@ -15126,11 +15105,14 @@ packages: resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} engines: {node: '>=4'} - /globals@13.17.0: - resolution: {integrity: sha512-1C+6nQRb1GwGMKm2dH/E7enFAMxGTmGI7/dEdhy/DNelv85w9B72t3uc5frtMNXIbzrarJJ/lTCjcaZwbLJmyw==} - engines: {node: '>=8'} - dependencies: - type-fest: 0.20.2 + /globals@14.0.0: + resolution: {integrity: sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==} + engines: {node: '>=18'} + dev: true + + /globals@15.12.0: + resolution: {integrity: sha512-1+gLErljJFhbOVyaetcwJiJ4+eLe45S2E7P5UiZ9xGfeq3ATQf5DOv9G7MH3gGbKQLkzmNh2DxfZwLdw+j6oTQ==} + engines: {node: '>=18'} dev: true /globals@9.18.0: @@ -15138,11 +15120,12 @@ packages: engines: {node: '>=0.10.0'} dev: true - /globalthis@1.0.3: - resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==} + /globalthis@1.0.4: + resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} engines: {node: '>= 0.4'} dependencies: define-properties: 1.2.1 + gopd: 1.0.1 /globby@11.1.0: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} @@ -15151,7 +15134,7 @@ packages: array-union: 2.1.0 dir-glob: 3.0.1 fast-glob: 3.3.2 - ignore: 5.2.0 + ignore: 5.3.1 merge2: 1.4.1 slash: 3.0.0 @@ -15198,6 +15181,10 @@ packages: resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} dev: true + /graphemer@1.4.0: + resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + dev: true + /graphql-tag@2.12.6(graphql@15.8.0): resolution: {integrity: sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==} engines: {node: '>=10'} @@ -15280,13 +15267,6 @@ packages: engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} dev: false - /has@1.0.3: - resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} - engines: {node: '>= 0.4.0'} - dependencies: - function-bind: 1.1.2 - dev: true - /hasown@2.0.2: resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} engines: {node: '>= 0.4'} @@ -15337,7 +15317,7 @@ packages: /hast-util-to-estree@3.1.0: resolution: {integrity: sha512-lfX5g6hqVh9kjS/B9E2gSkvHH4SZNiQFiqWS0x9fENzEl+8W12RqdRxX6d/Cwxi30tPQs3bIO+aolQJNp1bIyw==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 '@types/estree-jsx': 1.0.5 '@types/hast': 3.0.4 comma-separated-tokens: 2.0.3 @@ -15375,7 +15355,7 @@ packages: /hast-util-to-jsx-runtime@2.3.0: resolution: {integrity: sha512-H/y0+IWPdsLLS738P8tDnrQ8Z+dj12zQQ6WC11TIM21C8WFVoIxcqWXf2H3hiTVZjF1AWqoimGwrTWecWrnmRQ==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 '@types/hast': 3.0.4 '@types/unist': 3.0.2 comma-separated-tokens: 2.0.3 @@ -15777,11 +15757,11 @@ packages: /ignore@5.2.0: resolution: {integrity: sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==} engines: {node: '>= 4'} + dev: true /ignore@5.3.1: resolution: {integrity: sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==} engines: {node: '>= 4'} - dev: false /image-size@1.1.1: resolution: {integrity: sha512-541xKlUw6jr/6gGuk92F+mYM5zaFAc5ahphvkqvNe2bQ6gVBkd6bfrmVJ2t4KDAfikAYZyIqTnktX3i6/aQDrQ==} @@ -15894,7 +15874,7 @@ packages: dependencies: es-errors: 1.3.0 hasown: 2.0.2 - side-channel: 1.0.4 + side-channel: 1.0.6 /internmap@1.0.1: resolution: {integrity: sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw==} @@ -15975,6 +15955,13 @@ packages: /is-arrayish@0.2.1: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + /is-async-function@2.0.0: + resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} + engines: {node: '>= 0.4'} + dependencies: + has-tostringtag: 1.0.2 + dev: true + /is-bigint@1.0.4: resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} dependencies: @@ -16018,18 +16005,11 @@ packages: dependencies: hasown: 2.0.2 - /is-core-module@2.9.0: - resolution: {integrity: sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==} - dependencies: - has: 1.0.3 - dev: true - /is-data-view@1.0.1: resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==} engines: {node: '>= 0.4'} dependencies: is-typed-array: 1.1.13 - dev: false /is-date-object@1.0.5: resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} @@ -16067,6 +16047,12 @@ packages: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} + /is-finalizationregistry@1.0.2: + resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} + dependencies: + call-bind: 1.0.7 + dev: true + /is-fullwidth-code-point@2.0.0: resolution: {integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==} engines: {node: '>=4'} @@ -16126,6 +16112,11 @@ packages: is-glob: 2.0.1 dev: false + /is-map@2.0.3: + resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==} + engines: {node: '>= 0.4'} + dev: true + /is-negative-zero@2.0.3: resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==} engines: {node: '>= 0.4'} @@ -16219,6 +16210,11 @@ packages: engines: {node: '>=6'} dev: false + /is-set@2.0.3: + resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==} + engines: {node: '>= 0.4'} + dev: true + /is-shared-array-buffer@1.0.3: resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==} engines: {node: '>= 0.4'} @@ -16262,7 +16258,7 @@ packages: resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==} engines: {node: '>= 0.4'} dependencies: - which-typed-array: 1.1.14 + which-typed-array: 1.1.15 /is-typedarray@1.0.0: resolution: {integrity: sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==} @@ -16279,11 +16275,24 @@ packages: is-invalid-path: 0.1.0 dev: false + /is-weakmap@2.0.2: + resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} + engines: {node: '>= 0.4'} + dev: true + /is-weakref@1.0.2: resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} dependencies: call-bind: 1.0.7 + /is-weakset@2.0.3: + resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.7 + get-intrinsic: 1.2.4 + dev: true + /is-whitespace-character@1.0.4: resolution: {integrity: sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==} dev: true @@ -16355,7 +16364,7 @@ packages: '@babel/parser': 7.24.7 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.0 - semver: 7.5.4 + semver: 7.6.3 transitivePeerDependencies: - supports-color dev: true @@ -16388,6 +16397,17 @@ packages: istanbul-lib-report: 3.0.0 dev: true + /iterator.prototype@1.1.3: + resolution: {integrity: sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==} + engines: {node: '>= 0.4'} + dependencies: + define-properties: 1.2.1 + get-intrinsic: 1.2.4 + has-symbols: 1.0.3 + reflect.getprototypeof: 1.0.6 + set-function-name: 2.0.2 + dev: true + /jackspeak@2.3.6: resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} engines: {node: '>=14'} @@ -16793,7 +16813,7 @@ packages: jest-util: 29.7.0 natural-compare: 1.4.0 pretty-format: 29.7.0 - semver: 7.5.4 + semver: 7.6.3 transitivePeerDependencies: - supports-color dev: true @@ -16972,7 +16992,7 @@ packages: optional: true dependencies: abab: 2.0.6 - acorn: 8.11.3 + acorn: 8.14.0 acorn-globals: 7.0.1 cssom: 0.5.0 cssstyle: 2.3.0 @@ -17020,7 +17040,6 @@ packages: /json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} - dev: false /json-parse-better-errors@1.0.2: resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} @@ -17097,14 +17116,14 @@ packages: lodash.isstring: 4.0.1 lodash.once: 4.1.1 ms: 2.1.3 - semver: 7.5.4 + semver: 7.6.3 dev: true /jsx-ast-utils@3.3.1: resolution: {integrity: sha512-pxrjmNpeRw5wwVeWyEAk7QJu2GnBO3uzPFmHCKJJFPKK2Cy0cWL23krGtLdnMmbIi6/FjlrQpPyfQI19ByPOhQ==} engines: {node: '>=4.0'} dependencies: - array-includes: 3.1.7 + array-includes: 3.1.8 object.assign: 4.1.5 dev: true @@ -17127,7 +17146,6 @@ packages: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} dependencies: json-buffer: 3.0.1 - dev: false /kind-of@6.0.3: resolution: {integrity: sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==} @@ -17367,10 +17385,6 @@ packages: webpack: 5.74.0(@swc/core@1.8.0)(esbuild@0.18.20)(webpack-cli@4.10.0) dev: true - /lodash.camelcase@4.3.0: - resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==} - dev: true - /lodash.debounce@4.0.8: resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} @@ -17402,10 +17416,6 @@ packages: resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==} dev: true - /lodash.kebabcase@4.1.1: - resolution: {integrity: sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==} - dev: true - /lodash.memoize@4.1.2: resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} @@ -17417,10 +17427,6 @@ packages: resolution: {integrity: sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==} dev: true - /lodash.snakecase@4.1.1: - resolution: {integrity: sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==} - dev: true - /lodash.startcase@4.4.0: resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==} dev: true @@ -17436,10 +17442,6 @@ packages: resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==} dev: false - /lodash.upperfirst@4.3.1: - resolution: {integrity: sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg==} - dev: true - /lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} @@ -18316,7 +18318,7 @@ packages: /micromark-extension-mdx-expression@3.0.0: resolution: {integrity: sha512-sI0nwhUDz97xyzqJAbHQhp5TfaxEvZZZ2JDqUo+7NvyIYG6BZ5CPPqj2ogUoPJlmXHBnyZUzISg9+oUmU6tUjQ==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 devlop: 1.1.0 micromark-factory-mdx-expression: 2.0.2 micromark-factory-space: 2.0.0 @@ -18329,7 +18331,7 @@ packages: resolution: {integrity: sha512-vNuFb9czP8QCtAQcEJn0UJQJZA8Dk6DXKBqx+bg/w0WGuSxDxNr7hErW89tHUY31dUW4NqEOWwmEUNhjTFmHkg==} dependencies: '@types/acorn': 4.0.6 - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 devlop: 1.1.0 estree-util-is-identifier-name: 3.0.0 micromark-factory-mdx-expression: 2.0.2 @@ -18348,7 +18350,7 @@ packages: /micromark-extension-mdxjs-esm@3.0.0: resolution: {integrity: sha512-DJFl4ZqkErRpq/dAPyeWp15tGrcrrJho1hKK5uBS70BCtfrIFg81sqcTVu3Ta+KD1Tk5vAtBNElWxtAa+m8K9A==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 devlop: 1.1.0 micromark-core-commonmark: 2.0.0 micromark-util-character: 2.1.0 @@ -18361,8 +18363,8 @@ packages: /micromark-extension-mdxjs@3.0.0: resolution: {integrity: sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==} dependencies: - acorn: 8.11.3 - acorn-jsx: 5.3.2(acorn@8.11.3) + acorn: 8.14.0 + acorn-jsx: 5.3.2(acorn@8.14.0) micromark-extension-mdx-expression: 3.0.0 micromark-extension-mdx-jsx: 3.0.1 micromark-extension-mdx-md: 2.0.0 @@ -18388,7 +18390,7 @@ packages: /micromark-factory-mdx-expression@2.0.2: resolution: {integrity: sha512-5E5I2pFzJyg2CtemqAbcyCktpHXuJbABnsb32wX2U8IQKhhVFBqkcZR5LRm1WVoFqa4kTueZK4abep7wdo9nrw==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 devlop: 1.1.0 micromark-factory-space: 2.0.0 micromark-util-character: 2.1.0 @@ -18478,7 +18480,7 @@ packages: resolution: {integrity: sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==} dependencies: '@types/acorn': 4.0.6 - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 '@types/unist': 3.0.2 devlop: 1.1.0 estree-util-visit: 2.0.0 @@ -18651,18 +18653,11 @@ packages: brace-expansion: 2.0.1 dev: true - /minimatch@9.0.3: - resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} - engines: {node: '>=16 || 14 >=14.17'} - dependencies: - brace-expansion: 2.0.1 - /minimatch@9.0.5: resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} dependencies: brace-expansion: 2.0.1 - dev: true /minimist-options@4.1.0: resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==} @@ -18994,38 +18989,32 @@ packages: has-symbols: 1.0.3 object-keys: 1.1.1 - /object.entries@1.1.5: - resolution: {integrity: sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g==} + /object.entries@1.1.8: + resolution: {integrity: sha512-cmopxi8VwRIAw/fkijJohSfpef5PdN0pMQJN6VC/ZKvn0LIknWD8KtgY6KlQdEc4tIjcQ3HxSMmnvtzIscdaYQ==} engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.5 + es-object-atoms: 1.0.0 dev: true - /object.fromentries@2.0.5: - resolution: {integrity: sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw==} + /object.fromentries@2.0.8: + resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==} engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.5 - dev: true - - /object.hasown@1.1.1: - resolution: {integrity: sha512-LYLe4tivNQzq4JdaWW6WO3HMZZJWzkkH8fnI6EebWl0VZth2wL2Lovm74ep2/gZzlaTdV62JZHEqHQ2yVn8Q/A==} - dependencies: - define-properties: 1.2.1 - es-abstract: 1.22.5 + es-abstract: 1.23.3 + es-object-atoms: 1.0.0 dev: true - /object.values@1.1.5: - resolution: {integrity: sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==} + /object.values@1.2.0: + resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==} engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.5 + es-object-atoms: 1.0.0 dev: true /objectorarray@1.0.5: @@ -19124,8 +19113,8 @@ packages: hasBin: true dev: false - /optionator@0.9.1: - resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==} + /optionator@0.9.4: + resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} engines: {node: '>= 0.8.0'} dependencies: deep-is: 0.1.4 @@ -19133,7 +19122,7 @@ packages: levn: 0.4.1 prelude-ls: 1.2.1 type-check: 0.4.0 - word-wrap: 1.2.3 + word-wrap: 1.2.5 dev: true /ora@3.4.0: @@ -19290,7 +19279,7 @@ packages: got: 12.6.1 registry-auth-token: 5.0.2 registry-url: 6.0.1 - semver: 7.5.4 + semver: 7.6.3 dev: false /param-case@3.0.4: @@ -19697,7 +19686,7 @@ packages: cosmiconfig: 8.3.6(typescript@5.2.2) jiti: 1.21.0 postcss: 8.4.47 - semver: 7.5.4 + semver: 7.6.3 webpack: 5.96.1 transitivePeerDependencies: - typescript @@ -20080,18 +20069,19 @@ packages: engines: {node: '>= 0.8.0'} dev: true + /prettier-linter-helpers@1.0.0: + resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==} + engines: {node: '>=6.0.0'} + dependencies: + fast-diff: 1.3.0 + dev: true + /prettier@1.19.1: resolution: {integrity: sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==} engines: {node: '>=4'} hasBin: true dev: true - /prettier@2.7.1: - resolution: {integrity: sha512-ujppO+MkdPqoVINuDFDRLClm7D78qbDt0/NR+wp5FqEZOoTNAjPHWj17QRhu7geIHJfcNhRk1XVQmF8Bp3ye+g==} - engines: {node: '>=10.13.0'} - hasBin: true - dev: true - /prettier@3.3.3: resolution: {integrity: sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==} engines: {node: '>=14'} @@ -20309,7 +20299,7 @@ packages: resolution: {integrity: sha512-wr7M2E0OFRfIfJZjKGieI8lBKb7fRCH4Fv5KNPEs7gJ8jadvotdsS08PzOKR7opXhZ/Xkjtt3WF9g38drmyRqQ==} engines: {node: '>=0.6'} dependencies: - side-channel: 1.0.4 + side-channel: 1.0.6 /query-string@7.1.3: resolution: {integrity: sha512-hh2WYhq4fi8+b+/2Kg9CEge4fDPvHS534aOOvOZeQ3+Vf2mCFsaFBYj0i+iXcAq6I9Vzp5fjMFBlONvayDC1qg==} @@ -20942,7 +20932,7 @@ packages: /recma-build-jsx@1.0.0: resolution: {integrity: sha512-8GtdyqaBcDfva+GUKDr3nev3VpKAhup1+RvkMvUxURHpW7QyIvk9F5wz7Vzo06CEMSilw6uArgRqhpiUcWp8ew==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 estree-util-build-jsx: 3.0.1 vfile: 6.0.1 @@ -20960,7 +20950,7 @@ packages: /recma-parse@1.0.0: resolution: {integrity: sha512-OYLsIGBB5Y5wjnSnQW6t3Xg7q3fQ7FWbw/vcXtORTnyaSFscOtABg+7Pnz6YZ6c27fG1/aN8CjfwoUEUIdwqWQ==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 esast-util-from-js: 2.0.1 unified: 11.0.4 vfile: 6.0.1 @@ -20968,7 +20958,7 @@ packages: /recma-stringify@1.0.0: resolution: {integrity: sha512-cjwII1MdIIVloKvC9ErQ+OgAtwHBmcZ0Bg4ciz78FtbT8In39aAYbaA7zvxQ61xVMSPE8WxhLwLbhif4Js2C+g==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 estree-util-to-js: 2.0.0 unified: 11.0.4 vfile: 6.0.1 @@ -20988,6 +20978,19 @@ packages: strip-indent: 3.0.0 dev: true + /reflect.getprototypeof@1.0.6: + resolution: {integrity: sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==} + engines: {node: '>= 0.4'} + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 + es-abstract: 1.23.3 + es-errors: 1.3.0 + get-intrinsic: 1.2.4 + globalthis: 1.0.4 + which-builtin-type: 1.1.4 + dev: true + /refractor@3.6.0: resolution: {integrity: sha512-MY9W41IOWxxk31o+YvFCNyNzdkc9M20NoZK5vq6jkv4I/uh2zkWcfudj0Q1fovjUQJrNewS9NMzeTtqPf+n5EA==} dependencies: @@ -21148,7 +21151,7 @@ packages: /rehype-recma@1.0.0: resolution: {integrity: sha512-lqA4rGUf1JmacCNWWZx0Wv1dHqMwxzsDWYMTowuplHF3xH0N/MmrZ/G3BDZnzAkRmxDadujCjaKM2hqYdCBOGw==} dependencies: - '@types/estree': 1.0.5 + '@types/estree': 1.0.6 '@types/hast': 3.0.4 hast-util-to-estree: 3.1.0 transitivePeerDependencies: @@ -21384,8 +21387,8 @@ packages: path-parse: 1.0.7 dev: false - /resolve@2.0.0-next.4: - resolution: {integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==} + /resolve@2.0.0-next.5: + resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} hasBin: true dependencies: is-core-module: 2.13.1 @@ -21485,15 +21488,6 @@ packages: tslib: 2.8.1 dev: true - /safe-array-concat@1.1.0: - resolution: {integrity: sha512-ZdQ0Jeb9Ofti4hbt5lX3T2JcAamT9hfzYU1MNB+z/jaEbB6wfFfPIR/zEORmZqobkCCJhSjodobH6WHNmJ97dg==} - engines: {node: '>=0.4'} - dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 - has-symbols: 1.0.3 - isarray: 2.0.5 - /safe-array-concat@1.1.2: resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==} engines: {node: '>=0.4'} @@ -21502,7 +21496,6 @@ packages: get-intrinsic: 1.2.4 has-symbols: 1.0.3 isarray: 2.0.5 - dev: false /safe-buffer@5.1.2: resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} @@ -21572,7 +21565,7 @@ packages: resolution: {integrity: sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==} engines: {node: '>= 10.13.0'} dependencies: - '@types/json-schema': 7.0.11 + '@types/json-schema': 7.0.15 ajv: 6.12.6 ajv-keywords: 3.5.2(ajv@6.12.6) @@ -21641,18 +21634,13 @@ packages: resolution: {integrity: sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==} engines: {node: '>=12'} dependencies: - semver: 7.5.4 + semver: 7.6.3 dev: false /semver@5.7.1: resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} hasBin: true - /semver@6.3.0: - resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} - hasBin: true - dev: true - /semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true @@ -21690,7 +21678,6 @@ packages: resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} engines: {node: '>=10'} hasBin: true - dev: true /send@0.18.0: resolution: {integrity: sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==} @@ -21852,10 +21839,12 @@ packages: '@types/hast': 3.0.4 dev: true - /side-channel@1.0.4: - resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==} + /side-channel@1.0.6: + resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.7 + es-errors: 1.3.0 get-intrinsic: 1.2.4 object-inspect: 1.13.1 @@ -22147,7 +22136,7 @@ packages: resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} dev: false - /storybook@8.4.1(prettier@2.7.1): + /storybook@8.4.1(prettier@3.3.3): resolution: {integrity: sha512-0tfFIFghjho9FtnFoiJMoxhcs2iIdvEF81GTSVnTsDVJrYA84nB+FxN3UY1fT0BcQ8BFlbf+OhSjZL7ufqqWKA==} hasBin: true peerDependencies: @@ -22156,8 +22145,8 @@ packages: prettier: optional: true dependencies: - '@storybook/core': 8.4.1(prettier@2.7.1) - prettier: 2.7.1 + '@storybook/core': 8.4.1(prettier@3.3.3) + prettier: 3.3.3 transitivePeerDependencies: - bufferutil - supports-color @@ -22219,26 +22208,30 @@ packages: emoji-regex: 9.2.2 strip-ansi: 7.1.0 - /string.prototype.matchall@4.0.7: - resolution: {integrity: sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==} + /string.prototype.matchall@4.0.11: + resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==} + engines: {node: '>= 0.4'} dependencies: call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.5 + es-abstract: 1.23.3 + es-errors: 1.3.0 + es-object-atoms: 1.0.0 get-intrinsic: 1.2.4 + gopd: 1.0.1 has-symbols: 1.0.3 internal-slot: 1.0.7 regexp.prototype.flags: 1.5.2 - side-channel: 1.0.4 + set-function-name: 2.0.2 + side-channel: 1.0.6 dev: true - /string.prototype.trim@1.2.8: - resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==} - engines: {node: '>= 0.4'} + /string.prototype.repeat@1.0.0: + resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} dependencies: - call-bind: 1.0.7 define-properties: 1.2.1 - es-abstract: 1.22.5 + es-abstract: 1.23.3 + dev: true /string.prototype.trim@1.2.9: resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==} @@ -22248,14 +22241,6 @@ packages: define-properties: 1.2.1 es-abstract: 1.23.3 es-object-atoms: 1.0.0 - dev: false - - /string.prototype.trimend@1.0.7: - resolution: {integrity: sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.22.5 /string.prototype.trimend@1.0.8: resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==} @@ -22263,14 +22248,6 @@ packages: call-bind: 1.0.7 define-properties: 1.2.1 es-object-atoms: 1.0.0 - dev: false - - /string.prototype.trimstart@1.0.7: - resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==} - dependencies: - call-bind: 1.0.7 - define-properties: 1.2.1 - es-abstract: 1.22.5 /string.prototype.trimstart@1.0.8: resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} @@ -22279,7 +22256,6 @@ packages: call-bind: 1.0.7 define-properties: 1.2.1 es-object-atoms: 1.0.0 - dev: false /string_decoder@1.1.1: resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} @@ -22550,6 +22526,14 @@ packages: resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} dev: true + /synckit@0.9.2: + resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==} + engines: {node: ^14.18.0 || >=16.0.0} + dependencies: + '@pkgr/core': 0.1.1 + tslib: 2.8.1 + dev: true + /tailwindcss@3.4.1(ts-node@10.9.1): resolution: {integrity: sha512-qAYmXRfk3ENzuPBakNK0SRrUDipP8NQnEY6772uDhflcQz5EhRdD7JNZxyrFHVQNCwULPBn6FNPp9brpO7ctcA==} engines: {node: '>=14.0.0'} @@ -22736,7 +22720,7 @@ packages: hasBin: true dependencies: '@jridgewell/source-map': 0.3.6 - acorn: 8.11.3 + acorn: 8.14.0 commander: 2.20.3 source-map-support: 0.5.21 dev: true @@ -22991,15 +22975,6 @@ packages: yn: 3.1.1 dev: true - /tsconfig-paths@3.14.1: - resolution: {integrity: sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==} - dependencies: - '@types/json5': 0.0.29 - json5: 1.0.2 - minimist: 1.2.6 - strip-bom: 3.0.0 - dev: true - /tsconfig-paths@4.2.0: resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==} engines: {node: '>=6'} @@ -23069,11 +23044,6 @@ packages: engines: {node: '>=10'} dev: false - /type-fest@0.20.2: - resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} - engines: {node: '>=10'} - dev: true - /type-fest@0.21.3: resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} engines: {node: '>=10'} @@ -23142,17 +23112,6 @@ packages: has-proto: 1.0.3 is-typed-array: 1.1.13 - /typed-array-length@1.0.5: - resolution: {integrity: sha512-yMi0PlwuznKHxKmcpoOdeLwxBoVPkqZxd7q2FgMkmD3bNwvF5VW0+UlUQ1k1vmktTu4Yu13Q0RIxEP8+B+wloA==} - engines: {node: '>= 0.4'} - dependencies: - call-bind: 1.0.7 - for-each: 0.3.3 - gopd: 1.0.1 - has-proto: 1.0.3 - is-typed-array: 1.1.13 - possible-typed-array-names: 1.0.0 - /typed-array-length@1.0.6: resolution: {integrity: sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==} engines: {node: '>= 0.4'} @@ -23163,7 +23122,6 @@ packages: has-proto: 1.0.3 is-typed-array: 1.1.13 possible-typed-array-names: 1.0.0 - dev: false /typedarray-to-buffer@3.1.5: resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} @@ -23198,6 +23156,24 @@ packages: yaml: 2.6.0 dev: true + /typescript-eslint@8.13.0(eslint@9.14.0)(typescript@4.7.4): + resolution: {integrity: sha512-vIMpDRJrQd70au2G8w34mPps0ezFSPMEX4pXkTzUkrNbRX+36ais2ksGWN0esZL+ZMaFJEneOBHzCgSqle7DHw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '*' + peerDependenciesMeta: + typescript: + optional: true + dependencies: + '@typescript-eslint/eslint-plugin': 8.13.0(@typescript-eslint/parser@8.13.0)(eslint@9.14.0)(typescript@4.7.4) + '@typescript-eslint/parser': 8.13.0(eslint@9.14.0)(typescript@4.7.4) + '@typescript-eslint/utils': 8.13.0(eslint@9.14.0)(typescript@4.7.4) + typescript: 4.7.4 + transitivePeerDependencies: + - eslint + - supports-color + dev: true + /typescript@4.7.4: resolution: {integrity: sha512-C0WQT0gezHuw6AdY1M2jxUO83Rjf0HP7Sk1DtXj6j1EwkQNZrHAg2XPWlq62oqEhYvONq5pkC2Y9oPljWToLmQ==} engines: {node: '>=4.2.0'} @@ -23432,7 +23408,7 @@ packages: /unplugin@1.6.0: resolution: {integrity: sha512-BfJEpWBu3aE/AyHx8VaNE/WgouoQxgH9baAiH82JjX8cqVyi3uJQstqwD5J+SZxIK326SZIhsSZlALXVBCknTQ==} dependencies: - acorn: 8.11.3 + acorn: 8.14.0 chokidar: 3.5.3 webpack-sources: 3.2.3 webpack-virtual-modules: 0.6.1 @@ -23484,7 +23460,7 @@ packages: is-yarn-global: 0.4.1 latest-version: 7.0.0 pupa: 3.1.0 - semver: 7.5.4 + semver: 7.6.3 semver-diff: 4.0.0 xdg-basedir: 5.1.0 dev: false @@ -23592,10 +23568,6 @@ packages: resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} dev: true - /v8-compile-cache@2.3.0: - resolution: {integrity: sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==} - dev: true - /v8-to-istanbul@9.0.1: resolution: {integrity: sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w==} engines: {node: '>=10.12.0'} @@ -23737,7 +23709,7 @@ packages: hasBin: true dependencies: '@discoveryjs/json-ext': 0.5.7 - acorn: 8.11.3 + acorn: 8.14.0 acorn-walk: 8.3.0 commander: 7.2.0 debounce: 1.2.1 @@ -24194,6 +24166,34 @@ packages: is-string: 1.0.7 is-symbol: 1.0.4 + /which-builtin-type@1.1.4: + resolution: {integrity: sha512-bppkmBSsHFmIMSl8BO9TbsyzsvGjVoppt8xUiGzwiu/bhDCGxnpOKCxgqj6GuyHE0mINMDecBFPlOm2hzY084w==} + engines: {node: '>= 0.4'} + dependencies: + function.prototype.name: 1.1.6 + has-tostringtag: 1.0.2 + is-async-function: 2.0.0 + is-date-object: 1.0.5 + is-finalizationregistry: 1.0.2 + is-generator-function: 1.0.10 + is-regex: 1.1.4 + is-weakref: 1.0.2 + isarray: 2.0.5 + which-boxed-primitive: 1.0.2 + which-collection: 1.0.2 + which-typed-array: 1.1.15 + dev: true + + /which-collection@1.0.2: + resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} + engines: {node: '>= 0.4'} + dependencies: + is-map: 2.0.3 + is-set: 2.0.3 + is-weakmap: 2.0.2 + is-weakset: 2.0.3 + dev: true + /which-module@2.0.0: resolution: {integrity: sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==} @@ -24205,16 +24205,6 @@ packages: path-exists: 4.0.0 dev: true - /which-typed-array@1.1.14: - resolution: {integrity: sha512-VnXFiIW8yNn9kIHN88xvZ4yOWchftKDsRJ8fEPacX/wl1lOvBrhsJ/OeJCXq7B0AaijRuqgzSKalJoPk+D8MPg==} - engines: {node: '>= 0.4'} - dependencies: - available-typed-arrays: 1.0.7 - call-bind: 1.0.7 - for-each: 0.3.3 - gopd: 1.0.1 - has-tostringtag: 1.0.2 - /which-typed-array@1.1.15: resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==} engines: {node: '>= 0.4'} @@ -24268,8 +24258,8 @@ packages: resolution: {integrity: sha512-U0IUQHKXXn6PFo9nqsHphVCE5m3IntqZNB9Jjn7EB1lrR7YTDY3YWgFvEvwniTzXSvOH/XMzAZaIfJF/LvHYXg==} dev: false - /word-wrap@1.2.3: - resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==} + /word-wrap@1.2.5: + resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} engines: {node: '>=0.10.0'} dev: true diff --git a/scripts/release.ts b/scripts/release.ts index 836b4ac97..4c9739261 100644 --- a/scripts/release.ts +++ b/scripts/release.ts @@ -5,9 +5,9 @@ */ /* eslint-disable @typescript-eslint/ban-ts-comment */ -/* eslint-disable camelcase */ + /* eslint-disable no-console */ -/* eslint-disable max-params */ + import fs from "fs-extra"; import path from "path"; diff --git a/scripts/sync-pkgs-wireit-helpers.js b/scripts/sync-pkgs-wireit-helpers.js index ec009e4f6..66dcd52a5 100644 --- a/scripts/sync-pkgs-wireit-helpers.js +++ b/scripts/sync-pkgs-wireit-helpers.js @@ -206,11 +206,9 @@ function generateWireitConfig(pkg, rootPkg) { // Same as above ...["lint", "lint:fix"].reduce((wireit, key) => { wireit[key] = { - "command": key === "lint" ? "nps lint:pkg" : "pnpm run lint || nps lint:pkg:fix", + "command": key === "lint" ? "eslint src" : "eslint --fix src", "files": [ "src/**", - "../../.eslintignore", - "../../.eslintrc.js" ], "output": [], "dependencies": [ diff --git a/scripts/sync-pkgs-wireit.js b/scripts/sync-pkgs-wireit.js index 738229bc0..d01658b4e 100644 --- a/scripts/sync-pkgs-wireit.js +++ b/scripts/sync-pkgs-wireit.js @@ -20,12 +20,12 @@ const fs = require("fs/promises"); const path = require("path"); const { generateWireitConfig } = require("./sync-pkgs-wireit-helpers"); -const { log, error } = console; // eslint-disable-line no-undef +const { log, error } = console; // ============================================================================ // Config // ============================================================================ -const ROOT = path.resolve(__dirname, ".."); // eslint-disable-line no-undef +const ROOT = path.resolve(__dirname, ".."); const PKGS_ROOT = path.join(ROOT, "packages"); // Special packages @@ -79,8 +79,6 @@ const updateRootPkg = async ({ allPkgs }) => { { rootTask: "format:pkgs", pkgTask: "format" }, { rootTask: "format:pkgs:fix", pkgTask: "format:fix" }, { rootTask: "jest:pkgs", pkgTask: "jest" }, - { rootTask: "lint:pkgs", pkgTask: "lint" }, - { rootTask: "lint:pkgs:fix", pkgTask: "lint:fix" }, { rootTask: "types:check", pkgTask: "types:check" }, { rootTask: "types:create", pkgTask: "types:create" }, ].forEach(({ rootTask, pkgTask }) => { @@ -131,7 +129,7 @@ const cli = async () => { if (require.main === module) { cli().catch((err) => { error(err); - process.exit(1); // eslint-disable-line no-process-exit + process.exit(1); }); } diff --git a/stories/.eslintrc b/stories/.eslintrc deleted file mode 100644 index 99466820b..000000000 --- a/stories/.eslintrc +++ /dev/null @@ -1,8 +0,0 @@ -{ - "extends": ["../.eslintrc.js"], - "rules": { - "no-magic-numbers": 0, - "react/no-multi-comp": 0, - "react/prop-types": 0 - } -} diff --git a/stories/victory-charts/victory-animation/config.ts b/stories/victory-charts/victory-animation/config.ts index 0d02ddd61..f8bbab9e5 100644 --- a/stories/victory-charts/victory-animation/config.ts +++ b/stories/victory-charts/victory-animation/config.ts @@ -1,3 +1,4 @@ +import React from "react"; import type { Meta, StoryObj } from "@storybook/react"; import { VictoryAnimation } from "@/victory"; diff --git a/stories/victory-charts/victory-bar/domain.stories.tsx b/stories/victory-charts/victory-bar/domain.stories.tsx index c966c8dc3..0259e0ad9 100644 --- a/stories/victory-charts/victory-bar/domain.stories.tsx +++ b/stories/victory-charts/victory-bar/domain.stories.tsx @@ -1,7 +1,7 @@ import React from "react"; import type { Meta } from "@storybook/react"; -import { VictoryBar, VictoryChart, VictoryTheme } from "@/victory"; +import { VictoryBar, VictoryChart } from "@/victory"; import { Story, ComponentMeta } from "./config"; import { getData } from "../../utils/data"; diff --git a/stories/victory-charts/victory-bar/focus-with-refs.stories.tsx b/stories/victory-charts/victory-bar/focus-with-refs.stories.tsx index 3a7d95c0a..e4a86effe 100644 --- a/stories/victory-charts/victory-bar/focus-with-refs.stories.tsx +++ b/stories/victory-charts/victory-bar/focus-with-refs.stories.tsx @@ -32,7 +32,6 @@ export const FocusWithRefs: Story = { if (barsRef.current) { focusOnBar("1"); } - // eslint-disable-next-line react-hooks/exhaustive-deps }, []); const setRef = useCallback((node) => { diff --git a/stories/victory-charts/victory-chart/orientations.stories.tsx b/stories/victory-charts/victory-chart/orientations.stories.tsx index 063074213..883e92b81 100644 --- a/stories/victory-charts/victory-chart/orientations.stories.tsx +++ b/stories/victory-charts/victory-chart/orientations.stories.tsx @@ -14,7 +14,7 @@ export const Orientations: Story = { render: (props) => ( <> diff --git a/stories/victory-charts/victory-histogram/get-path.stories.tsx b/stories/victory-charts/victory-histogram/get-path.stories.tsx index 2fb6a9db6..7f7b1f68a 100644 --- a/stories/victory-charts/victory-histogram/get-path.stories.tsx +++ b/stories/victory-charts/victory-histogram/get-path.stories.tsx @@ -14,21 +14,21 @@ const meta: Meta = { export const GetPath: Story = { args: {}, render: (props) => { - const verticalPathFn = (callbackArgs) => { - const { x0, x1, y0, y1 } = callbackArgs; - return `M ${x0}, ${y0} - L ${(x1 + x0) / 2}, ${y1} - L ${x1}, ${y0} - z`; - }; + // const verticalPathFn = (callbackArgs) => { + // const { x0, x1, y0, y1 } = callbackArgs; + // return `M ${x0}, ${y0} + // L ${(x1 + x0) / 2}, ${y1} + // L ${x1}, ${y0} + // z`; + // }; - const horizontalPathFn = (callbackArgs) => { - const { x0, x1, y0, y1 } = callbackArgs; - return `M ${x0}, ${y1} - L ${x1}, ${(y0 + y1) / 2} - L ${x0}, ${y0} - z`; - }; + // const horizontalPathFn = (callbackArgs) => { + // const { x0, x1, y0, y1 } = callbackArgs; + // return `M ${x0}, ${y1} + // L ${x1}, ${(y0 + y1) / 2} + // L ${x0}, ${y0} + // z`; + // }; // TODO: revert this when the getPath types are fixed. return ( diff --git a/stories/victory-charts/victory-label/config.ts b/stories/victory-charts/victory-label/config.ts index 9fcc56a4a..6ee815266 100644 --- a/stories/victory-charts/victory-label/config.ts +++ b/stories/victory-charts/victory-label/config.ts @@ -1,3 +1,4 @@ +import React from "react"; import type { Meta, StoryObj } from "@storybook/react"; import { VictoryLabel, VictoryScatterProps } from "@/victory"; diff --git a/stories/victory-charts/victory-pie/disable-inline-styles.stories.tsx b/stories/victory-charts/victory-pie/disable-inline-styles.stories.tsx index 7d0af3e6e..81f52bed3 100644 --- a/stories/victory-charts/victory-pie/disable-inline-styles.stories.tsx +++ b/stories/victory-charts/victory-pie/disable-inline-styles.stories.tsx @@ -1,7 +1,7 @@ import React from "react"; import type { Meta } from "@storybook/react"; -import { Slice, VictoryPie, VictoryTheme } from "@/victory"; +import { VictoryPie, VictoryTheme } from "@/victory"; import { Story, ComponentMeta } from "./config"; const meta: Meta = { diff --git a/stories/victory-charts/victory-pie/label-placement.stories.tsx b/stories/victory-charts/victory-pie/label-placement.stories.tsx index 54df4e79b..8071d2081 100644 --- a/stories/victory-charts/victory-pie/label-placement.stories.tsx +++ b/stories/victory-charts/victory-pie/label-placement.stories.tsx @@ -1,7 +1,7 @@ import React from "react"; import type { Meta } from "@storybook/react"; -import { VictoryPie, VictoryTheme, VictoryTooltip } from "@/victory"; +import { VictoryPie, VictoryTheme } from "@/victory"; import { Story, ComponentMeta } from "./config"; const meta: Meta = { diff --git a/stories/victory-charts/victory-portal/config.ts b/stories/victory-charts/victory-portal/config.ts index b262a4788..fe99f1f80 100644 --- a/stories/victory-charts/victory-portal/config.ts +++ b/stories/victory-charts/victory-portal/config.ts @@ -1,3 +1,4 @@ +import React from "react"; import type { Meta, StoryObj } from "@storybook/react"; import { VictoryPortal } from "@/victory"; diff --git a/stories/victory-charts/victory-portal/default.stories.tsx b/stories/victory-charts/victory-portal/default.stories.tsx index ff620f725..e81060068 100644 --- a/stories/victory-charts/victory-portal/default.stories.tsx +++ b/stories/victory-charts/victory-portal/default.stories.tsx @@ -27,7 +27,7 @@ export const Default: Story = { labels: { fontSize: 20, fill: "tomato" }, }} labelComponent={ - + } diff --git a/website/.eslintignore b/website/.eslintignore deleted file mode 100644 index 5e275314a..000000000 --- a/website/.eslintignore +++ /dev/null @@ -1,2 +0,0 @@ -src/theme -src/plugins diff --git a/website/docusaurus.config.ts b/website/docusaurus.config.ts index e2a838f2d..a064531b4 100644 --- a/website/docusaurus.config.ts +++ b/website/docusaurus.config.ts @@ -1,6 +1,5 @@ import { themes as prismThemes } from "prism-react-renderer"; import { Config } from "@docusaurus/types"; -import { autoGenerateApiDocs } from "./src/plugins/victory-typedoc"; const title = "Victory"; const tagline = @@ -28,7 +27,6 @@ const config: Config = { docs: { sidebarPath: "./sidebars.ts", sidebarCollapsed: true, - // beforeDefaultRemarkPlugins: [autoGenerateApiDocs], }, theme: { customCss: "./src/css/custom.css", @@ -66,9 +64,11 @@ const config: Config = { name: "tailwind-plugin", configurePostCss(postcssOptions) { postcssOptions.plugins = [ + /* eslint-disable @typescript-eslint/no-require-imports */ require("postcss-import"), require("tailwindcss"), require("autoprefixer"), + /* eslint-enable @typescript-eslint/no-require-imports */ ]; return postcssOptions; }, diff --git a/website/package.json b/website/package.json index d637b8e86..2ee1cbb71 100644 --- a/website/package.json +++ b/website/package.json @@ -12,7 +12,7 @@ "serve": "docusaurus serve --dir build/open-source/victory", "write-translations": "docusaurus write-translations", "write-heading-ids": "docusaurus write-heading-ids", - "lint": "eslint --ext .js,.ts,.tsx src", + "lint": "eslint src", "typecheck": "tsc" }, "dependencies": { diff --git a/website/src/components/link-button.tsx b/website/src/components/link-button.tsx index d1ab5f9e1..032a12cda 100644 --- a/website/src/components/link-button.tsx +++ b/website/src/components/link-button.tsx @@ -3,7 +3,7 @@ import React from "react"; interface ButtonProps { className?: string; - children: ChildNode | React.ReactNode; + children: React.ReactNode; link: string; screenReaderLabel?: string; } diff --git a/website/src/components/slider.tsx b/website/src/components/slider.tsx index 5e19a7aec..c5bd3dc34 100644 --- a/website/src/components/slider.tsx +++ b/website/src/components/slider.tsx @@ -1,5 +1,5 @@ /* eslint no-magic-numbers: ["error", { "ignore": [0, 1, 100] }]*/ -/* eslint-disable react/no-multi-comp */ + import React, { useLayoutEffect, useState, useRef, useCallback } from "react"; import clamp from "lodash/clamp"; diff --git a/website/src/pages/_components/data/update-downloads.js b/website/src/pages/_components/data/update-downloads.js index f58ffca88..a6ab88c16 100644 --- a/website/src/pages/_components/data/update-downloads.js +++ b/website/src/pages/_components/data/update-downloads.js @@ -1,7 +1,7 @@ const fs = require("fs"); const path = require("path"); -// eslint-disable-next-line no-use-before-define + const data = d().victory; const downloads = Object.keys(data).map((day) => ({ @@ -18,7 +18,7 @@ export default data; `; fs.writeFileSync( - // eslint-disable-next-line no-undef + path.resolve(__dirname, "..", "downloads.js"), contents, "utf8", diff --git a/website/src/pages/_components/data/update-versions.js b/website/src/pages/_components/data/update-versions.js index f18d4c765..3c25f3e4d 100644 --- a/website/src/pages/_components/data/update-versions.js +++ b/website/src/pages/_components/data/update-versions.js @@ -45,7 +45,7 @@ export default data; `; fs.writeFileSync( - // eslint-disable-next-line no-undef + path.resolve(__dirname, "versions.js"), contents, "utf8", diff --git a/website/src/pages/_components/landing-demo.tsx b/website/src/pages/_components/landing-demo.tsx index 2b2619bb8..edcf2813c 100644 --- a/website/src/pages/_components/landing-demo.tsx +++ b/website/src/pages/_components/landing-demo.tsx @@ -117,7 +117,7 @@ async function fetchData(url) { const freshData = result.data; const allDownloads = downloads.data.concat(freshData.downloads); return groupDownloadsByWeek(allDownloads) - } catch (error) { + } catch { return oldDownloads; } } diff --git a/website/src/pages/_components/landing-hero.tsx b/website/src/pages/_components/landing-hero.tsx index 9996545d2..4be6c7aed 100644 --- a/website/src/pages/_components/landing-hero.tsx +++ b/website/src/pages/_components/landing-hero.tsx @@ -1,8 +1,7 @@ -/* eslint-disable @typescript-eslint/no-misused-promises */ + import React from "react"; import { FeaturedBadge } from "formidable-oss-badges"; -// eslint-disable-next-line import/no-unresolved import useDocusaurusContext from "@docusaurus/useDocusaurusContext"; export const LandingHero = () => { diff --git a/website/src/pages/_components/landing-showcase.tsx b/website/src/pages/_components/landing-showcase.tsx index 581a81842..94ceaee5a 100644 --- a/website/src/pages/_components/landing-showcase.tsx +++ b/website/src/pages/_components/landing-showcase.tsx @@ -1,4 +1,4 @@ -/* eslint-disable react/no-multi-comp */ + import React from "react"; import AirbnbLogo from "../../../static/logos/logo-airbnb.svg"; diff --git a/website/src/pages/index.tsx b/website/src/pages/index.tsx index bfd26ca7c..3d3514207 100644 --- a/website/src/pages/index.tsx +++ b/website/src/pages/index.tsx @@ -1,5 +1,4 @@ import React from "react"; -// eslint-disable-next-line import/no-unresolved import Layout from "@theme/Layout"; import { LandingHero } from "./_components/landing-hero"; @@ -8,6 +7,7 @@ import { LandingFeatures } from "./_components/landing-features"; import { LandingDemo } from "./_components/landing-demo"; import { LandingShowcase } from "./_components/landing-showcase"; +// eslint-disable-next-line no-undef export default function Home(): JSX.Element { return (