Skip to content

Commit 7a4fe06

Browse files
Bump esbuild, vitest, @vitejs/plugin-react-swc, @vitest/coverage-v8 and vite (#2854)
* Bump esbuild, vitest, @vitejs/plugin-react-swc, @vitest/coverage-v8 and vite Removes [esbuild](https://github.com/evanw/esbuild). It's no longer used after updating ancestor dependencies [esbuild](https://github.com/evanw/esbuild), [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest), [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc), [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) and [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite). These dependencies need to be updated together. Removes `esbuild` Updates `vitest` from 3.1.4 to 4.1.8 - [Release notes](https://github.com/vitest-dev/vitest/releases) - [Changelog](https://github.com/vitest-dev/vitest/blob/main/docs/releases.md) - [Commits](https://github.com/vitest-dev/vitest/commits/v4.1.8/packages/vitest) Updates `@vitejs/plugin-react-swc` from 3.8.0 to 4.3.1 - [Release notes](https://github.com/vitejs/vite-plugin-react/releases) - [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react-swc/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite-plugin-react/commits/v4.3.1/packages/plugin-react-swc) Updates `@vitest/coverage-v8` from 3.1.4 to 4.1.8 - [Release notes](https://github.com/vitest-dev/vitest/releases) - [Changelog](https://github.com/vitest-dev/vitest/blob/main/docs/releases.md) - [Commits](https://github.com/vitest-dev/vitest/commits/v4.1.8/packages/coverage-v8) Updates `vite` from 6.4.2 to 8.0.16 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v8.0.16/packages/vite) --- updated-dependencies: - dependency-name: esbuild dependency-version: dependency-type: indirect - dependency-name: vitest dependency-version: 4.1.8 dependency-type: direct:development - dependency-name: "@vitejs/plugin-react-swc" dependency-version: 4.3.1 dependency-type: direct:development - dependency-name: "@vitest/coverage-v8" dependency-version: 4.1.8 dependency-type: direct:development - dependency-name: vite dependency-version: 8.0.16 dependency-type: direct:development ... Signed-off-by: dependabot[bot] <support@github.com> * Add BingLayer component for enhanced map functionality - Introduced a new BingLayer component to integrate Bing Maps with Leaflet. - Updated SourcedTileLayer to import the new BingLayer instead of the previous package. - This change improves compatibility with the current build system and resolves import issues with react-leaflet-bing-v2. * run formatting * fix mocks to use constructable functions * Refactor MediaQuery imports to use react-responsive * Update OAuth URL in .env and refactor MediaQuery usage across components - Changed the REACT_APP_SERVER_OAUTH_URL in the .env file to use the full URL. - Replaced instances of react-responsive with a custom MediaQuery component in AdminPane, Navbar, ReviewTaskPane, TaskPane, and Review components for improved compatibility. --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Collin Beczak <ctbeczak08@gmail.com>
1 parent cb9a199 commit 7a4fe06

12 files changed

Lines changed: 1329 additions & 1465 deletions

File tree

package-lock.json

Lines changed: 1268 additions & 1444 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,8 @@
129129
"@testing-library/react": "^12.1.2",
130130
"@testing-library/react-hooks": "^8.0.1",
131131
"@types/node": "^22.10.5",
132-
"@vitejs/plugin-react-swc": "^3.7.1",
133-
"@vitest/coverage-v8": "^3.1.4",
132+
"@vitejs/plugin-react-swc": "^4.3.1",
133+
"@vitest/coverage-v8": "^4.1.8",
134134
"@wojtekmaj/enzyme-adapter-react-17": "^0.8.0",
135135
"dotenv": "^16.4.5",
136136
"dotenv-cli": "^7.4.2",
@@ -159,8 +159,8 @@
159159
"tailwindcss-transforms": "^2.2.0",
160160
"tailwindcss-transition": "^1.0.5",
161161
"tailwindcss-visuallyhidden": "^1.0.2",
162-
"vite": "^6.4.2",
163-
"vitest": "^3.1.4"
162+
"vite": "^8.0.16",
163+
"vitest": "^4.1.8"
164164
},
165165
"resolutions": {
166166
"react-error-overlay": "6.0.9"

src/components/AdminPane/AdminPane.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
import PropTypes from "prop-types";
22
import { Component, Fragment } from "react";
3-
import MediaQuery from "react-responsive";
43
import { Route, Switch, withRouter } from "react-router-dom";
54
import AsManager from "../../interactions/User/AsManager";
65
import SignIn from "../../pages/SignIn/SignIn";
76
import BusySpinner from "../BusySpinner/BusySpinner";
87
import WithCurrentUser from "../HOCs/WithCurrentUser/WithCurrentUser";
98
import WithStatus from "../HOCs/WithStatus/WithStatus";
109
import HeadTitle from "../Head/Head";
10+
import MediaQuery from "../MediaQuery/MediaQuery";
1111
import ScreenTooNarrow from "../ScreenTooNarrow/ScreenTooNarrow";
1212
import ChallengeDashboard from "./Manage/ChallengeDashboard/ChallengeDashboard";
1313
import EditProject from "./Manage/EditProject/EditProject";
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
import { createLayerComponent } from "@react-leaflet/core";
2+
import L from "leaflet";
3+
4+
// Side-effect import: registers L.BingLayer / L.bingLayer on the Leaflet global.
5+
// We intentionally bypass react-leaflet-bing-v2's own Bing.js wrapper, which does
6+
// `import {bingLayer} from './leaflet.bing'` — a binding that file never exports.
7+
// Older bundlers ignored the dead import; Vite/rolldown rejects it as MISSING_EXPORT.
8+
import "react-leaflet-bing-v2/src/leaflet.bing.js";
9+
10+
const createLeafletElement = (props) => {
11+
const instance = L.bingLayer(props.bingkey, props);
12+
return { instance };
13+
};
14+
15+
export const BingLayer = createLayerComponent(createLeafletElement);

src/components/EnhancedMap/SourcedTileLayer/SourcedTileLayer.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ import PropTypes from "prop-types";
33
import { useEffect, useState } from "react";
44
import { FormattedMessage, injectIntl } from "react-intl";
55
import { TileLayer } from "react-leaflet";
6-
import { BingLayer } from "react-leaflet-bing-v2/src/index.js";
76
import AppErrors from "../../../services/Error/AppErrors";
87
import {
98
defaultLayerSource,
@@ -12,6 +11,7 @@ import {
1211
} from "../../../services/VisibleLayer/LayerSources";
1312
import WithErrors from "../../HOCs/WithErrors/WithErrors";
1413
import TileLayerErrorBoundary from "../../TaskClusterMap/TileLayerErrorBoundary";
14+
import { BingLayer } from "./BingLayer";
1515

1616
/**
1717
* SourcedTileLayer renders a react-leaflet TileLayer from the current

src/components/MapillaryViewer/MapillaryViewer.test.jsx

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,15 @@ import MapillaryViewer from "./MapillaryViewer";
44

55
vitest.mock("mapillary-js", () => {
66
return {
7-
Viewer: vitest.fn().mockImplementation(() => ({
8-
setImageId: vitest.fn(),
9-
remove: vitest.fn(),
10-
})),
7+
// Use a regular (constructable) function rather than an arrow function:
8+
// the component invokes `new Viewer(...)`, and vitest constructs the mock
9+
// via its implementation, which arrow functions cannot satisfy.
10+
Viewer: vitest.fn(function () {
11+
return {
12+
setImageId: vitest.fn(),
13+
remove: vitest.fn(),
14+
};
15+
}),
1116
};
1217
});
1318

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import reactResponsive from "react-responsive";
2+
3+
// react-responsive ships a UMD bundle whose MediaQuery component lives on the
4+
// module's `default` export. Vite's browser dependency optimizer hands back the
5+
// whole module namespace for a default import (component on `.default`), while
6+
// vitest unwraps to the component itself. Normalize to the component here so a
7+
// single `import MediaQuery from ".../MediaQuery"` renders in both environments.
8+
const MediaQuery = reactResponsive.default ?? reactResponsive;
9+
10+
export default MediaQuery;

src/components/Navbar/Navbar.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@ import classNames from "classnames";
22
import { Component, Fragment } from "react";
33
import MobileMenu from "react-burger-menu/lib/menus/slide";
44
import { FormattedMessage, injectIntl } from "react-intl";
5-
import MediaQuery from "react-responsive";
65
import { Link, NavLink } from "react-router-dom";
76
import resolveConfig from "tailwindcss/resolveConfig";
87
import AsAvatarUser from "../../interactions/User/AsAvatarUser";
98
import AsManager from "../../interactions/User/AsManager";
109
import tailwindConfig from "../../tailwind.config.js";
1110
import AchievementBadge from "../AchievementBadge/AchievementBadge";
1211
import Dropdown from "../Dropdown/Dropdown";
12+
import MediaQuery from "../MediaQuery/MediaQuery";
1313
import PointsTicker from "../PointsTicker/PointsTicker";
1414
import SignInButton from "../SignInButton/SignInButton";
1515
import SvgSymbol from "../SvgSymbol/SvgSymbol";

src/components/ReviewTaskPane/ReviewTaskPane.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
import PropTypes from "prop-types";
22
import { Component } from "react";
33
import { FormattedMessage } from "react-intl";
4-
import MediaQuery from "react-responsive";
54
import { WidgetDataTarget, generateWidgetId, widgetDescriptor } from "../../services/Widget/Widget";
65
import BusySpinner from "../BusySpinner/BusySpinner";
76
import ChallengeNameLink from "../ChallengeNameLink/ChallengeNameLink";
@@ -13,6 +12,7 @@ import WithCurrentUser from "../HOCs/WithCurrentUser/WithCurrentUser";
1312
import WithTaskBundle from "../HOCs/WithTaskBundle/WithTaskBundle";
1413
import WithTaskReview from "../HOCs/WithTaskReview/WithTaskReview";
1514
import WithWidgetWorkspaces from "../HOCs/WithWidgetWorkspaces/WithWidgetWorkspaces";
15+
import MediaQuery from "../MediaQuery/MediaQuery";
1616
import SvgSymbol from "../SvgSymbol/SvgSymbol";
1717
import MobileTaskDetails from "../TaskPane/MobileTaskDetails/MobileTaskDetails";
1818
import TaskMap from "../TaskPane/TaskMap/TaskMap";

src/components/TaskPane/TaskPane.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import PropTypes from "prop-types";
44
import { Component, Fragment } from "react";
55
import { CopyToClipboard } from "react-copy-to-clipboard";
66
import { FormattedMessage, injectIntl } from "react-intl";
7-
import MediaQuery from "react-responsive";
87
import { Redirect } from "react-router";
98
import { Link } from "react-router-dom";
109
import AsManager from "../../interactions/User/AsManager";
@@ -26,6 +25,7 @@ import WithKeyboardShortcuts from "../HOCs/WithKeyboardShortcuts/WithKeyboardSho
2625
import WithLockedTask from "../HOCs/WithLockedTask/WithLockedTask";
2726
import WithTaskBundle from "../HOCs/WithTaskBundle/WithTaskBundle";
2827
import WithWidgetWorkspaces from "../HOCs/WithWidgetWorkspaces/WithWidgetWorkspaces";
28+
import MediaQuery from "../MediaQuery/MediaQuery";
2929
import SvgSymbol from "../SvgSymbol/SvgSymbol";
3030
import WidgetWorkspace from "../WidgetWorkspace/WidgetWorkspace";
3131
import TaskMapWidget from "../Widgets/TaskMapWidget/TaskMapWidget";

0 commit comments

Comments
 (0)