Skip to content

Commit f758b05

Browse files
itsmeadiszuperaz
andauthored
feat: add Node 24 support (#640)
* feat: add Node 24 support - Migrate url.parse() to WHATWG URL API (DEP0169 runtime deprecation in Node 24) - src/redirect_url.ts: Url.parse() → new URL() - test/unit/node/redirect_test.js: url.parse().query → new URL().search - test/integration/cloud/reaction.js: url.parse(x, true) → new URL() - Add Node 24 to unit test matrix * Restore node 24 in setup-node * Fix tests on node 24 * Fix lint * Try runnning on node 16 too * Restore removing node 16 --------- Co-authored-by: Zita Szupera <szuperaz@gmail.com>
1 parent 3499cb2 commit f758b05

File tree

8 files changed

+207
-17
lines changed

8 files changed

+207
-17
lines changed

.github/actions/setup-node/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Sets up Node and Build SDK
44
inputs:
55
node-version:
66
required: false
7-
default: '22'
7+
default: '24'
88

99
runs:
1010
using: 'composite'

.github/workflows/unit.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
runs-on: ubuntu-latest
1919
strategy:
2020
matrix:
21-
node: [18, 20, 22]
21+
node: [18, 20, 22, 24]
2222
steps:
2323
- uses: actions/checkout@v4
2424
- uses: ./.github/actions/setup-node

package.json

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,10 @@
2525
"lint-fix": "prettier --write '**/*.{js,ts}' && eslint --fix '**/*.{js,ts}'",
2626
"test": "yarn run test-unit-node",
2727
"test-types": "tsc --skipLibCheck --target es2020 --esModuleInterop true --noEmit true test/typescript/*.ts",
28-
"test-unit-node": "mocha --require ./babel-register.js test/unit/common test/unit/node",
29-
"test-integration-node": "mocha --require ./babel-register.js test/integration/common test/integration/node --exit",
30-
"test-cloud": "mocha --require ./babel-register.js test/integration/cloud --timeout 40000 --exit",
31-
"test-cloud-local": "LOCAL=true mocha --require ./babel-register.js test/integration/cloud --timeout 40000 --ignore 'test/integration/cloud/{personalized_feed,files,images}.js'",
28+
"test-unit-node": "mocha --require tsx/cjs --require dotenv/config test/unit/common test/unit/node",
29+
"test-integration-node": "mocha --require tsx/cjs --require dotenv/config test/integration/common test/integration/node --exit",
30+
"test-cloud": "mocha --require tsx/cjs --require dotenv/config test/integration/cloud --timeout 40000 --exit",
31+
"test-cloud-local": "LOCAL=true mocha --require tsx/cjs --require dotenv/config test/integration/cloud --timeout 40000 --ignore 'test/integration/cloud/{personalized_feed,files,images}.js'",
3232
"test-browser": "karma start karma.config.js",
3333
"prepare": "yarn run build",
3434
"preversion": "yarn run test-unit-node",
@@ -104,6 +104,7 @@
104104
"request": "^2.88.2",
105105
"standard-version": "^9.3.2",
106106
"testdouble": "3.20.0",
107+
"tsx": "^4.21.0",
107108
"typescript": "^5.2.2",
108109
"webpack": "^5.89.0",
109110
"webpack-cli": "^5.1.1"

src/redirect_url.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import Url from 'url';
21
import qs from 'qs';
32

43
import { StreamClient } from './client';
@@ -20,10 +19,15 @@ import { JWTScopeToken } from './signing';
2019
* @return {string} The redirect url
2120
*/
2221
export default function createRedirectUrl(this: StreamClient, targetUrl: string, userId: string, events: unknown[]) {
23-
const uri = Url.parse(targetUrl);
22+
let uri: URL;
23+
try {
24+
uri = new URL(targetUrl);
25+
} catch {
26+
throw new MissingSchemaError(`Invalid URI: "${targetUrl}"`);
27+
}
2428

2529
if (!(uri.host || (uri.hostname && uri.port))) {
26-
throw new MissingSchemaError(`Invalid URI: "${Url.format(uri)}"`);
30+
throw new MissingSchemaError(`Invalid URI: "${targetUrl}"`);
2731
}
2832

2933
const authToken = JWTScopeToken(this.apiSecret as string, 'redirect_and_track', '*', {

test/integration/cloud/reaction.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
/* eslint-disable no-await-in-loop */
2-
import url from 'url';
32
import expect from 'expect.js';
43

54
import { CloudContext } from './utils';
@@ -144,7 +143,8 @@ describe('Reaction pagination', () => {
144143
expectedQuery.user_id = ctx.bob.userId;
145144
}
146145

147-
const { query } = url.parse(extra.next, true);
146+
const parsedUrl = new URL(extra.next, 'http://localhost');
147+
const query = Object.fromEntries(parsedUrl.searchParams.entries());
148148
latestExtra[kind].next.should.include('/activity_id/');
149149
latestExtra[kind].next.should.include(`/${kind}/`);
150150
latestExtra[kind].next.should.include(`/${ctx.activity.id}/`);

test/unit/node/client_test.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
import expect from 'expect.js';
22
import * as td from 'testdouble';
33
import { jwtDecode } from 'jwt-decode';
4-
5-
import pkg from '../../../package.json';
4+
import { createRequire } from 'node:module';
65
import { connect, StreamClient, StreamFeed } from '../../../src';
76
import { beforeEachFn } from '../utils/hooks';
87

8+
const require = createRequire(import.meta.url);
9+
const pkg = require('../../../package.json');
10+
911
describe('[UNIT] Stream Client instantiation (Node)', function () {
1012
it('with secret', function () {
1113
new StreamClient('stub-key', 'stub-secret', 9498); // eslint-disable-line no-new

test/unit/node/redirect_test.js

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import url from 'url';
21
import expect from 'expect.js';
32
import jwt from 'jsonwebtoken';
43
import qs from 'qs';
@@ -39,7 +38,7 @@ describe("[UNIT] Redirect URL's", function () {
3938
this.client = new StreamClient(config.API_KEY, config.API_SECRET);
4039
const redirectUrl = this.client.createRedirectUrl(targetUrl, userId, events);
4140

42-
const queryString = qs.parse(url.parse(redirectUrl).query);
41+
const queryString = qs.parse(new URL(redirectUrl).search, { ignoreQueryPrefix: true });
4342
const decoded = jwt.verify(queryString.authorization, config.API_SECRET);
4443

4544
expect(decoded).to.eql({
@@ -82,7 +81,7 @@ describe("[UNIT] Redirect URL's", function () {
8281
this.client = new StreamClient(config.API_KEY, config.API_SECRET);
8382
const redirectUrl = this.client.createRedirectUrl(targetUrl, userId, events);
8483

85-
const queryString = qs.parse(url.parse(redirectUrl).query);
84+
const queryString = qs.parse(new URL(redirectUrl).search, { ignoreQueryPrefix: true });
8685
const decoded = jwt.verify(queryString.authorization, config.API_SECRET);
8786

8887
expect(decoded).to.eql({

yarn.lock

Lines changed: 185 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1242,6 +1242,136 @@
12421242
resolved "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz"
12431243
integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==
12441244

1245+
"@esbuild/aix-ppc64@0.27.3":
1246+
version "0.27.3"
1247+
resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.27.3.tgz#815b39267f9bffd3407ea6c376ac32946e24f8d2"
1248+
integrity sha512-9fJMTNFTWZMh5qwrBItuziu834eOCUcEqymSH7pY+zoMVEZg3gcPuBNxH1EvfVYe9h0x/Ptw8KBzv7qxb7l8dg==
1249+
1250+
"@esbuild/android-arm64@0.27.3":
1251+
version "0.27.3"
1252+
resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.27.3.tgz#19b882408829ad8e12b10aff2840711b2da361e8"
1253+
integrity sha512-YdghPYUmj/FX2SYKJ0OZxf+iaKgMsKHVPF1MAq/P8WirnSpCStzKJFjOjzsW0QQ7oIAiccHdcqjbHmJxRb/dmg==
1254+
1255+
"@esbuild/android-arm@0.27.3":
1256+
version "0.27.3"
1257+
resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.27.3.tgz#90be58de27915efa27b767fcbdb37a4470627d7b"
1258+
integrity sha512-i5D1hPY7GIQmXlXhs2w8AWHhenb00+GxjxRncS2ZM7YNVGNfaMxgzSGuO8o8SJzRc/oZwU2bcScvVERk03QhzA==
1259+
1260+
"@esbuild/android-x64@0.27.3":
1261+
version "0.27.3"
1262+
resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.27.3.tgz#d7dcc976f16e01a9aaa2f9b938fbec7389f895ac"
1263+
integrity sha512-IN/0BNTkHtk8lkOM8JWAYFg4ORxBkZQf9zXiEOfERX/CzxW3Vg1ewAhU7QSWQpVIzTW+b8Xy+lGzdYXV6UZObQ==
1264+
1265+
"@esbuild/darwin-arm64@0.27.3":
1266+
version "0.27.3"
1267+
resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.27.3.tgz#9f6cac72b3a8532298a6a4493ed639a8988e8abd"
1268+
integrity sha512-Re491k7ByTVRy0t3EKWajdLIr0gz2kKKfzafkth4Q8A5n1xTHrkqZgLLjFEHVD+AXdUGgQMq+Godfq45mGpCKg==
1269+
1270+
"@esbuild/darwin-x64@0.27.3":
1271+
version "0.27.3"
1272+
resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.27.3.tgz#ac61d645faa37fd650340f1866b0812e1fb14d6a"
1273+
integrity sha512-vHk/hA7/1AckjGzRqi6wbo+jaShzRowYip6rt6q7VYEDX4LEy1pZfDpdxCBnGtl+A5zq8iXDcyuxwtv3hNtHFg==
1274+
1275+
"@esbuild/freebsd-arm64@0.27.3":
1276+
version "0.27.3"
1277+
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.3.tgz#b8625689d73cf1830fe58c39051acdc12474ea1b"
1278+
integrity sha512-ipTYM2fjt3kQAYOvo6vcxJx3nBYAzPjgTCk7QEgZG8AUO3ydUhvelmhrbOheMnGOlaSFUoHXB6un+A7q4ygY9w==
1279+
1280+
"@esbuild/freebsd-x64@0.27.3":
1281+
version "0.27.3"
1282+
resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.27.3.tgz#07be7dd3c9d42fe0eccd2ab9f9ded780bc53bead"
1283+
integrity sha512-dDk0X87T7mI6U3K9VjWtHOXqwAMJBNN2r7bejDsc+j03SEjtD9HrOl8gVFByeM0aJksoUuUVU9TBaZa2rgj0oA==
1284+
1285+
"@esbuild/linux-arm64@0.27.3":
1286+
version "0.27.3"
1287+
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.27.3.tgz#bf31918fe5c798586460d2b3d6c46ed2c01ca0b6"
1288+
integrity sha512-sZOuFz/xWnZ4KH3YfFrKCf1WyPZHakVzTiqji3WDc0BCl2kBwiJLCXpzLzUBLgmp4veFZdvN5ChW4Eq/8Fc2Fg==
1289+
1290+
"@esbuild/linux-arm@0.27.3":
1291+
version "0.27.3"
1292+
resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.27.3.tgz#28493ee46abec1dc3f500223cd9f8d2df08f9d11"
1293+
integrity sha512-s6nPv2QkSupJwLYyfS+gwdirm0ukyTFNl3KTgZEAiJDd+iHZcbTPPcWCcRYH+WlNbwChgH2QkE9NSlNrMT8Gfw==
1294+
1295+
"@esbuild/linux-ia32@0.27.3":
1296+
version "0.27.3"
1297+
resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.27.3.tgz#750752a8b30b43647402561eea764d0a41d0ee29"
1298+
integrity sha512-yGlQYjdxtLdh0a3jHjuwOrxQjOZYD/C9PfdbgJJF3TIZWnm/tMd/RcNiLngiu4iwcBAOezdnSLAwQDPqTmtTYg==
1299+
1300+
"@esbuild/linux-loong64@0.27.3":
1301+
version "0.27.3"
1302+
resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.27.3.tgz#a5a92813a04e71198c50f05adfaf18fc1e95b9ed"
1303+
integrity sha512-WO60Sn8ly3gtzhyjATDgieJNet/KqsDlX5nRC5Y3oTFcS1l0KWba+SEa9Ja1GfDqSF1z6hif/SkpQJbL63cgOA==
1304+
1305+
"@esbuild/linux-mips64el@0.27.3":
1306+
version "0.27.3"
1307+
resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.27.3.tgz#deb45d7fd2d2161eadf1fbc593637ed766d50bb1"
1308+
integrity sha512-APsymYA6sGcZ4pD6k+UxbDjOFSvPWyZhjaiPyl/f79xKxwTnrn5QUnXR5prvetuaSMsb4jgeHewIDCIWljrSxw==
1309+
1310+
"@esbuild/linux-ppc64@0.27.3":
1311+
version "0.27.3"
1312+
resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.27.3.tgz#6f39ae0b8c4d3d2d61a65b26df79f6e12a1c3d78"
1313+
integrity sha512-eizBnTeBefojtDb9nSh4vvVQ3V9Qf9Df01PfawPcRzJH4gFSgrObw+LveUyDoKU3kxi5+9RJTCWlj4FjYXVPEA==
1314+
1315+
"@esbuild/linux-riscv64@0.27.3":
1316+
version "0.27.3"
1317+
resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.27.3.tgz#4c5c19c3916612ec8e3915187030b9df0b955c1d"
1318+
integrity sha512-3Emwh0r5wmfm3ssTWRQSyVhbOHvqegUDRd0WhmXKX2mkHJe1SFCMJhagUleMq+Uci34wLSipf8Lagt4LlpRFWQ==
1319+
1320+
"@esbuild/linux-s390x@0.27.3":
1321+
version "0.27.3"
1322+
resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.27.3.tgz#9ed17b3198fa08ad5ccaa9e74f6c0aff7ad0156d"
1323+
integrity sha512-pBHUx9LzXWBc7MFIEEL0yD/ZVtNgLytvx60gES28GcWMqil8ElCYR4kvbV2BDqsHOvVDRrOxGySBM9Fcv744hw==
1324+
1325+
"@esbuild/linux-x64@0.27.3":
1326+
version "0.27.3"
1327+
resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.27.3.tgz#12383dcbf71b7cf6513e58b4b08d95a710bf52a5"
1328+
integrity sha512-Czi8yzXUWIQYAtL/2y6vogER8pvcsOsk5cpwL4Gk5nJqH5UZiVByIY8Eorm5R13gq+DQKYg0+JyQoytLQas4dA==
1329+
1330+
"@esbuild/netbsd-arm64@0.27.3":
1331+
version "0.27.3"
1332+
resolved "https://registry.yarnpkg.com/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.3.tgz#dd0cb2fa543205fcd931df44f4786bfcce6df7d7"
1333+
integrity sha512-sDpk0RgmTCR/5HguIZa9n9u+HVKf40fbEUt+iTzSnCaGvY9kFP0YKBWZtJaraonFnqef5SlJ8/TiPAxzyS+UoA==
1334+
1335+
"@esbuild/netbsd-x64@0.27.3":
1336+
version "0.27.3"
1337+
resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.27.3.tgz#028ad1807a8e03e155153b2d025b506c3787354b"
1338+
integrity sha512-P14lFKJl/DdaE00LItAukUdZO5iqNH7+PjoBm+fLQjtxfcfFE20Xf5CrLsmZdq5LFFZzb5JMZ9grUwvtVYzjiA==
1339+
1340+
"@esbuild/openbsd-arm64@0.27.3":
1341+
version "0.27.3"
1342+
resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.3.tgz#e3c16ff3490c9b59b969fffca87f350ffc0e2af5"
1343+
integrity sha512-AIcMP77AvirGbRl/UZFTq5hjXK+2wC7qFRGoHSDrZ5v5b8DK/GYpXW3CPRL53NkvDqb9D+alBiC/dV0Fb7eJcw==
1344+
1345+
"@esbuild/openbsd-x64@0.27.3":
1346+
version "0.27.3"
1347+
resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.27.3.tgz#c5a4693fcb03d1cbecbf8b422422468dfc0d2a8b"
1348+
integrity sha512-DnW2sRrBzA+YnE70LKqnM3P+z8vehfJWHXECbwBmH/CU51z6FiqTQTHFenPlHmo3a8UgpLyH3PT+87OViOh1AQ==
1349+
1350+
"@esbuild/openharmony-arm64@0.27.3":
1351+
version "0.27.3"
1352+
resolved "https://registry.yarnpkg.com/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.3.tgz#082082444f12db564a0775a41e1991c0e125055e"
1353+
integrity sha512-NinAEgr/etERPTsZJ7aEZQvvg/A6IsZG/LgZy+81wON2huV7SrK3e63dU0XhyZP4RKGyTm7aOgmQk0bGp0fy2g==
1354+
1355+
"@esbuild/sunos-x64@0.27.3":
1356+
version "0.27.3"
1357+
resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.27.3.tgz#5ab036c53f929e8405c4e96e865a424160a1b537"
1358+
integrity sha512-PanZ+nEz+eWoBJ8/f8HKxTTD172SKwdXebZ0ndd953gt1HRBbhMsaNqjTyYLGLPdoWHy4zLU7bDVJztF5f3BHA==
1359+
1360+
"@esbuild/win32-arm64@0.27.3":
1361+
version "0.27.3"
1362+
resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.27.3.tgz#38de700ef4b960a0045370c171794526e589862e"
1363+
integrity sha512-B2t59lWWYrbRDw/tjiWOuzSsFh1Y/E95ofKz7rIVYSQkUYBjfSgf6oeYPNWHToFRr2zx52JKApIcAS/D5TUBnA==
1364+
1365+
"@esbuild/win32-ia32@0.27.3":
1366+
version "0.27.3"
1367+
resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.27.3.tgz#451b93dc03ec5d4f38619e6cd64d9f9eff06f55c"
1368+
integrity sha512-QLKSFeXNS8+tHW7tZpMtjlNb7HKau0QDpwm49u0vUp9y1WOF+PEzkU84y9GqYaAVW8aH8f3GcBck26jh54cX4Q==
1369+
1370+
"@esbuild/win32-x64@0.27.3":
1371+
version "0.27.3"
1372+
resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.27.3.tgz#0eaf705c941a218a43dba8e09f1df1d6cd2f1f17"
1373+
integrity sha512-4uJGhsxuptu3OcpVAzli+/gWusVGwZZHTlS63hh++ehExkVT8SgiEf7/uC/PclrPPkLhZqGgCTjd0VWLo6xMqA==
1374+
12451375
"@eslint-community/eslint-utils@^4.2.0", "@eslint-community/eslint-utils@^4.4.0":
12461376
version "4.4.0"
12471377
resolved "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz"
@@ -3861,6 +3991,38 @@ es6-error@^4.0.1, es6-error@^4.1.1:
38613991
resolved "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz"
38623992
integrity sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==
38633993

3994+
esbuild@~0.27.0:
3995+
version "0.27.3"
3996+
resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.27.3.tgz#5859ca8e70a3af956b26895ce4954d7e73bd27a8"
3997+
integrity sha512-8VwMnyGCONIs6cWue2IdpHxHnAjzxnw2Zr7MkVxB2vjmQ2ivqGFb4LEG3SMnv0Gb2F/G/2yA8zUaiL1gywDCCg==
3998+
optionalDependencies:
3999+
"@esbuild/aix-ppc64" "0.27.3"
4000+
"@esbuild/android-arm" "0.27.3"
4001+
"@esbuild/android-arm64" "0.27.3"
4002+
"@esbuild/android-x64" "0.27.3"
4003+
"@esbuild/darwin-arm64" "0.27.3"
4004+
"@esbuild/darwin-x64" "0.27.3"
4005+
"@esbuild/freebsd-arm64" "0.27.3"
4006+
"@esbuild/freebsd-x64" "0.27.3"
4007+
"@esbuild/linux-arm" "0.27.3"
4008+
"@esbuild/linux-arm64" "0.27.3"
4009+
"@esbuild/linux-ia32" "0.27.3"
4010+
"@esbuild/linux-loong64" "0.27.3"
4011+
"@esbuild/linux-mips64el" "0.27.3"
4012+
"@esbuild/linux-ppc64" "0.27.3"
4013+
"@esbuild/linux-riscv64" "0.27.3"
4014+
"@esbuild/linux-s390x" "0.27.3"
4015+
"@esbuild/linux-x64" "0.27.3"
4016+
"@esbuild/netbsd-arm64" "0.27.3"
4017+
"@esbuild/netbsd-x64" "0.27.3"
4018+
"@esbuild/openbsd-arm64" "0.27.3"
4019+
"@esbuild/openbsd-x64" "0.27.3"
4020+
"@esbuild/openharmony-arm64" "0.27.3"
4021+
"@esbuild/sunos-x64" "0.27.3"
4022+
"@esbuild/win32-arm64" "0.27.3"
4023+
"@esbuild/win32-ia32" "0.27.3"
4024+
"@esbuild/win32-x64" "0.27.3"
4025+
38644026
escalade@^3.1.1:
38654027
version "3.1.1"
38664028
resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz"
@@ -4562,7 +4724,7 @@ fs.realpath@^1.0.0:
45624724
resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz"
45634725
integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
45644726

4565-
fsevents@~2.3.2:
4727+
fsevents@~2.3.2, fsevents@~2.3.3:
45664728
version "2.3.3"
45674729
resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz"
45684730
integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==
@@ -4703,6 +4865,13 @@ get-symbol-description@^1.0.0:
47034865
call-bind "^1.0.2"
47044866
get-intrinsic "^1.1.1"
47054867

4868+
get-tsconfig@^4.7.5:
4869+
version "4.13.6"
4870+
resolved "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.13.6.tgz#2fbfda558a98a691a798f123afd95915badce876"
4871+
integrity sha512-shZT/QMiSHc/YBLxxOkMtgSid5HFoauqCE3/exfsEcwg1WkeqjG+V40yBbBrsD+jW2HDXcs28xOfcbm2jI8Ddw==
4872+
dependencies:
4873+
resolve-pkg-maps "^1.0.0"
4874+
47064875
get-uri@^6.0.1:
47074876
version "6.0.2"
47084877
resolved "https://registry.npmjs.org/get-uri/-/get-uri-6.0.2.tgz"
@@ -7550,6 +7719,11 @@ resolve-global@1.0.0, resolve-global@^1.0.0:
75507719
dependencies:
75517720
global-dirs "^0.1.1"
75527721

7722+
resolve-pkg-maps@^1.0.0:
7723+
version "1.0.0"
7724+
resolved "https://registry.yarnpkg.com/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz#616b3dc2c57056b5588c31cdf4b3d64db133720f"
7725+
integrity sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==
7726+
75537727
resolve@^1.10.0, resolve@^1.14.2, resolve@^1.20.0, resolve@^1.22.4, resolve@^1.22.8:
75547728
version "1.22.8"
75557729
resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz"
@@ -8532,6 +8706,16 @@ tsutils@^3.21.0:
85328706
dependencies:
85338707
tslib "^1.8.1"
85348708

8709+
tsx@^4.21.0:
8710+
version "4.21.0"
8711+
resolved "https://registry.yarnpkg.com/tsx/-/tsx-4.21.0.tgz#32aa6cf17481e336f756195e6fe04dae3e6308b1"
8712+
integrity sha512-5C1sg4USs1lfG0GFb2RLXsdpXqBSEhAaA/0kPL01wxzpMqLILNxIxIOKiILz+cdg/pLnOUxFYOR5yhHU666wbw==
8713+
dependencies:
8714+
esbuild "~0.27.0"
8715+
get-tsconfig "^4.7.5"
8716+
optionalDependencies:
8717+
fsevents "~2.3.3"
8718+
85358719
tunnel-agent@*, tunnel-agent@^0.6.0:
85368720
version "0.6.0"
85378721
resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz"

0 commit comments

Comments
 (0)