diff --git a/.vscode/settings.json b/.vscode/settings.json
index fa3c066ad666..5e5138cf0856 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -6,5 +6,6 @@
"source.fixAll": true,
"source.organizeImports": false
},
- "unocss.root": "./packages/website"
+ "unocss.root": "./packages/website",
+ "typescript.tsdk": "node_modules/typescript/lib"
}
diff --git a/packages/actions/src/uploadCoverage/action.yml b/packages/actions/src/uploadCoverage/action.yml
index 43044c758b25..7b0feb193a13 100644
--- a/packages/actions/src/uploadCoverage/action.yml
+++ b/packages/actions/src/uploadCoverage/action.yml
@@ -45,6 +45,12 @@ runs:
files: ./packages/website/coverage/cobertura-coverage.xml
flags: website
+ - name: Upload WS Coverage
+ uses: codecov/codecov-action@v3
+ with:
+ files: ./packages/ws/coverage/cobertura-coverage.xml
+ flags: ws
+
- name: Upload Utilities Coverage
uses: codecov/codecov-action@v3
with:
diff --git a/packages/ws/.cliff-jumperrc.json b/packages/ws/.cliff-jumperrc.json
new file mode 100644
index 000000000000..a9017bb623c5
--- /dev/null
+++ b/packages/ws/.cliff-jumperrc.json
@@ -0,0 +1,5 @@
+{
+ "name": "ws",
+ "org": "discordjs",
+ "packagePath": "packages/ws"
+}
diff --git a/packages/ws/.eslintrc.json b/packages/ws/.eslintrc.json
new file mode 100644
index 000000000000..99ef7cec8051
--- /dev/null
+++ b/packages/ws/.eslintrc.json
@@ -0,0 +1,3 @@
+{
+ "extends": "../../.eslintrc.json"
+}
diff --git a/packages/ws/.gitignore b/packages/ws/.gitignore
new file mode 100644
index 000000000000..86b93e929ae6
--- /dev/null
+++ b/packages/ws/.gitignore
@@ -0,0 +1,27 @@
+# Packages
+node_modules/
+
+# Log files
+logs/
+*.log
+npm-debug.log*
+
+# Runtime data
+pids
+*.pid
+*.seed
+
+# Env
+.env
+
+# Dist
+dist/
+typings/
+docs/**/*
+!docs/index.json
+!docs/README.md
+
+# Miscellaneous
+.tmp/
+coverage/
+tsconfig.tsbuildinfo
diff --git a/packages/ws/.prettierignore b/packages/ws/.prettierignore
new file mode 100644
index 000000000000..a8f763a7cea5
--- /dev/null
+++ b/packages/ws/.prettierignore
@@ -0,0 +1,9 @@
+# Autogenerated
+CHANGELOG.md
+.turbo
+dist/
+docs/**/*
+!docs/index.yml
+!docs/README.md
+coverage/
+tsup.config.*.mjs
diff --git a/packages/ws/.prettierrc.js b/packages/ws/.prettierrc.js
new file mode 100644
index 000000000000..f004026c7647
--- /dev/null
+++ b/packages/ws/.prettierrc.js
@@ -0,0 +1 @@
+module.exports = require('../../.prettierrc.json');
diff --git a/packages/ws/LICENSE b/packages/ws/LICENSE
new file mode 100644
index 000000000000..f9786ff8f379
--- /dev/null
+++ b/packages/ws/LICENSE
@@ -0,0 +1,191 @@
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ Copyright 2022 Noel Buechler
+ Copyright 2022 Charlotte Cristea
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/packages/ws/README.md b/packages/ws/README.md
new file mode 100644
index 000000000000..d86cd89bd81b
--- /dev/null
+++ b/packages/ws/README.md
@@ -0,0 +1,124 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## About
+
+`@discordjs/ws` is a powerful wrapper around Discord's gateway.
+
+## Installation
+
+**Node.js 16.9.0 or newer is required.**
+
+```sh-session
+npm install @discordjs/ws
+yarn add @discordjs/ws
+pnpm add @discordjs/ws
+```
+
+## Example usage
+
+```ts
+import { WebSocketManager, WebSocketShardEvents } from '@discordjs/ws';
+import { REST } from '@discordjs/rest';
+
+const rest = new REST().setToken(process.env.DISCORD_TOKEN);
+// This example will spawn Discord's recommended shard count, all under the current process.
+const manager = new WebSocketManager({
+ token: process.env.DISCORD_TOKEN,
+ intents: 0, // for no intents
+ rest,
+});
+
+await manager.connect();
+```
+
+### Specify shards
+
+```ts
+// Spawn 4 shards
+const manager = new WebSocketManager({
+ token: process.env.DISCORD_TOKEN,
+ intents: 0,
+ rest,
+ shardCount: 4,
+});
+
+// The manager also supports being responsible for only a subset of your shards:
+
+// Your bot will run 8 shards overall
+// This manager will only take care of 0, 2, 4, and 6
+const manager = new WebSocketManager({
+ token: process.env.DISCORD_TOKEN,
+ intents: 0,
+ rest,
+ shardCount: 8,
+ shardIds: [0, 2, 4, 6],
+});
+
+// Alternatively, if your shards are consecutive, you can pass in a range
+const manager = new WebSocketManager({
+ token: process.env.DISCORD_TOKEN,
+ intents: 0,
+ rest,
+ shardCount: 8,
+ shardIds: {
+ start: 0,
+ end: 4,
+ },
+});
+```
+
+### Specify `worker_threads`
+
+You can also have the shards spawn in worker threads:
+
+```ts
+import { WebSocketManager, WebSocketShardEvents, WorkerShardingStrategy } from '@discordjs/ws';
+
+const manager = new WebSocketManager({
+ token: process.env.DISCORD_TOKEN,
+ intents: 0,
+ rest,
+ shardCount: 6,
+});
+
+// This will cause 3 workers to spawn, 2 shards per each
+manager.setStrategy(new WorkerShardingStrategy(manager, { shardsPerWorker: 2 }));
+// Or maybe you want all your shards under a single worker
+manager.setStrategy(new WorkerShardingStrategy(manager, { shardsPerWorker: 'all' }));
+```
+
+## Links
+
+- [Website](https://discord.js.org/) ([source](https://github.com/discordjs/discord.js/tree/main/packages/website))
+- [Documentation](https://discord.js.org/#/docs/ws)
+- [Guide](https://discordjs.guide/) ([source](https://github.com/discordjs/guide))
+ See also the [Update Guide](https://discordjs.guide/additional-info/changes-in-v13.html), including updated and removed items in the library.
+- [discord.js Discord server](https://discord.gg/djs)
+- [Discord API Discord server](https://discord.gg/discord-api)
+- [GitHub](https://github.com/discordjs/discord.js/tree/main/packages/ws)
+- [npm](https://www.npmjs.com/package/@discordjs/ws)
+- [Related libraries](https://discord.com/developers/docs/topics/community-resources#libraries)
+
+## Contributing
+
+Before creating an issue, please ensure that it hasn't already been reported/suggested, and double-check the
+[documentation](https://discord.js.org/#/docs/ws).
+See [the contribution guide](https://github.com/discordjs/discord.js/blob/main/.github/CONTRIBUTING.md) if you'd like to submit a PR.
+
+## Help
+
+If you don't understand something in the documentation, you are experiencing problems, or you just need a gentle
+nudge in the right direction, please don't hesitate to join our official [discord.js Server](https://discord.gg/djs).
diff --git a/packages/ws/__tests__/strategy/WorkerContextFetchingStrategy.test.ts b/packages/ws/__tests__/strategy/WorkerContextFetchingStrategy.test.ts
new file mode 100644
index 000000000000..b0294c3eeb04
--- /dev/null
+++ b/packages/ws/__tests__/strategy/WorkerContextFetchingStrategy.test.ts
@@ -0,0 +1,83 @@
+import { REST } from '@discordjs/rest';
+import { MockAgent, Interceptable } from 'undici';
+import { beforeEach, test, vi, expect } from 'vitest';
+import {
+ managerToFetchingStrategyOptions,
+ WorkerContextFetchingStrategy,
+ WorkerRecievePayload,
+ WorkerSendPayload,
+ WebSocketManager,
+ WorkerSendPayloadOp,
+ WorkerRecievePayloadOp,
+} from '../../src';
+
+let mockAgent: MockAgent;
+let mockPool: Interceptable;
+
+beforeEach(() => {
+ mockAgent = new MockAgent();
+ mockAgent.disableNetConnect();
+ mockPool = mockAgent.get('https://discord.com');
+});
+
+const session = {
+ shardId: 0,
+ shardCount: 1,
+ sequence: 123,
+ sessionId: 'abc',
+};
+
+vi.mock('node:worker_threads', async () => {
+ const { EventEmitter }: typeof import('node:events') = await vi.importActual('node:events');
+ class MockParentPort extends EventEmitter {
+ public postMessage(message: WorkerRecievePayload) {
+ if (message.op === WorkerRecievePayloadOp.RetrieveSessionInfo) {
+ const response: WorkerSendPayload = {
+ op: WorkerSendPayloadOp.SessionInfoResponse,
+ nonce: message.nonce,
+ session,
+ };
+ this.emit('message', response);
+ }
+ }
+ }
+
+ return {
+ parentPort: new MockParentPort(),
+ isMainThread: false,
+ };
+});
+
+test('session info', async () => {
+ const rest = new REST().setAgent(mockAgent).setToken('A-Very-Fake-Token');
+ const manager = new WebSocketManager({ token: 'A-Very-Fake-Token', intents: 0, rest });
+
+ mockPool
+ .intercept({
+ path: '/api/v10/gateway/bot',
+ method: 'GET',
+ })
+ .reply(() => ({
+ data: {
+ shards: 1,
+ session_start_limit: {
+ max_concurrency: 3,
+ reset_after: 60,
+ remaining: 3,
+ total: 3,
+ },
+ url: 'wss://gateway.discord.gg',
+ },
+ statusCode: 200,
+ responseOptions: {
+ headers: {
+ 'content-type': 'application/json',
+ },
+ },
+ }));
+
+ const strategy = new WorkerContextFetchingStrategy(await managerToFetchingStrategyOptions(manager));
+
+ strategy.updateSessionInfo(0, session);
+ expect(await strategy.retrieveSessionInfo(0)).toEqual(session);
+});
diff --git a/packages/ws/__tests__/strategy/WorkerShardingStrategy.test.ts b/packages/ws/__tests__/strategy/WorkerShardingStrategy.test.ts
new file mode 100644
index 000000000000..b0c18fc286f1
--- /dev/null
+++ b/packages/ws/__tests__/strategy/WorkerShardingStrategy.test.ts
@@ -0,0 +1,195 @@
+import { REST } from '@discordjs/rest';
+import {
+ GatewayDispatchEvents,
+ GatewayDispatchPayload,
+ GatewayOpcodes,
+ GatewaySendPayload,
+} from 'discord-api-types/v10';
+import { MockAgent, Interceptable } from 'undici';
+import { beforeEach, test, vi, expect, afterEach } from 'vitest';
+import {
+ WorkerRecievePayload,
+ WorkerSendPayload,
+ WebSocketManager,
+ WorkerSendPayloadOp,
+ WorkerRecievePayloadOp,
+ WorkerShardingStrategy,
+ WebSocketShardEvents,
+ SessionInfo,
+} from '../../src';
+
+let mockAgent: MockAgent;
+let mockPool: Interceptable;
+
+const mockConstructor = vi.fn();
+const mockSend = vi.fn();
+const mockTerminate = vi.fn();
+
+const memberChunkData: GatewayDispatchPayload = {
+ op: GatewayOpcodes.Dispatch,
+ s: 123,
+ t: GatewayDispatchEvents.GuildMembersChunk,
+ d: {
+ guild_id: '123',
+ members: [],
+ },
+};
+
+const sessionInfo: SessionInfo = {
+ shardId: 0,
+ shardCount: 2,
+ sequence: 123,
+ sessionId: 'abc',
+};
+
+vi.mock('node:worker_threads', async () => {
+ const { EventEmitter }: typeof import('node:events') = await vi.importActual('node:events');
+ class MockWorker extends EventEmitter {
+ public constructor(...args: any[]) {
+ super();
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
+ mockConstructor(...args);
+ // need to delay this by an event loop cycle to allow the strategy to attach a listener
+ setImmediate(() => this.emit('online'));
+ }
+
+ public postMessage(message: WorkerSendPayload) {
+ switch (message.op) {
+ case WorkerSendPayloadOp.Connect: {
+ const response: WorkerRecievePayload = {
+ op: WorkerRecievePayloadOp.Connected,
+ shardId: message.shardId,
+ };
+ this.emit('message', response);
+ break;
+ }
+
+ case WorkerSendPayloadOp.Destroy: {
+ const response: WorkerRecievePayload = {
+ op: WorkerRecievePayloadOp.Destroyed,
+ shardId: message.shardId,
+ };
+ this.emit('message', response);
+ break;
+ }
+
+ case WorkerSendPayloadOp.Send: {
+ if (message.payload.op === GatewayOpcodes.RequestGuildMembers) {
+ const response: WorkerRecievePayload = {
+ op: WorkerRecievePayloadOp.Event,
+ shardId: message.shardId,
+ event: WebSocketShardEvents.Dispatch,
+ data: memberChunkData,
+ };
+ this.emit('message', response);
+
+ // Fetch session info
+ const sessionFetch: WorkerRecievePayload = {
+ op: WorkerRecievePayloadOp.RetrieveSessionInfo,
+ shardId: message.shardId,
+ nonce: Math.random(),
+ };
+ this.emit('message', sessionFetch);
+ }
+
+ mockSend(message.shardId, message.payload);
+ break;
+ }
+
+ case WorkerSendPayloadOp.SessionInfoResponse: {
+ message.session ??= sessionInfo;
+
+ const session: WorkerRecievePayload = {
+ op: WorkerRecievePayloadOp.UpdateSessionInfo,
+ shardId: message.session.shardId,
+ session: { ...message.session, sequence: message.session.sequence + 1 },
+ };
+ this.emit('message', session);
+ break;
+ }
+ }
+ }
+
+ public terminate = mockTerminate;
+ }
+
+ return {
+ Worker: MockWorker,
+ };
+});
+
+beforeEach(() => {
+ mockAgent = new MockAgent();
+ mockAgent.disableNetConnect();
+ mockPool = mockAgent.get('https://discord.com');
+});
+
+afterEach(() => {
+ mockConstructor.mockRestore();
+ mockSend.mockRestore();
+ mockTerminate.mockRestore();
+});
+
+test('spawn, connect, send a message, session info, and destroy', async () => {
+ const rest = new REST().setAgent(mockAgent).setToken('A-Very-Fake-Token');
+
+ const mockRetrieveSessionInfo = vi.fn();
+ const mockUpdateSessionInfo = vi.fn();
+ const manager = new WebSocketManager({
+ token: 'A-Very-Fake-Token',
+ intents: 0,
+ rest,
+ shardIds: [0, 1],
+ retrieveSessionInfo: mockRetrieveSessionInfo,
+ updateSessionInfo: mockUpdateSessionInfo,
+ });
+
+ const managerEmitSpy = vi.spyOn(manager, 'emit');
+
+ mockPool
+ .intercept({
+ path: '/api/v10/gateway/bot',
+ method: 'GET',
+ })
+ .reply(() => ({
+ data: {
+ shards: 1,
+ session_start_limit: {
+ max_concurrency: 3,
+ reset_after: 60,
+ remaining: 3,
+ total: 3,
+ },
+ url: 'wss://gateway.discord.gg',
+ },
+ statusCode: 200,
+ responseOptions: {
+ headers: {
+ 'content-type': 'application/json',
+ },
+ },
+ }));
+
+ const strategy = new WorkerShardingStrategy(manager, { shardsPerWorker: 'all' });
+ manager.setStrategy(strategy);
+
+ await manager.connect();
+ expect(mockConstructor).toHaveBeenCalledWith(
+ expect.stringContaining('worker.cjs'),
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
+ expect.objectContaining({ workerData: expect.objectContaining({ shardIds: [0, 1] }) }),
+ );
+
+ const payload: GatewaySendPayload = { op: GatewayOpcodes.RequestGuildMembers, d: { guild_id: '123', limit: 0 } };
+ await manager.send(0, payload);
+ expect(mockSend).toHaveBeenCalledWith(0, payload);
+ expect(managerEmitSpy).toHaveBeenCalledWith(WebSocketShardEvents.Dispatch, {
+ ...memberChunkData,
+ shardId: 0,
+ });
+ expect(mockRetrieveSessionInfo).toHaveBeenCalledWith(0);
+ expect(mockUpdateSessionInfo).toHaveBeenCalledWith(0, { ...sessionInfo, sequence: sessionInfo.sequence + 1 });
+
+ await manager.destroy({ reason: 'souji is a soft boi :3' });
+ expect(mockTerminate).toHaveBeenCalled();
+});
diff --git a/packages/ws/__tests__/util/IdentifyThrottler.test.ts b/packages/ws/__tests__/util/IdentifyThrottler.test.ts
new file mode 100644
index 000000000000..591263f5ad5e
--- /dev/null
+++ b/packages/ws/__tests__/util/IdentifyThrottler.test.ts
@@ -0,0 +1,46 @@
+import { setTimeout as sleep } from 'node:timers/promises';
+import { expect, Mock, test, vi } from 'vitest';
+import { IdentifyThrottler, WebSocketManager } from '../../src';
+
+vi.mock('node:timers/promises', () => ({
+ setTimeout: vi.fn(),
+}));
+
+const fetchGatewayInformation = vi.fn();
+
+const manager = {
+ fetchGatewayInformation,
+} as unknown as WebSocketManager;
+
+const throttler = new IdentifyThrottler(manager);
+
+vi.useFakeTimers();
+
+const NOW = vi.fn().mockReturnValue(Date.now());
+global.Date.now = NOW;
+
+test('wait for identify', async () => {
+ fetchGatewayInformation.mockReturnValue({
+ session_start_limit: {
+ max_concurrency: 2,
+ },
+ });
+
+ // First call should never wait
+ await throttler.waitForIdentify();
+ expect(sleep).not.toHaveBeenCalled();
+
+ // Second call still won't wait because max_concurrency is 2
+ await throttler.waitForIdentify();
+ expect(sleep).not.toHaveBeenCalled();
+
+ // Third call should wait
+ await throttler.waitForIdentify();
+ expect(sleep).toHaveBeenCalled();
+
+ (sleep as Mock).mockRestore();
+
+ // Fourth call shouldn't wait, because our max_concurrency is 2 and we waited for a reset
+ await throttler.waitForIdentify();
+ expect(sleep).not.toHaveBeenCalled();
+});
diff --git a/packages/ws/__tests__/ws/WebSocketManager.test.ts b/packages/ws/__tests__/ws/WebSocketManager.test.ts
new file mode 100644
index 000000000000..bf652971d4a4
--- /dev/null
+++ b/packages/ws/__tests__/ws/WebSocketManager.test.ts
@@ -0,0 +1,197 @@
+import { REST } from '@discordjs/rest';
+import { APIGatewayBotInfo, GatewayOpcodes, GatewaySendPayload } from 'discord-api-types/v10';
+import { MockAgent, Interceptable } from 'undici';
+import { beforeEach, describe, expect, test, vi } from 'vitest';
+import { IShardingStrategy, WebSocketManager } from '../../src';
+
+vi.useFakeTimers();
+
+let mockAgent: MockAgent;
+let mockPool: Interceptable;
+
+beforeEach(() => {
+ mockAgent = new MockAgent();
+ mockAgent.disableNetConnect();
+ mockPool = mockAgent.get('https://discord.com');
+});
+
+const NOW = vi.fn().mockReturnValue(Date.now());
+global.Date.now = NOW;
+
+test('fetch gateway information', async () => {
+ const rest = new REST().setAgent(mockAgent).setToken('A-Very-Fake-Token');
+ const manager = new WebSocketManager({ token: 'A-Very-Fake-Token', intents: 0, rest });
+
+ const data: APIGatewayBotInfo = {
+ shards: 1,
+ session_start_limit: {
+ max_concurrency: 3,
+ reset_after: 60,
+ remaining: 3,
+ total: 3,
+ },
+ url: 'wss://gateway.discord.gg',
+ };
+
+ const fetch = vi.fn(() => ({
+ data,
+ statusCode: 200,
+ responseOptions: {
+ headers: {
+ 'content-type': 'application/json',
+ },
+ },
+ }));
+
+ mockPool
+ .intercept({
+ path: '/api/v10/gateway/bot',
+ method: 'GET',
+ })
+ .reply(fetch);
+
+ const initial = await manager.fetchGatewayInformation();
+ expect(initial).toEqual(data);
+ expect(fetch).toHaveBeenCalledOnce();
+
+ fetch.mockRestore();
+
+ const cached = await manager.fetchGatewayInformation();
+ expect(cached).toEqual(data);
+ expect(fetch).not.toHaveBeenCalled();
+
+ fetch.mockRestore();
+ mockPool
+ .intercept({
+ path: '/api/v10/gateway/bot',
+ method: 'GET',
+ })
+ .reply(fetch);
+
+ const forced = await manager.fetchGatewayInformation(true);
+ expect(forced).toEqual(data);
+ expect(fetch).toHaveBeenCalledOnce();
+
+ fetch.mockRestore();
+ mockPool
+ .intercept({
+ path: '/api/v10/gateway/bot',
+ method: 'GET',
+ })
+ .reply(fetch);
+
+ NOW.mockReturnValue(Infinity);
+ const cacheExpired = await manager.fetchGatewayInformation();
+ expect(cacheExpired).toEqual(data);
+ expect(fetch).toHaveBeenCalledOnce();
+});
+
+describe('get shard count', () => {
+ test('with shard count', async () => {
+ const rest = new REST().setAgent(mockAgent).setToken('A-Very-Fake-Token');
+ const manager = new WebSocketManager({ token: 'A-Very-Fake-Token', intents: 0, rest, shardCount: 2 });
+
+ expect(await manager.getShardCount()).toBe(2);
+ });
+
+ test('with shard ids array', async () => {
+ const rest = new REST().setAgent(mockAgent).setToken('A-Very-Fake-Token');
+ const shardIds = [5, 9];
+ const manager = new WebSocketManager({ token: 'A-Very-Fake-Token', intents: 0, rest, shardIds });
+
+ expect(await manager.getShardCount()).toBe(shardIds.at(-1)! + 1);
+ });
+
+ test('with shard id range', async () => {
+ const rest = new REST().setAgent(mockAgent).setToken('A-Very-Fake-Token');
+ const shardIds = { start: 5, end: 9 };
+ const manager = new WebSocketManager({ token: 'A-Very-Fake-Token', intents: 0, rest, shardIds });
+
+ expect(await manager.getShardCount()).toBe(shardIds.end + 1);
+ });
+});
+
+test('update shard count', async () => {
+ const rest = new REST().setAgent(mockAgent).setToken('A-Very-Fake-Token');
+ const manager = new WebSocketManager({ token: 'A-Very-Fake-Token', intents: 0, rest, shardCount: 2 });
+
+ const data: APIGatewayBotInfo = {
+ shards: 1,
+ session_start_limit: {
+ max_concurrency: 3,
+ reset_after: 60,
+ remaining: 3,
+ total: 3,
+ },
+ url: 'wss://gateway.discord.gg',
+ };
+
+ const fetch = vi.fn(() => ({
+ data,
+ statusCode: 200,
+ responseOptions: {
+ headers: {
+ 'content-type': 'application/json',
+ },
+ },
+ }));
+
+ mockPool
+ .intercept({
+ path: '/api/v10/gateway/bot',
+ method: 'GET',
+ })
+ .reply(fetch);
+
+ expect(await manager.getShardCount()).toBe(2);
+ expect(fetch).not.toHaveBeenCalled();
+
+ fetch.mockRestore();
+ mockPool
+ .intercept({
+ path: '/api/v10/gateway/bot',
+ method: 'GET',
+ })
+ .reply(fetch);
+
+ await manager.updateShardCount(3);
+ expect(await manager.getShardCount()).toBe(3);
+ expect(fetch).toHaveBeenCalled();
+});
+
+test('it handles passing in both shardIds and shardCount', async () => {
+ const rest = new REST().setAgent(mockAgent).setToken('A-Very-Fake-Token');
+ const shardIds = { start: 2, end: 3 };
+ const manager = new WebSocketManager({ token: 'A-Very-Fake-Token', intents: 0, rest, shardIds, shardCount: 4 });
+
+ expect(await manager.getShardCount()).toBe(4);
+ expect(await manager.getShardIds()).toStrictEqual([2, 3]);
+});
+
+test('strategies', async () => {
+ class MockStrategy implements IShardingStrategy {
+ public spawn = vi.fn();
+ public connect = vi.fn();
+ public destroy = vi.fn();
+ public send = vi.fn();
+ }
+
+ const rest = new REST().setAgent(mockAgent).setToken('A-Very-Fake-Token');
+ const shardIds = [0, 1, 2];
+ const manager = new WebSocketManager({ token: 'A-Very-Fake-Token', intents: 0, rest, shardIds });
+
+ const strategy = new MockStrategy();
+ manager.setStrategy(strategy);
+
+ await manager.connect();
+ expect(strategy.spawn).toHaveBeenCalledWith(shardIds);
+ expect(strategy.connect).toHaveBeenCalled();
+
+ const destroyOptions = { reason: ':3' };
+ await manager.destroy(destroyOptions);
+ expect(strategy.destroy).toHaveBeenCalledWith(destroyOptions);
+
+ const send: GatewaySendPayload = { op: GatewayOpcodes.RequestGuildMembers, d: { guild_id: '1234', limit: 0 } };
+ await manager.send(0, send);
+ expect(strategy.send).toHaveBeenCalledWith(0, send);
+});
diff --git a/packages/ws/api-extractor.json b/packages/ws/api-extractor.json
new file mode 100644
index 000000000000..3845fd481642
--- /dev/null
+++ b/packages/ws/api-extractor.json
@@ -0,0 +1,376 @@
+/**
+ * Config file for API Extractor. For more info, please visit: https://api-extractor.com
+ */
+{
+ "$schema": "https://developer.microsoft.com/json-schemas/api-extractor/v7/api-extractor.schema.json",
+
+ /**
+ * Optionally specifies another JSON config file that this file extends from. This provides a way for
+ * standard settings to be shared across multiple projects.
+ *
+ * If the path starts with "./" or "../", the path is resolved relative to the folder of the file that contains
+ * the "extends" field. Otherwise, the first path segment is interpreted as an NPM package name, and will be
+ * resolved using NodeJS require().
+ *
+ * SUPPORTED TOKENS: none
+ * DEFAULT VALUE: ""
+ */
+ // "extends": "./shared/api-extractor-base.json"
+ // "extends": "my-package/include/api-extractor-base.json"
+
+ /**
+ * Determines the "" token that can be used with other config file settings. The project folder
+ * typically contains the tsconfig.json and package.json config files, but the path is user-defined.
+ *
+ * The path is resolved relative to the folder of the config file that contains the setting.
+ *
+ * The default value for "projectFolder" is the token "", which means the folder is determined by traversing
+ * parent folders, starting from the folder containing api-extractor.json, and stopping at the first folder
+ * that contains a tsconfig.json file. If a tsconfig.json file cannot be found in this way, then an error
+ * will be reported.
+ *
+ * SUPPORTED TOKENS:
+ * DEFAULT VALUE: ""
+ */
+ // "projectFolder": "..",
+
+ /**
+ * (REQUIRED) Specifies the .d.ts file to be used as the starting point for analysis. API Extractor
+ * analyzes the symbols exported by this module.
+ *
+ * The file extension must be ".d.ts" and not ".ts".
+ *
+ * The path is resolved relative to the folder of the config file that contains the setting; to change this,
+ * prepend a folder token such as "".
+ *
+ * SUPPORTED TOKENS: , ,
+ */
+ "mainEntryPointFilePath": "/dist/index.d.ts",
+
+ /**
+ * A list of NPM package names whose exports should be treated as part of this package.
+ *
+ * For example, suppose that Webpack is used to generate a distributed bundle for the project "library1",
+ * and another NPM package "library2" is embedded in this bundle. Some types from library2 may become part
+ * of the exported API for library1, but by default API Extractor would generate a .d.ts rollup that explicitly
+ * imports library2. To avoid this, we can specify:
+ *
+ * "bundledPackages": [ "library2" ],
+ *
+ * This would direct API Extractor to embed those types directly in the .d.ts rollup, as if they had been
+ * local files for library1.
+ */
+ "bundledPackages": [],
+
+ /**
+ * Determines how the TypeScript compiler engine will be invoked by API Extractor.
+ */
+ "compiler": {
+ /**
+ * Specifies the path to the tsconfig.json file to be used by API Extractor when analyzing the project.
+ *
+ * The path is resolved relative to the folder of the config file that contains the setting; to change this,
+ * prepend a folder token such as "".
+ *
+ * Note: This setting will be ignored if "overrideTsconfig" is used.
+ *
+ * SUPPORTED TOKENS: , ,
+ * DEFAULT VALUE: "/tsconfig.json"
+ */
+ // "tsconfigFilePath": "/tsconfig.json",
+ /**
+ * Provides a compiler configuration that will be used instead of reading the tsconfig.json file from disk.
+ * The object must conform to the TypeScript tsconfig schema:
+ *
+ * http://json.schemastore.org/tsconfig
+ *
+ * If omitted, then the tsconfig.json file will be read from the "projectFolder".
+ *
+ * DEFAULT VALUE: no overrideTsconfig section
+ */
+ // "overrideTsconfig": {
+ // . . .
+ // }
+ /**
+ * This option causes the compiler to be invoked with the --skipLibCheck option. This option is not recommended
+ * and may cause API Extractor to produce incomplete or incorrect declarations, but it may be required when
+ * dependencies contain declarations that are incompatible with the TypeScript engine that API Extractor uses
+ * for its analysis. Where possible, the underlying issue should be fixed rather than relying on skipLibCheck.
+ *
+ * DEFAULT VALUE: false
+ */
+ // "skipLibCheck": true,
+ },
+
+ /**
+ * Configures how the API report file (*.api.md) will be generated.
+ */
+ "apiReport": {
+ /**
+ * (REQUIRED) Whether to generate an API report.
+ */
+ "enabled": false
+
+ /**
+ * The filename for the API report files. It will be combined with "reportFolder" or "reportTempFolder" to produce
+ * a full file path.
+ *
+ * The file extension should be ".api.md", and the string should not contain a path separator such as "\" or "/".
+ *
+ * SUPPORTED TOKENS: ,
+ * DEFAULT VALUE: ".api.md"
+ */
+ // "reportFileName": ".api.md",
+
+ /**
+ * Specifies the folder where the API report file is written. The file name portion is determined by
+ * the "reportFileName" setting.
+ *
+ * The API report file is normally tracked by Git. Changes to it can be used to trigger a branch policy,
+ * e.g. for an API review.
+ *
+ * The path is resolved relative to the folder of the config file that contains the setting; to change this,
+ * prepend a folder token such as "".
+ *
+ * SUPPORTED TOKENS: , ,
+ * DEFAULT VALUE: "/temp/"
+ */
+ // "reportFolder": "/temp/",
+
+ /**
+ * Specifies the folder where the temporary report file is written. The file name portion is determined by
+ * the "reportFileName" setting.
+ *
+ * After the temporary file is written to disk, it is compared with the file in the "reportFolder".
+ * If they are different, a production build will fail.
+ *
+ * The path is resolved relative to the folder of the config file that contains the setting; to change this,
+ * prepend a folder token such as "".
+ *
+ * SUPPORTED TOKENS: , ,
+ * DEFAULT VALUE: "/temp/"
+ */
+ // "reportTempFolder": "/temp/"
+ },
+
+ /**
+ * Configures how the doc model file (*.api.json) will be generated.
+ */
+ "docModel": {
+ /**
+ * (REQUIRED) Whether to generate a doc model file.
+ */
+ "enabled": true,
+
+ /**
+ * The output path for the doc model file. The file extension should be ".api.json".
+ *
+ * The path is resolved relative to the folder of the config file that contains the setting; to change this,
+ * prepend a folder token such as "".
+ *
+ * SUPPORTED TOKENS: , ,
+ * DEFAULT VALUE: "/temp/.api.json"
+ */
+ "apiJsonFilePath": "/docs/docs.api.json"
+ },
+
+ /**
+ * Configures how the .d.ts rollup file will be generated.
+ */
+ "dtsRollup": {
+ /**
+ * (REQUIRED) Whether to generate the .d.ts rollup file.
+ */
+ "enabled": false
+
+ /**
+ * Specifies the output path for a .d.ts rollup file to be generated without any trimming.
+ * This file will include all declarations that are exported by the main entry point.
+ *
+ * If the path is an empty string, then this file will not be written.
+ *
+ * The path is resolved relative to the folder of the config file that contains the setting; to change this,
+ * prepend a folder token such as "".
+ *
+ * SUPPORTED TOKENS: , ,
+ * DEFAULT VALUE: "/dist/.d.ts"
+ */
+ // "untrimmedFilePath": "/dist/.d.ts",
+
+ /**
+ * Specifies the output path for a .d.ts rollup file to be generated with trimming for an "alpha" release.
+ * This file will include only declarations that are marked as "@public", "@beta", or "@alpha".
+ *
+ * The path is resolved relative to the folder of the config file that contains the setting; to change this,
+ * prepend a folder token such as "".
+ *
+ * SUPPORTED TOKENS: , ,
+ * DEFAULT VALUE: ""
+ */
+ // "alphaTrimmedFilePath": "/dist/-alpha.d.ts",
+
+ /**
+ * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "beta" release.
+ * This file will include only declarations that are marked as "@public" or "@beta".
+ *
+ * The path is resolved relative to the folder of the config file that contains the setting; to change this,
+ * prepend a folder token such as "".
+ *
+ * SUPPORTED TOKENS: , ,
+ * DEFAULT VALUE: ""
+ */
+ // "betaTrimmedFilePath": "/dist/-beta.d.ts",
+
+ /**
+ * Specifies the output path for a .d.ts rollup file to be generated with trimming for a "public" release.
+ * This file will include only declarations that are marked as "@public".
+ *
+ * If the path is an empty string, then this file will not be written.
+ *
+ * The path is resolved relative to the folder of the config file that contains the setting; to change this,
+ * prepend a folder token such as "".
+ *
+ * SUPPORTED TOKENS: , ,
+ * DEFAULT VALUE: ""
+ */
+ // "publicTrimmedFilePath": "/dist/-public.d.ts",
+
+ /**
+ * When a declaration is trimmed, by default it will be replaced by a code comment such as
+ * "Excluded from this release type: exampleMember". Set "omitTrimmingComments" to true to remove the
+ * declaration completely.
+ *
+ * DEFAULT VALUE: false
+ */
+ // "omitTrimmingComments": true
+ },
+
+ /**
+ * Configures how the tsdoc-metadata.json file will be generated.
+ */
+ "tsdocMetadata": {
+ /**
+ * Whether to generate the tsdoc-metadata.json file.
+ *
+ * DEFAULT VALUE: true
+ */
+ // "enabled": true,
+ /**
+ * Specifies where the TSDoc metadata file should be written.
+ *
+ * The path is resolved relative to the folder of the config file that contains the setting; to change this,
+ * prepend a folder token such as "".
+ *
+ * The default value is "", which causes the path to be automatically inferred from the "tsdocMetadata",
+ * "typings" or "main" fields of the project's package.json. If none of these fields are set, the lookup
+ * falls back to "tsdoc-metadata.json" in the package folder.
+ *
+ * SUPPORTED TOKENS: , ,
+ * DEFAULT VALUE: ""
+ */
+ // "tsdocMetadataFilePath": "/dist/tsdoc-metadata.json"
+ },
+
+ /**
+ * Specifies what type of newlines API Extractor should use when writing output files. By default, the output files
+ * will be written with Windows-style newlines. To use POSIX-style newlines, specify "lf" instead.
+ * To use the OS's default newline kind, specify "os".
+ *
+ * DEFAULT VALUE: "crlf"
+ */
+ "newlineKind": "lf",
+
+ /**
+ * Configures how API Extractor reports error and warning messages produced during analysis.
+ *
+ * There are three sources of messages: compiler messages, API Extractor messages, and TSDoc messages.
+ */
+ "messages": {
+ /**
+ * Configures handling of diagnostic messages reported by the TypeScript compiler engine while analyzing
+ * the input .d.ts files.
+ *
+ * TypeScript message identifiers start with "TS" followed by an integer. For example: "TS2551"
+ *
+ * DEFAULT VALUE: A single "default" entry with logLevel=warning.
+ */
+ "compilerMessageReporting": {
+ /**
+ * Configures the default routing for messages that don't match an explicit rule in this table.
+ */
+ "default": {
+ /**
+ * Specifies whether the message should be written to the the tool's output log. Note that
+ * the "addToApiReportFile" property may supersede this option.
+ *
+ * Possible values: "error", "warning", "none"
+ *
+ * Errors cause the build to fail and return a nonzero exit code. Warnings cause a production build fail
+ * and return a nonzero exit code. For a non-production build (e.g. when "api-extractor run" includes
+ * the "--local" option), the warning is displayed but the build will not fail.
+ *
+ * DEFAULT VALUE: "warning"
+ */
+ "logLevel": "warning"
+
+ /**
+ * When addToApiReportFile is true: If API Extractor is configured to write an API report file (.api.md),
+ * then the message will be written inside that file; otherwise, the message is instead logged according to
+ * the "logLevel" option.
+ *
+ * DEFAULT VALUE: false
+ */
+ // "addToApiReportFile": false
+ }
+
+ // "TS2551": {
+ // "logLevel": "warning",
+ // "addToApiReportFile": true
+ // },
+ //
+ // . . .
+ },
+
+ /**
+ * Configures handling of messages reported by API Extractor during its analysis.
+ *
+ * API Extractor message identifiers start with "ae-". For example: "ae-extra-release-tag"
+ *
+ * DEFAULT VALUE: See api-extractor-defaults.json for the complete table of extractorMessageReporting mappings
+ */
+ "extractorMessageReporting": {
+ "default": {
+ "logLevel": "warning"
+ // "addToApiReportFile": false
+ }
+
+ // "ae-extra-release-tag": {
+ // "logLevel": "warning",
+ // "addToApiReportFile": true
+ // },
+ //
+ // . . .
+ },
+
+ /**
+ * Configures handling of messages reported by the TSDoc parser when analyzing code comments.
+ *
+ * TSDoc message identifiers start with "tsdoc-". For example: "tsdoc-link-tag-unescaped-text"
+ *
+ * DEFAULT VALUE: A single "default" entry with logLevel=warning.
+ */
+ "tsdocMessageReporting": {
+ "default": {
+ "logLevel": "warning"
+ // "addToApiReportFile": false
+ }
+
+ // "tsdoc-link-tag-unescaped-text": {
+ // "logLevel": "warning",
+ // "addToApiReportFile": true
+ // },
+ //
+ // . . .
+ }
+ }
+}
diff --git a/packages/ws/build.config.ts b/packages/ws/build.config.ts
new file mode 100644
index 000000000000..e3de92140fb4
--- /dev/null
+++ b/packages/ws/build.config.ts
@@ -0,0 +1,9 @@
+import { createUnbuildConfig } from '../../build.config';
+
+export default createUnbuildConfig({
+ entries: [
+ { builder: 'rollup', input: 'src/index' },
+ { builder: 'rollup', input: 'src/strategies/sharding/worker' },
+ ],
+ externals: ['zlib-sync'],
+});
diff --git a/packages/ws/cliff.toml b/packages/ws/cliff.toml
new file mode 100644
index 000000000000..2145cb0e5862
--- /dev/null
+++ b/packages/ws/cliff.toml
@@ -0,0 +1,63 @@
+[changelog]
+header = """
+# Changelog
+
+All notable changes to this project will be documented in this file.\n
+"""
+body = """
+{% if version %}\
+ # [{{ version | trim_start_matches(pat="v") }}]\
+ {% if previous %}\
+ {% if previous.version %}\
+ (https://github.com/discordjs/discord.js/compare/{{ previous.version }}...{{ version }})\
+ {% else %}\
+ (https://github.com/discordjs/discord.js/tree/{{ version }})\
+ {% endif %}\
+ {% endif %} \
+ - ({{ timestamp | date(format="%Y-%m-%d") }})
+{% else %}\
+ # [unreleased]
+{% endif %}\
+{% for group, commits in commits | group_by(attribute="group") %}
+ ## {{ group | upper_first }}
+ {% for commit in commits %}
+ - {% if commit.scope %}\
+ **{{commit.scope}}:** \
+ {% endif %}\
+ {{ commit.message | upper_first }} ([{{ commit.id | truncate(length=7, end="") }}](https://github.com/discordjs/discord.js/commit/{{ commit.id }}))\
+ {% if commit.breaking %}\
+ {% for breakingChange in commit.footers %}\
+ \n{% raw %} {% endraw %}- **{{ breakingChange.token }}{{ breakingChange.separator }}** {{ breakingChange.value }}\
+ {% endfor %}\
+ {% endif %}\
+ {% endfor %}
+{% endfor %}\n
+"""
+trim = true
+footer = ""
+
+[git]
+conventional_commits = true
+filter_unconventional = true
+commit_parsers = [
+ { message = "^feat", group = "Features"},
+ { message = "^fix", group = "Bug Fixes"},
+ { message = "^docs", group = "Documentation"},
+ { message = "^perf", group = "Performance"},
+ { message = "^refactor", group = "Refactor"},
+ { message = "^typings", group = "Typings"},
+ { message = "^types", group = "Typings"},
+ { message = ".*deprecated", body = ".*deprecated", group = "Deprecation"},
+ { message = "^revert", skip = true},
+ { message = "^style", group = "Styling"},
+ { message = "^test", group = "Testing"},
+ { message = "^chore", skip = true},
+ { message = "^ci", skip = true},
+ { message = "^build", skip = true},
+ { body = ".*security", group = "Security"},
+]
+filter_commits = true
+tag_pattern = "@discordjs/ws@[0-9]*"
+ignore_tags = ""
+topo_order = false
+sort_commits = "newest"
diff --git a/packages/ws/docs/README.md b/packages/ws/docs/README.md
new file mode 100644
index 000000000000..d67329190bf0
--- /dev/null
+++ b/packages/ws/docs/README.md
@@ -0,0 +1 @@
+## [View the documentation here.](https://discord.js.org/#/docs/ws)
diff --git a/packages/ws/docs/index.json b/packages/ws/docs/index.json
new file mode 100644
index 000000000000..557341ae9dff
--- /dev/null
+++ b/packages/ws/docs/index.json
@@ -0,0 +1 @@
+[{ "name": "General", "files": [{ "name": "Welcome", "id": "welcome", "path": "../../README.md" }] }]
diff --git a/packages/ws/package.json b/packages/ws/package.json
new file mode 100644
index 000000000000..8ac38532fb8a
--- /dev/null
+++ b/packages/ws/package.json
@@ -0,0 +1,88 @@
+{
+ "name": "@discordjs/ws",
+ "version": "0.1.0-dev",
+ "description": "Wrapper around Discord's gateway",
+ "scripts": {
+ "test": "vitest run",
+ "build": "unbuild",
+ "lint": "prettier --check . && eslint src __tests__ --ext mjs,js,ts",
+ "format": "prettier --write . && eslint src __tests__ --ext mjs,js,ts --fix",
+ "docs": "docgen -i src/index.ts -c docs/index.json -o docs/docs.json --typescript && api-extractor run --local",
+ "prepack": "yarn build && yarn lint",
+ "changelog": "git cliff --prepend ./CHANGELOG.md -u -c ./cliff.toml -r ../../ --include-path 'packages/ws/*'",
+ "release": "cliff-jumper"
+ },
+ "main": "./dist/index.cjs",
+ "module": "./dist/index.mjs",
+ "typings": "./dist/index.d.ts",
+ "exports": {
+ "import": "./dist/index.mjs",
+ "require": "./dist/index.cjs",
+ "types": "./dist/index.d.ts"
+ },
+ "directories": {
+ "lib": "src",
+ "test": "__tests__"
+ },
+ "files": [
+ "dist"
+ ],
+ "contributors": [
+ "Crawl ",
+ "Amish Shah ",
+ "SpaceEEC ",
+ "Vlad Frangu ",
+ "Antonio Roman ",
+ "DD "
+ ],
+ "license": "Apache-2.0",
+ "keywords": [
+ "discord",
+ "api",
+ "gateway",
+ "discordapp",
+ "discordjs"
+ ],
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/discordjs/discord.js.git"
+ },
+ "bugs": {
+ "url": "https://github.com/discordjs/discord.js/issues"
+ },
+ "homepage": "https://discord.js.org",
+ "dependencies": {
+ "@discordjs/collection": "workspace:^",
+ "@discordjs/rest": "workspace:^",
+ "@sapphire/async-queue": "^1.3.1",
+ "@vladfrangu/async_event_emitter": "^2.0.1",
+ "discord-api-types": "^0.36.1",
+ "tslib": "^2.4.0",
+ "ws": "^8.8.0"
+ },
+ "devDependencies": {
+ "@discordjs/docgen": "workspace:^",
+ "@discordjs/scripts": "workspace:^",
+ "@favware/cliff-jumper": "^1.8.5",
+ "@microsoft/api-extractor": "^7.28.3",
+ "@types/node": "^18.0.3",
+ "@types/ws": "^8.5.3",
+ "c8": "^7.11.3",
+ "eslint": "^8.19.0",
+ "mock-socket": "^9.1.5",
+ "prettier": "^2.7.1",
+ "rollup-plugin-typescript2": "^0.32.1",
+ "tsup": "^6.1.3",
+ "typescript": "^4.7.4",
+ "unbuild": "^0.7.6",
+ "undici": "^5.8.0",
+ "vitest": "^0.17.0",
+ "zlib-sync": "^0.1.7"
+ },
+ "engines": {
+ "node": ">=16.9.0"
+ },
+ "publishConfig": {
+ "access": "public"
+ }
+}
diff --git a/packages/ws/src/index.ts b/packages/ws/src/index.ts
new file mode 100644
index 000000000000..947236e558b0
--- /dev/null
+++ b/packages/ws/src/index.ts
@@ -0,0 +1,14 @@
+export * from './strategies/context/IContextFetchingStrategy';
+export * from './strategies/context/SimpleContextFetchingStrategy';
+export * from './strategies/context/WorkerContextFetchingStrategy';
+
+export * from './strategies/sharding/IShardingStrategy';
+export * from './strategies/sharding/SimpleShardingStrategy';
+export * from './strategies/sharding/WorkerShardingStrategy';
+
+export * from './utils/constants';
+export * from './utils/IdentifyThrottler';
+export * from './utils/utils';
+
+export * from './ws/WebSocketManager';
+export * from './ws/WebSocketShard';
diff --git a/packages/ws/src/strategies/context/IContextFetchingStrategy.ts b/packages/ws/src/strategies/context/IContextFetchingStrategy.ts
new file mode 100644
index 000000000000..8fc201921b43
--- /dev/null
+++ b/packages/ws/src/strategies/context/IContextFetchingStrategy.ts
@@ -0,0 +1,31 @@
+import type { Awaitable } from '@vladfrangu/async_event_emitter';
+import type { APIGatewayBotInfo } from 'discord-api-types/v10';
+import type { SessionInfo, WebSocketManager, WebSocketManagerOptions } from '../../ws/WebSocketManager';
+
+export interface FetchingStrategyOptions
+ extends Omit<
+ WebSocketManagerOptions,
+ 'retrieveSessionInfo' | 'updateSessionInfo' | 'shardCount' | 'shardIds' | 'rest'
+ > {
+ readonly gatewayInformation: APIGatewayBotInfo;
+ readonly shardCount: number;
+}
+
+/**
+ * Strategies responsible solely for making manager information accessible
+ */
+export interface IContextFetchingStrategy {
+ readonly options: FetchingStrategyOptions;
+ retrieveSessionInfo: (shardId: number) => Awaitable;
+ updateSessionInfo: (shardId: number, sessionInfo: SessionInfo | null) => Awaitable;
+}
+
+export async function managerToFetchingStrategyOptions(manager: WebSocketManager): Promise {
+ const { retrieveSessionInfo, updateSessionInfo, shardCount, shardIds, rest, ...managerOptions } = manager.options;
+
+ return {
+ ...managerOptions,
+ gatewayInformation: await manager.fetchGatewayInformation(),
+ shardCount: await manager.getShardCount(),
+ };
+}
diff --git a/packages/ws/src/strategies/context/SimpleContextFetchingStrategy.ts b/packages/ws/src/strategies/context/SimpleContextFetchingStrategy.ts
new file mode 100644
index 000000000000..642ef6ce1b02
--- /dev/null
+++ b/packages/ws/src/strategies/context/SimpleContextFetchingStrategy.ts
@@ -0,0 +1,14 @@
+import type { FetchingStrategyOptions, IContextFetchingStrategy } from './IContextFetchingStrategy';
+import type { SessionInfo, WebSocketManager } from '../../ws/WebSocketManager';
+
+export class SimpleContextFetchingStrategy implements IContextFetchingStrategy {
+ public constructor(private readonly manager: WebSocketManager, public readonly options: FetchingStrategyOptions) {}
+
+ public async retrieveSessionInfo(shardId: number): Promise {
+ return this.manager.options.retrieveSessionInfo(shardId);
+ }
+
+ public updateSessionInfo(shardId: number, sessionInfo: SessionInfo | null) {
+ return this.manager.options.updateSessionInfo(shardId, sessionInfo);
+ }
+}
diff --git a/packages/ws/src/strategies/context/WorkerContextFetchingStrategy.ts b/packages/ws/src/strategies/context/WorkerContextFetchingStrategy.ts
new file mode 100644
index 000000000000..ed358a151242
--- /dev/null
+++ b/packages/ws/src/strategies/context/WorkerContextFetchingStrategy.ts
@@ -0,0 +1,49 @@
+import { isMainThread, parentPort } from 'node:worker_threads';
+import { Collection } from '@discordjs/collection';
+import type { FetchingStrategyOptions, IContextFetchingStrategy } from './IContextFetchingStrategy';
+import type { SessionInfo } from '../../ws/WebSocketManager';
+import {
+ WorkerRecievePayload,
+ WorkerRecievePayloadOp,
+ WorkerSendPayload,
+ WorkerSendPayloadOp,
+} from '../sharding/WorkerShardingStrategy';
+
+export class WorkerContextFetchingStrategy implements IContextFetchingStrategy {
+ private readonly sessionPromises = new Collection void>();
+
+ public constructor(public readonly options: FetchingStrategyOptions) {
+ if (isMainThread) {
+ throw new Error('Cannot instantiate WorkerContextFetchingStrategy on the main thread');
+ }
+
+ parentPort!.on('message', (payload: WorkerSendPayload) => {
+ if (payload.op === WorkerSendPayloadOp.SessionInfoResponse) {
+ const resolve = this.sessionPromises.get(payload.nonce);
+ resolve?.(payload.session);
+ this.sessionPromises.delete(payload.nonce);
+ }
+ });
+ }
+
+ public async retrieveSessionInfo(shardId: number): Promise {
+ const nonce = Math.random();
+ const payload: WorkerRecievePayload = {
+ op: WorkerRecievePayloadOp.RetrieveSessionInfo,
+ shardId,
+ nonce,
+ };
+ const promise = new Promise((resolve) => this.sessionPromises.set(nonce, resolve));
+ parentPort!.postMessage(payload);
+ return promise;
+ }
+
+ public updateSessionInfo(shardId: number, sessionInfo: SessionInfo | null) {
+ const payload: WorkerRecievePayload = {
+ op: WorkerRecievePayloadOp.UpdateSessionInfo,
+ shardId,
+ session: sessionInfo,
+ };
+ parentPort!.postMessage(payload);
+ }
+}
diff --git a/packages/ws/src/strategies/sharding/IShardingStrategy.ts b/packages/ws/src/strategies/sharding/IShardingStrategy.ts
new file mode 100644
index 000000000000..7fcf2667295c
--- /dev/null
+++ b/packages/ws/src/strategies/sharding/IShardingStrategy.ts
@@ -0,0 +1,25 @@
+import type { GatewaySendPayload } from 'discord-api-types/v10';
+import type { Awaitable } from '../../utils/utils';
+import type { WebSocketShardDestroyOptions } from '../../ws/WebSocketShard';
+
+/**
+ * Strategies responsible for spawning, initializing connections, destroying shards, and relaying events
+ */
+export interface IShardingStrategy {
+ /**
+ * Spawns all the shards
+ */
+ spawn: (shardIds: number[]) => Awaitable;
+ /**
+ * Initializes all the shards
+ */
+ connect: () => Awaitable;
+ /**
+ * Destroys all the shards
+ */
+ destroy: (options?: Omit) => Awaitable;
+ /**
+ * Sends a payload to a shard
+ */
+ send: (shardId: number, payload: GatewaySendPayload) => Awaitable;
+}
diff --git a/packages/ws/src/strategies/sharding/SimpleShardingStrategy.ts b/packages/ws/src/strategies/sharding/SimpleShardingStrategy.ts
new file mode 100644
index 000000000000..1bffc43038b2
--- /dev/null
+++ b/packages/ws/src/strategies/sharding/SimpleShardingStrategy.ts
@@ -0,0 +1,64 @@
+import { Collection } from '@discordjs/collection';
+import type { GatewaySendPayload } from 'discord-api-types/v10';
+import type { IShardingStrategy } from './IShardingStrategy';
+import { IdentifyThrottler } from '../../utils/IdentifyThrottler';
+import type { WebSocketManager } from '../../ws/WebSocketManager';
+import { WebSocketShard, WebSocketShardDestroyOptions, WebSocketShardEvents } from '../../ws/WebSocketShard';
+import { managerToFetchingStrategyOptions } from '../context/IContextFetchingStrategy';
+import { SimpleContextFetchingStrategy } from '../context/SimpleContextFetchingStrategy';
+
+/**
+ * Simple strategy that just spawns shards in the current process
+ */
+export class SimpleShardingStrategy implements IShardingStrategy {
+ private readonly manager: WebSocketManager;
+ private readonly shards = new Collection();
+
+ private readonly throttler: IdentifyThrottler;
+
+ public constructor(manager: WebSocketManager) {
+ this.manager = manager;
+ this.throttler = new IdentifyThrottler(manager);
+ }
+
+ public async spawn(shardIds: number[]) {
+ const strategyOptions = await managerToFetchingStrategyOptions(this.manager);
+ for (const shardId of shardIds) {
+ const strategy = new SimpleContextFetchingStrategy(this.manager, strategyOptions);
+ const shard = new WebSocketShard(strategy, shardId);
+ for (const event of Object.values(WebSocketShardEvents)) {
+ // @ts-expect-error
+ shard.on(event, (payload) => this.manager.emit(event, { ...payload, shardId }));
+ }
+ this.shards.set(shardId, shard);
+ }
+ }
+
+ public async connect() {
+ const promises = [];
+
+ for (const shard of this.shards.values()) {
+ await this.throttler.waitForIdentify();
+ promises.push(shard.connect());
+ }
+
+ await Promise.all(promises);
+ }
+
+ public async destroy(options?: Omit) {
+ const promises = [];
+
+ for (const shard of this.shards.values()) {
+ promises.push(shard.destroy(options));
+ }
+
+ await Promise.all(promises);
+ this.shards.clear();
+ }
+
+ public send(shardId: number, payload: GatewaySendPayload) {
+ const shard = this.shards.get(shardId);
+ if (!shard) throw new Error(`Shard ${shardId} not found`);
+ return shard.send(payload);
+ }
+}
diff --git a/packages/ws/src/strategies/sharding/WorkerShardingStrategy.ts b/packages/ws/src/strategies/sharding/WorkerShardingStrategy.ts
new file mode 100644
index 000000000000..5add1955cb9a
--- /dev/null
+++ b/packages/ws/src/strategies/sharding/WorkerShardingStrategy.ts
@@ -0,0 +1,203 @@
+import { once } from 'node:events';
+import { join } from 'node:path';
+import { Worker } from 'node:worker_threads';
+import { Collection } from '@discordjs/collection';
+import type { GatewaySendPayload } from 'discord-api-types/v10';
+import type { IShardingStrategy } from './IShardingStrategy';
+import { IdentifyThrottler } from '../../utils/IdentifyThrottler';
+import type { SessionInfo, WebSocketManager } from '../../ws/WebSocketManager';
+import type { WebSocketShardDestroyOptions, WebSocketShardEvents } from '../../ws/WebSocketShard';
+import { FetchingStrategyOptions, managerToFetchingStrategyOptions } from '../context/IContextFetchingStrategy';
+
+export interface WorkerData extends FetchingStrategyOptions {
+ shardIds: number[];
+}
+
+export enum WorkerSendPayloadOp {
+ Connect,
+ Destroy,
+ Send,
+ SessionInfoResponse,
+}
+
+export type WorkerSendPayload =
+ | { op: WorkerSendPayloadOp.Connect; shardId: number }
+ | { op: WorkerSendPayloadOp.Destroy; shardId: number; options?: WebSocketShardDestroyOptions }
+ | { op: WorkerSendPayloadOp.Send; shardId: number; payload: GatewaySendPayload }
+ | { op: WorkerSendPayloadOp.SessionInfoResponse; nonce: number; session: SessionInfo | null };
+
+export enum WorkerRecievePayloadOp {
+ Connected,
+ Destroyed,
+ Event,
+ RetrieveSessionInfo,
+ UpdateSessionInfo,
+}
+
+export type WorkerRecievePayload =
+ | { op: WorkerRecievePayloadOp.Connected; shardId: number }
+ | { op: WorkerRecievePayloadOp.Destroyed; shardId: number }
+ // Can't seem to get a type-safe union based off of the event, so I'm sadly leaving data as any for now
+ | { op: WorkerRecievePayloadOp.Event; shardId: number; event: WebSocketShardEvents; data: any }
+ | { op: WorkerRecievePayloadOp.RetrieveSessionInfo; shardId: number; nonce: number }
+ | { op: WorkerRecievePayloadOp.UpdateSessionInfo; shardId: number; session: SessionInfo | null };
+
+/**
+ * Options for a {@link WorkerShardingStrategy}
+ */
+export interface WorkerShardingStrategyOptions {
+ /**
+ * Dictates how many shards should be spawned per worker thread.
+ */
+ shardsPerWorker: number | 'all';
+}
+
+/**
+ * Strategy used to spawn threads in worker_threads
+ */
+export class WorkerShardingStrategy implements IShardingStrategy {
+ private readonly manager: WebSocketManager;
+ private readonly options: WorkerShardingStrategyOptions;
+
+ #workers: Worker[] = [];
+ readonly #workerByShardId = new Collection();
+
+ private readonly connectPromises = new Collection void>();
+ private readonly destroyPromises = new Collection void>();
+
+ private readonly throttler: IdentifyThrottler;
+
+ public constructor(manager: WebSocketManager, options: WorkerShardingStrategyOptions) {
+ this.manager = manager;
+ this.throttler = new IdentifyThrottler(manager);
+ this.options = options;
+ }
+
+ public async spawn(shardIds: number[]) {
+ const shardsPerWorker = this.options.shardsPerWorker === 'all' ? shardIds.length : this.options.shardsPerWorker;
+ const strategyOptions = await managerToFetchingStrategyOptions(this.manager);
+
+ let shards = 0;
+ while (shards !== shardIds.length) {
+ const slice = shardIds.slice(shards, shardsPerWorker + shards);
+ const workerData: WorkerData = {
+ ...strategyOptions,
+ shardIds: slice,
+ };
+
+ const worker = new Worker(join(__dirname, 'worker.cjs'), { workerData });
+ await once(worker, 'online');
+ worker
+ .on('error', (err) => {
+ throw err;
+ })
+ .on('messageerror', (err) => {
+ throw err;
+ })
+ // eslint-disable-next-line @typescript-eslint/no-misused-promises
+ .on('message', (payload: WorkerRecievePayload) => this.onMessage(worker, payload));
+
+ this.#workers.push(worker);
+ for (const shardId of slice) {
+ this.#workerByShardId.set(shardId, worker);
+ }
+
+ shards += slice.length;
+ }
+ }
+
+ public async connect() {
+ const promises = [];
+
+ for (const [shardId, worker] of this.#workerByShardId.entries()) {
+ await this.throttler.waitForIdentify();
+
+ const payload: WorkerSendPayload = {
+ op: WorkerSendPayloadOp.Connect,
+ shardId,
+ };
+
+ const promise = new Promise((resolve) => this.connectPromises.set(shardId, resolve));
+ worker.postMessage(payload);
+ promises.push(promise);
+ }
+
+ await Promise.all(promises);
+ }
+
+ public async destroy(options: Omit = {}) {
+ const promises = [];
+
+ for (const [shardId, worker] of this.#workerByShardId.entries()) {
+ const payload: WorkerSendPayload = {
+ op: WorkerSendPayloadOp.Destroy,
+ shardId,
+ options,
+ };
+
+ promises.push(
+ new Promise((resolve) => this.destroyPromises.set(shardId, resolve)).then(() => worker.terminate()),
+ );
+ worker.postMessage(payload);
+ }
+
+ this.#workers = [];
+ this.#workerByShardId.clear();
+
+ await Promise.all(promises);
+ }
+
+ public send(shardId: number, data: GatewaySendPayload) {
+ const worker = this.#workerByShardId.get(shardId);
+ if (!worker) {
+ throw new Error(`No worker found for shard ${shardId}`);
+ }
+
+ const payload: WorkerSendPayload = {
+ op: WorkerSendPayloadOp.Send,
+ shardId,
+ payload: data,
+ };
+ worker.postMessage(payload);
+ }
+
+ private async onMessage(worker: Worker, payload: WorkerRecievePayload) {
+ switch (payload.op) {
+ case WorkerRecievePayloadOp.Connected: {
+ const resolve = this.connectPromises.get(payload.shardId)!;
+ resolve();
+ this.connectPromises.delete(payload.shardId);
+ break;
+ }
+
+ case WorkerRecievePayloadOp.Destroyed: {
+ const resolve = this.destroyPromises.get(payload.shardId)!;
+ resolve();
+ this.destroyPromises.delete(payload.shardId);
+ break;
+ }
+
+ case WorkerRecievePayloadOp.Event: {
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
+ this.manager.emit(payload.event, { ...payload.data, shardId: payload.shardId });
+ break;
+ }
+
+ case WorkerRecievePayloadOp.RetrieveSessionInfo: {
+ const session = await this.manager.options.retrieveSessionInfo(payload.shardId);
+ const response: WorkerSendPayload = {
+ op: WorkerSendPayloadOp.SessionInfoResponse,
+ nonce: payload.nonce,
+ session,
+ };
+ worker.postMessage(response);
+ break;
+ }
+
+ case WorkerRecievePayloadOp.UpdateSessionInfo: {
+ await this.manager.options.updateSessionInfo(payload.shardId, payload.session);
+ break;
+ }
+ }
+ }
+}
diff --git a/packages/ws/src/strategies/sharding/worker.ts b/packages/ws/src/strategies/sharding/worker.ts
new file mode 100644
index 000000000000..8a4c0bce3cd0
--- /dev/null
+++ b/packages/ws/src/strategies/sharding/worker.ts
@@ -0,0 +1,93 @@
+import { isMainThread, workerData, parentPort } from 'node:worker_threads';
+import { Collection } from '@discordjs/collection';
+import {
+ WorkerData,
+ WorkerRecievePayload,
+ WorkerRecievePayloadOp,
+ WorkerSendPayload,
+ WorkerSendPayloadOp,
+} from './WorkerShardingStrategy';
+import { WebSocketShard, WebSocketShardDestroyOptions, WebSocketShardEvents } from '../../ws/WebSocketShard';
+import { WorkerContextFetchingStrategy } from '../context/WorkerContextFetchingStrategy';
+
+if (isMainThread) {
+ throw new Error('Expected worker script to not be ran within the main thread');
+}
+
+const data = workerData as WorkerData;
+const shards = new Collection();
+
+async function connect(shardId: number) {
+ const shard = shards.get(shardId);
+ if (!shard) {
+ throw new Error(`Shard ${shardId} does not exist`);
+ }
+ await shard.connect();
+}
+
+async function destroy(shardId: number, options?: WebSocketShardDestroyOptions) {
+ const shard = shards.get(shardId);
+ if (!shard) {
+ throw new Error(`Shard ${shardId} does not exist`);
+ }
+ await shard.destroy(options);
+}
+
+for (const shardId of data.shardIds) {
+ const shard = new WebSocketShard(new WorkerContextFetchingStrategy(data), shardId);
+ for (const event of Object.values(WebSocketShardEvents)) {
+ // @ts-expect-error
+ shard.on(event, (data) => {
+ const payload: WorkerRecievePayload = {
+ op: WorkerRecievePayloadOp.Event,
+ event,
+ data,
+ shardId,
+ };
+ parentPort!.postMessage(payload);
+ });
+ }
+ shards.set(shardId, shard);
+}
+
+parentPort!
+ .on('messageerror', (err) => {
+ throw err;
+ })
+ // eslint-disable-next-line @typescript-eslint/no-misused-promises
+ .on('message', async (payload: WorkerSendPayload) => {
+ switch (payload.op) {
+ case WorkerSendPayloadOp.Connect: {
+ await connect(payload.shardId);
+ const response: WorkerRecievePayload = {
+ op: WorkerRecievePayloadOp.Connected,
+ shardId: payload.shardId,
+ };
+ parentPort!.postMessage(response);
+ break;
+ }
+
+ case WorkerSendPayloadOp.Destroy: {
+ await destroy(payload.shardId, payload.options);
+ const response: WorkerRecievePayload = {
+ op: WorkerRecievePayloadOp.Destroyed,
+ shardId: payload.shardId,
+ };
+ parentPort!.postMessage(response);
+ break;
+ }
+
+ case WorkerSendPayloadOp.Send: {
+ const shard = shards.get(payload.shardId);
+ if (!shard) {
+ throw new Error(`Shard ${payload.shardId} does not exist`);
+ }
+ await shard.send(payload.payload);
+ break;
+ }
+
+ case WorkerSendPayloadOp.SessionInfoResponse: {
+ break;
+ }
+ }
+ });
diff --git a/packages/ws/src/utils/IdentifyThrottler.ts b/packages/ws/src/utils/IdentifyThrottler.ts
new file mode 100644
index 000000000000..22a51e9368b1
--- /dev/null
+++ b/packages/ws/src/utils/IdentifyThrottler.ts
@@ -0,0 +1,29 @@
+import { setTimeout as sleep } from 'node:timers/promises';
+import type { WebSocketManager } from '../ws/WebSocketManager';
+
+export class IdentifyThrottler {
+ private identifyState = {
+ remaining: 0,
+ resetsAt: Infinity,
+ };
+
+ public constructor(private readonly manager: WebSocketManager) {}
+
+ public async waitForIdentify(): Promise {
+ if (this.identifyState.remaining <= 0) {
+ const diff = this.identifyState.resetsAt - Date.now();
+ if (diff <= 5_000) {
+ const time = diff + Math.random() * 1_500;
+ await sleep(time);
+ }
+
+ const info = await this.manager.fetchGatewayInformation();
+ this.identifyState = {
+ remaining: info.session_start_limit.max_concurrency,
+ resetsAt: Date.now() + 5_000,
+ };
+ }
+
+ this.identifyState.remaining--;
+ }
+}
diff --git a/packages/ws/src/utils/constants.ts b/packages/ws/src/utils/constants.ts
new file mode 100644
index 000000000000..1b9919a11fc6
--- /dev/null
+++ b/packages/ws/src/utils/constants.ts
@@ -0,0 +1,68 @@
+import { readFileSync } from 'node:fs';
+import { join } from 'node:path';
+import { Collection } from '@discordjs/collection';
+import { APIVersion, GatewayOpcodes } from 'discord-api-types/v10';
+import { lazy } from './utils';
+import type { OptionalWebSocketManagerOptions, SessionInfo } from '../ws/WebSocketManager';
+
+/**
+ * Valid encoding types
+ */
+export enum Encoding {
+ JSON = 'json',
+}
+
+/**
+ * Valid compression methods
+ */
+export enum CompressionMethod {
+ ZlibStream = 'zlib-stream',
+}
+
+const packageJson = readFileSync(join(__dirname, '..', '..', 'package.json'), 'utf8');
+// eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
+const Package = JSON.parse(packageJson);
+
+// eslint-disable-next-line @typescript-eslint/restrict-template-expressions, @typescript-eslint/no-unsafe-member-access
+export const DefaultDeviceProperty = `@discordjs/ws ${Package.version}`;
+
+const getDefaultSessionStore = lazy(() => new Collection());
+
+/**
+ * Default options used by the manager
+ */
+export const DefaultWebSocketManagerOptions: OptionalWebSocketManagerOptions = {
+ shardCount: null,
+ shardIds: null,
+ largeThreshold: null,
+ initialPresence: null,
+ identifyProperties: {
+ browser: DefaultDeviceProperty,
+ device: DefaultDeviceProperty,
+ os: process.platform,
+ },
+ version: APIVersion,
+ encoding: Encoding.JSON,
+ compression: null,
+ retrieveSessionInfo(shardId) {
+ const store = getDefaultSessionStore();
+ return store.get(shardId) ?? null;
+ },
+ updateSessionInfo(shardId: number, info: SessionInfo | null) {
+ const store = getDefaultSessionStore();
+ if (info) {
+ store.set(shardId, info);
+ } else {
+ store.delete(shardId);
+ }
+ },
+ handshakeTimeout: 30_000,
+ helloTimeout: 60_000,
+ readyTimeout: 15_000,
+};
+
+export const ImportantGatewayOpcodes = new Set([
+ GatewayOpcodes.Heartbeat,
+ GatewayOpcodes.Identify,
+ GatewayOpcodes.Resume,
+]);
diff --git a/packages/ws/src/utils/utils.ts b/packages/ws/src/utils/utils.ts
new file mode 100644
index 000000000000..70c845d98df2
--- /dev/null
+++ b/packages/ws/src/utils/utils.ts
@@ -0,0 +1,20 @@
+import type { ShardRange } from '../ws/WebSocketManager';
+
+export type Awaitable = T | Promise;
+
+/**
+ * Yields the numbers in the given range as an array
+ * @example
+ * range({ start: 3, end: 5 }); // [3, 4, 5]
+ */
+export function range({ start, end }: ShardRange): number[] {
+ return Array.from({ length: end - start + 1 }, (_, i) => i + start);
+}
+
+/**
+ * Lazily evaluate a callback, storing its result
+ */
+export function lazy(cb: () => T): () => T {
+ let defaultValue: T;
+ return () => (defaultValue ??= cb());
+}
diff --git a/packages/ws/src/ws/WebSocketManager.ts b/packages/ws/src/ws/WebSocketManager.ts
new file mode 100644
index 000000000000..c381985b8118
--- /dev/null
+++ b/packages/ws/src/ws/WebSocketManager.ts
@@ -0,0 +1,274 @@
+import type { REST } from '@discordjs/rest';
+import { AsyncEventEmitter } from '@vladfrangu/async_event_emitter';
+import {
+ APIGatewayBotInfo,
+ GatewayIdentifyProperties,
+ GatewayPresenceUpdateData,
+ RESTGetAPIGatewayBotResult,
+ GatewayIntentBits,
+ Routes,
+ GatewaySendPayload,
+} from 'discord-api-types/v10';
+import type { WebSocketShardDestroyOptions, WebSocketShardEventsMap } from './WebSocketShard';
+import type { IShardingStrategy } from '../strategies/sharding/IShardingStrategy';
+import { SimpleShardingStrategy } from '../strategies/sharding/SimpleShardingStrategy';
+import { CompressionMethod, DefaultWebSocketManagerOptions, Encoding } from '../utils/constants';
+import { Awaitable, range } from '../utils/utils';
+
+/**
+ * Represents a range of shard ids
+ */
+export interface ShardRange {
+ start: number;
+ end: number;
+}
+
+/**
+ * Session information for a given shard, used to resume a session
+ */
+export interface SessionInfo {
+ /**
+ * Session id for this shard
+ */
+ sessionId: string;
+ /**
+ * The sequence number of the last message sent by the shard
+ */
+ sequence: number;
+ /**
+ * The id of the shard
+ */
+ shardId: number;
+ /**
+ * The total number of shards at the time of this shard identifying
+ */
+ shardCount: number;
+}
+
+/**
+ * Required options for the WebSocketManager
+ */
+export interface RequiredWebSocketManagerOptions {
+ /**
+ * The token to use for identifying with the gateway
+ */
+ token: string;
+ /**
+ * The intents to request
+ */
+ intents: GatewayIntentBits;
+ /**
+ * The REST instance to use for fetching gateway information
+ */
+ rest: REST;
+}
+
+/**
+ * Optional additional configuration for the WebSocketManager
+ */
+export interface OptionalWebSocketManagerOptions {
+ /**
+ * The total number of shards across all WebsocketManagers you intend to instantiate.
+ * Use `null` to use Discord's recommended shard count
+ */
+ shardCount: number | null;
+ /**
+ * The ids of the shards this WebSocketManager should manage.
+ * Use `null` to simply spawn 0 through `shardCount - 1`
+ * @example
+ * const manager = new WebSocketManager({
+ * shardIds: [1, 3, 7], // spawns shard 1, 3, and 7, nothing else
+ * });
+ * @example
+ * const manager = new WebSocketManager({
+ * shardIds: {
+ * start: 3,
+ * end: 6,
+ * }, // spawns shards 3, 4, 5, and 6
+ * });
+ */
+ shardIds: number[] | ShardRange | null;
+ /**
+ * Value between 50 and 250, total number of members where the gateway will stop sending offline members in the guild member list
+ */
+ largeThreshold: number | null;
+ /**
+ * Initial presence data to send to the gateway when identifying
+ */
+ initialPresence: GatewayPresenceUpdateData | null;
+ /**
+ * Properties to send to the gateway when identifying
+ */
+ identifyProperties: GatewayIdentifyProperties;
+ /**
+ * The gateway version to use
+ * @default '10'
+ */
+ version: string;
+ /**
+ * The encoding to use
+ * @default 'json'
+ */
+ encoding: Encoding;
+ /**
+ * The compression method to use
+ * @default null (no compression)
+ */
+ compression: CompressionMethod | null;
+ /**
+ * Function used to retrieve session information (and attempt to resume) for a given shard
+ * @example
+ * const manager = new WebSocketManager({
+ * async retrieveSessionInfo(shardId): Awaitable {
+ * // Fetch this info from redis or similar
+ * return { sessionId: string, sequence: number };
+ * // Return null if no information is found
+ * },
+ * });
+ */
+ retrieveSessionInfo: (shardId: number) => Awaitable;
+ /**
+ * Function used to store session information for a given shard
+ */
+ updateSessionInfo: (shardId: number, sessionInfo: SessionInfo | null) => Awaitable;
+ /**
+ * How long to wait for a shard to connect before giving up
+ */
+ handshakeTimeout: number | null;
+ /**
+ * How long to wait for a shard's HELLO packet before giving up
+ */
+ helloTimeout: number | null;
+ /**
+ * How long to wait for a shard's READY packet before giving up
+ */
+ readyTimeout: number | null;
+}
+
+export type WebSocketManagerOptions = RequiredWebSocketManagerOptions & OptionalWebSocketManagerOptions;
+
+export type ManagerShardEventsMap = {
+ [K in keyof WebSocketShardEventsMap]: [
+ WebSocketShardEventsMap[K] extends [] ? { shardId: number } : WebSocketShardEventsMap[K][0] & { shardId: number },
+ ];
+};
+
+export class WebSocketManager extends AsyncEventEmitter {
+ /**
+ * The options being used by this manager
+ */
+ public readonly options: WebSocketManagerOptions;
+
+ /**
+ * Internal cache for a GET /gateway/bot result
+ */
+ private gatewayInformation: {
+ data: APIGatewayBotInfo;
+ expiresAt: number;
+ } | null = null;
+
+ /**
+ * Internal cache for the shard ids
+ */
+ private shardIds: number[] | null = null;
+
+ /**
+ * Strategy used to manage shards
+ * @default SimpleManagerToShardStrategy
+ */
+ private strategy: IShardingStrategy = new SimpleShardingStrategy(this);
+
+ public constructor(options: RequiredWebSocketManagerOptions & Partial) {
+ super();
+ this.options = { ...DefaultWebSocketManagerOptions, ...options };
+ }
+
+ public setStrategy(strategy: IShardingStrategy) {
+ this.strategy = strategy;
+ return this;
+ }
+
+ /**
+ * Fetches the gateway information from Discord - or returns it from cache if available
+ * @param force Whether to ignore the cache and force a fresh fetch
+ */
+ public async fetchGatewayInformation(force = false) {
+ if (this.gatewayInformation) {
+ if (this.gatewayInformation.expiresAt <= Date.now()) {
+ this.gatewayInformation = null;
+ } else if (!force) {
+ return this.gatewayInformation.data;
+ }
+ }
+
+ const data = (await this.options.rest.get(Routes.gatewayBot())) as RESTGetAPIGatewayBotResult;
+
+ this.gatewayInformation = { data, expiresAt: Date.now() + data.session_start_limit.reset_after };
+ return this.gatewayInformation.data;
+ }
+
+ /**
+ * Updates your total shard count on-the-fly, spawning shards as needed
+ * @param shardCount The new shard count to use
+ */
+ public async updateShardCount(shardCount: number | null) {
+ await this.strategy.destroy({ reason: 'User is adjusting their shards' });
+ this.options.shardCount = shardCount;
+
+ const shardIds = await this.getShardIds(true);
+ await this.strategy.spawn(shardIds);
+
+ return this;
+ }
+
+ /**
+ * Yields the total number of shards across for your bot, accounting for Discord recommendations
+ */
+ public async getShardCount(): Promise {
+ if (this.options.shardCount) {
+ return this.options.shardCount;
+ }
+
+ const shardIds = await this.getShardIds();
+ return Math.max(...shardIds) + 1;
+ }
+
+ /**
+ * Yields the ids of the shards this manager should manage
+ */
+ public async getShardIds(force = false): Promise {
+ if (this.shardIds && !force) {
+ return this.shardIds;
+ }
+
+ let shardIds: number[];
+ if (this.options.shardIds) {
+ if (Array.isArray(this.options.shardIds)) {
+ shardIds = this.options.shardIds;
+ } else {
+ shardIds = range(this.options.shardIds);
+ }
+ } else {
+ const data = await this.fetchGatewayInformation();
+ shardIds = range({ start: 0, end: (this.options.shardCount ?? data.shards) - 1 });
+ }
+
+ this.shardIds = shardIds;
+ return shardIds;
+ }
+
+ public async connect() {
+ const shardCount = await this.getShardCount();
+ // First, make sure all our shards are spawned
+ await this.updateShardCount(shardCount);
+ await this.strategy.connect();
+ }
+
+ public destroy(options?: Omit) {
+ return this.strategy.destroy(options);
+ }
+
+ public send(shardId: number, payload: GatewaySendPayload) {
+ return this.strategy.send(shardId, payload);
+ }
+}
diff --git a/packages/ws/src/ws/WebSocketShard.ts b/packages/ws/src/ws/WebSocketShard.ts
new file mode 100644
index 000000000000..8b884efb1501
--- /dev/null
+++ b/packages/ws/src/ws/WebSocketShard.ts
@@ -0,0 +1,549 @@
+import { once } from 'node:events';
+import { setTimeout } from 'node:timers';
+import { setTimeout as sleep } from 'node:timers/promises';
+import { TextDecoder } from 'node:util';
+import { inflate } from 'node:zlib';
+import { Collection } from '@discordjs/collection';
+import { AsyncQueue } from '@sapphire/async-queue';
+import { AsyncEventEmitter } from '@vladfrangu/async_event_emitter';
+import {
+ GatewayCloseCodes,
+ GatewayDispatchEvents,
+ GatewayDispatchPayload,
+ GatewayIdentifyData,
+ GatewayOpcodes,
+ GatewayReceivePayload,
+ GatewaySendPayload,
+} from 'discord-api-types/v10';
+import { CONNECTING, OPEN, RawData, WebSocket } from 'ws';
+import type { Inflate } from 'zlib-sync';
+import type { SessionInfo } from './WebSocketManager';
+import type { IContextFetchingStrategy } from '../strategies/context/IContextFetchingStrategy';
+import { ImportantGatewayOpcodes } from '../utils/constants';
+import { lazy } from '../utils/utils';
+
+const getZlibSync = lazy(() => import('zlib-sync').then((mod) => mod.default).catch(() => null));
+
+export enum WebSocketShardEvents {
+ Debug = 'debug',
+ Hello = 'hello',
+ Ready = 'ready',
+ Resumed = 'resumed',
+ Dispatch = 'dispatch',
+}
+
+export enum WebSocketShardStatus {
+ Idle,
+ Connecting,
+ Resuming,
+ Ready,
+}
+
+export enum WebSocketShardDestroyRecovery {
+ Reconnect,
+ Resume,
+}
+
+// eslint-disable-next-line @typescript-eslint/consistent-type-definitions
+export type WebSocketShardEventsMap = {
+ [WebSocketShardEvents.Debug]: [payload: { message: string }];
+ [WebSocketShardEvents.Hello]: [];
+ [WebSocketShardEvents.Ready]: [];
+ [WebSocketShardEvents.Resumed]: [];
+ [WebSocketShardEvents.Dispatch]: [payload: { data: GatewayDispatchPayload }];
+};
+
+export interface WebSocketShardDestroyOptions {
+ reason?: string;
+ code?: number;
+ recover?: WebSocketShardDestroyRecovery;
+}
+
+export enum CloseCodes {
+ Normal = 1000,
+ Resuming = 4200,
+}
+
+export class WebSocketShard extends AsyncEventEmitter {
+ private connection: WebSocket | null = null;
+
+ private readonly id: number;
+
+ private useIdentifyCompress = false;
+
+ private inflate: Inflate | null = null;
+ private readonly textDecoder = new TextDecoder();
+
+ private status: WebSocketShardStatus = WebSocketShardStatus.Idle;
+
+ private replayedEvents = 0;
+
+ private isAck = true;
+
+ private sendRateLimitState = {
+ remaining: 120,
+ resetAt: Date.now(),
+ };
+
+ private heartbeatInterval: NodeJS.Timer | null = null;
+ private lastHeartbeatAt = -1;
+
+ private session: SessionInfo | null = null;
+
+ private readonly sendQueue = new AsyncQueue();
+
+ private readonly timeouts = new Collection();
+
+ public readonly strategy: IContextFetchingStrategy;
+
+ public constructor(strategy: IContextFetchingStrategy, id: number) {
+ super();
+ this.strategy = strategy;
+ this.id = id;
+ }
+
+ public async connect() {
+ if (this.status !== WebSocketShardStatus.Idle) {
+ throw new Error("Tried to connect a shard that wasn't idle");
+ }
+
+ const data = this.strategy.options.gatewayInformation;
+
+ const { version, encoding, compression } = this.strategy.options;
+ const params = new URLSearchParams({ v: version, encoding });
+ if (compression) {
+ const zlib = await getZlibSync();
+ if (zlib) {
+ params.append('compress', compression);
+ this.inflate = new zlib.Inflate({
+ chunkSize: 65535,
+ to: 'string',
+ });
+ } else if (!this.useIdentifyCompress) {
+ this.useIdentifyCompress = true;
+ console.warn(
+ 'WebSocketShard: Compression is enabled but zlib-sync is not installed, falling back to identify compress',
+ );
+ }
+ }
+
+ const url = `${data.url}?${params.toString()}`;
+ this.debug([`Connecting to ${url}`]);
+ const connection = new WebSocket(url, { handshakeTimeout: this.strategy.options.handshakeTimeout ?? undefined })
+ /* eslint-disable @typescript-eslint/no-misused-promises */
+ .on('message', this.onMessage.bind(this))
+ .on('error', this.onError.bind(this))
+ .on('close', this.onClose.bind(this));
+ /* eslint-enable @typescript-eslint/no-misused-promises */
+
+ connection.binaryType = 'arraybuffer';
+ this.connection = connection;
+
+ this.status = WebSocketShardStatus.Connecting;
+
+ await this.waitForEvent(WebSocketShardEvents.Hello, this.strategy.options.helloTimeout);
+
+ const session = this.session ?? (await this.strategy.retrieveSessionInfo(this.id));
+ if (session?.shardCount === this.strategy.options.shardCount) {
+ this.session = session;
+ await this.resume(session);
+ } else {
+ await this.identify();
+ }
+ }
+
+ public async destroy(options: WebSocketShardDestroyOptions = {}) {
+ if (this.status === WebSocketShardStatus.Idle) {
+ this.debug(['Tried to destroy a shard that was idle']);
+ return;
+ }
+
+ if (!options.code) {
+ options.code = options.recover === WebSocketShardDestroyRecovery.Resume ? CloseCodes.Resuming : CloseCodes.Normal;
+ }
+
+ this.debug([
+ 'Destroying shard',
+ `Reason: ${options.reason ?? 'none'}`,
+ `Code: ${options.code}`,
+ `Recover: ${options.recover === undefined ? 'none' : WebSocketShardDestroyRecovery[options.recover]!}`,
+ ]);
+
+ // Reset state
+ this.isAck = true;
+ if (this.heartbeatInterval) {
+ clearInterval(this.heartbeatInterval);
+ }
+ this.lastHeartbeatAt = -1;
+
+ // Clear session state if applicable
+ if (options.recover !== WebSocketShardDestroyRecovery.Resume && this.session) {
+ this.session = null;
+ await this.strategy.updateSessionInfo(this.id, null);
+ }
+
+ if (this.connection && (this.connection.readyState === OPEN || this.connection.readyState === CONNECTING)) {
+ this.connection.close(options.code, options.reason);
+ }
+
+ this.status = WebSocketShardStatus.Idle;
+
+ if (options.recover !== undefined) {
+ return this.connect();
+ }
+ }
+
+ private async waitForEvent(event: WebSocketShardEvents, timeoutDuration?: number | null) {
+ this.debug([`Waiting for event ${event} for ${timeoutDuration ? `${timeoutDuration}ms` : 'indefinitely'}`]);
+ const controller = new AbortController();
+ const timeout = timeoutDuration ? setTimeout(() => controller.abort(), timeoutDuration).unref() : null;
+ if (timeout) {
+ this.timeouts.set(event, timeout);
+ }
+ await once(this, event, { signal: controller.signal });
+ if (timeout) {
+ clearTimeout(timeout);
+ this.timeouts.delete(event);
+ }
+ }
+
+ public async send(payload: GatewaySendPayload) {
+ if (!this.connection) {
+ throw new Error("WebSocketShard wasn't connected");
+ }
+
+ if (this.status !== WebSocketShardStatus.Ready && !ImportantGatewayOpcodes.has(payload.op)) {
+ await once(this, WebSocketShardEvents.Ready);
+ }
+
+ await this.sendQueue.wait();
+
+ if (--this.sendRateLimitState.remaining <= 0) {
+ if (this.sendRateLimitState.resetAt < Date.now()) {
+ await sleep(Date.now() - this.sendRateLimitState.resetAt);
+ }
+
+ this.sendRateLimitState = {
+ remaining: 119,
+ resetAt: Date.now() + 60_000,
+ };
+ }
+
+ this.sendQueue.shift();
+ this.connection.send(JSON.stringify(payload));
+ }
+
+ private async identify() {
+ this.debug([
+ 'Identifying',
+ `shard id: ${this.id.toString()}`,
+ `shard count: ${this.strategy.options.shardCount}`,
+ `intents: ${this.strategy.options.intents}`,
+ `compression: ${this.inflate ? 'zlib-stream' : this.useIdentifyCompress ? 'identify' : 'none'}`,
+ ]);
+ const d: GatewayIdentifyData = {
+ token: this.strategy.options.token,
+ properties: this.strategy.options.identifyProperties,
+ intents: this.strategy.options.intents,
+ compress: this.useIdentifyCompress,
+ shard: [this.id, this.strategy.options.shardCount],
+ };
+
+ if (this.strategy.options.largeThreshold) {
+ d.large_threshold = this.strategy.options.largeThreshold;
+ }
+
+ if (this.strategy.options.initialPresence) {
+ d.presence = this.strategy.options.initialPresence;
+ }
+
+ await this.send({
+ op: GatewayOpcodes.Identify,
+ d,
+ });
+
+ await this.waitForEvent(WebSocketShardEvents.Ready, this.strategy.options.readyTimeout);
+ this.status = WebSocketShardStatus.Ready;
+ }
+
+ private resume(session: SessionInfo) {
+ this.debug(['Resuming session']);
+ this.status = WebSocketShardStatus.Resuming;
+ this.replayedEvents = 0;
+ return this.send({
+ op: GatewayOpcodes.Resume,
+ d: {
+ token: this.strategy.options.token,
+ seq: session.sequence,
+ session_id: session.sessionId,
+ },
+ });
+ }
+
+ private async heartbeat(requested = false) {
+ if (!this.isAck && !requested) {
+ return this.destroy({ reason: 'Zombie connection', recover: WebSocketShardDestroyRecovery.Resume });
+ }
+
+ await this.send({
+ op: GatewayOpcodes.Heartbeat,
+ d: this.session?.sequence ?? null,
+ });
+
+ this.lastHeartbeatAt = Date.now();
+ this.isAck = false;
+ }
+
+ private async unpackMessage(data: Buffer | ArrayBuffer, isBinary: boolean): Promise {
+ const decompressable = new Uint8Array(data);
+
+ // Deal with no compression
+ if (!isBinary) {
+ return JSON.parse(this.textDecoder.decode(decompressable)) as GatewayReceivePayload;
+ }
+
+ // Deal with identify compress
+ if (this.useIdentifyCompress) {
+ return new Promise((resolve, reject) => {
+ inflate(decompressable, { chunkSize: 65535 }, (err, result) => {
+ if (err) {
+ return reject(err);
+ }
+
+ resolve(JSON.parse(this.textDecoder.decode(result)) as GatewayReceivePayload);
+ });
+ });
+ }
+
+ // Deal with gw wide zlib-stream compression
+ if (this.inflate) {
+ const l = decompressable.length;
+ const flush =
+ l >= 4 &&
+ decompressable[l - 4] === 0x00 &&
+ decompressable[l - 3] === 0x00 &&
+ decompressable[l - 2] === 0xff &&
+ decompressable[l - 1] === 0xff;
+
+ const zlib = (await getZlibSync())!;
+ this.inflate.push(Buffer.from(decompressable), flush ? zlib.Z_SYNC_FLUSH : zlib.Z_NO_FLUSH);
+
+ if (this.inflate.err) {
+ this.emit('error', `${this.inflate.err}${this.inflate.msg ? `: ${this.inflate.msg}` : ''}`);
+ }
+
+ if (!flush) {
+ return null;
+ }
+
+ const { result } = this.inflate;
+ if (!result) {
+ return null;
+ }
+
+ return JSON.parse(typeof result === 'string' ? result : this.textDecoder.decode(result)) as GatewayReceivePayload;
+ }
+
+ this.debug([
+ 'Received a message we were unable to decompress',
+ `isBinary: ${isBinary.toString()}`,
+ `useIdentifyCompress: ${this.useIdentifyCompress.toString()}`,
+ `inflate: ${Boolean(this.inflate).toString()}`,
+ ]);
+
+ return null;
+ }
+
+ private async onMessage(data: RawData, isBinary: boolean) {
+ const payload = await this.unpackMessage(data as Buffer | ArrayBuffer, isBinary);
+ if (!payload) {
+ return;
+ }
+
+ switch (payload.op) {
+ case GatewayOpcodes.Dispatch: {
+ if (this.status === WebSocketShardStatus.Ready || this.status === WebSocketShardStatus.Resuming) {
+ this.emit(WebSocketShardEvents.Dispatch, { data: payload });
+ }
+
+ if (this.status === WebSocketShardStatus.Resuming) {
+ this.replayedEvents++;
+ }
+
+ switch (payload.t) {
+ case GatewayDispatchEvents.Ready: {
+ this.emit(WebSocketShardEvents.Ready);
+
+ this.session ??= {
+ sequence: payload.s,
+ sessionId: payload.d.session_id,
+ shardId: this.id,
+ shardCount: this.strategy.options.shardCount,
+ };
+
+ await this.strategy.updateSessionInfo(this.id, this.session);
+ break;
+ }
+
+ case GatewayDispatchEvents.Resumed: {
+ this.status = WebSocketShardStatus.Ready;
+ this.debug([`Resumed and replayed ${this.replayedEvents} events`]);
+ this.emit(WebSocketShardEvents.Resumed);
+ break;
+ }
+
+ default: {
+ break;
+ }
+ }
+
+ if (this.session) {
+ if (payload.s > this.session.sequence) {
+ this.session.sequence = payload.s;
+ await this.strategy.updateSessionInfo(this.id, this.session);
+ }
+ }
+
+ break;
+ }
+
+ case GatewayOpcodes.Heartbeat: {
+ await this.heartbeat(true);
+ break;
+ }
+
+ case GatewayOpcodes.Reconnect: {
+ await this.destroy({
+ reason: 'Told to reconnect by Discord',
+ recover: WebSocketShardDestroyRecovery.Resume,
+ });
+ break;
+ }
+
+ case GatewayOpcodes.InvalidSession: {
+ const readyTimeout = this.timeouts.get(WebSocketShardEvents.Ready);
+ readyTimeout?.refresh();
+ this.debug([`Invalid session; will attempt to resume: ${payload.d.toString()}`]);
+ const session = this.session ?? (await this.strategy.retrieveSessionInfo(this.id));
+ if (payload.d && session) {
+ await this.resume(session);
+ } else {
+ await this.destroy({
+ reason: 'Invalid session',
+ recover: WebSocketShardDestroyRecovery.Reconnect,
+ });
+ }
+ break;
+ }
+
+ case GatewayOpcodes.Hello: {
+ this.emit(WebSocketShardEvents.Hello);
+ this.debug([`Starting to heartbeat every ${payload.d.heartbeat_interval}ms`]);
+ this.heartbeatInterval = setInterval(() => void this.heartbeat(), payload.d.heartbeat_interval);
+ break;
+ }
+
+ case GatewayOpcodes.HeartbeatAck: {
+ this.isAck = true;
+ this.debug([`Got heartbeat ack after ${Date.now() - this.lastHeartbeatAt}ms`]);
+ break;
+ }
+ }
+ }
+
+ private onError(err: Error) {
+ this.emit('error', { err });
+ }
+
+ private async onClose(code: number) {
+ switch (code) {
+ case 1000:
+ case 4200: {
+ this.debug([`Disconnected normally from code ${code}`]);
+ break;
+ }
+
+ case GatewayCloseCodes.UnknownError: {
+ this.debug([`An unknown error occured: ${code}`]);
+ return this.destroy({ code, recover: WebSocketShardDestroyRecovery.Resume });
+ }
+
+ case GatewayCloseCodes.UnknownOpcode: {
+ this.debug(['An invalid opcode was sent to Discord.']);
+ return this.destroy({ code, recover: WebSocketShardDestroyRecovery.Resume });
+ }
+
+ case GatewayCloseCodes.DecodeError: {
+ this.debug(['An invalid payload was sent to Discord.']);
+ return this.destroy({ code, recover: WebSocketShardDestroyRecovery.Resume });
+ }
+
+ case GatewayCloseCodes.NotAuthenticated: {
+ this.debug(['A request was somehow sent before the identify/resume payload.']);
+ return this.destroy({ code, recover: WebSocketShardDestroyRecovery.Reconnect });
+ }
+
+ case GatewayCloseCodes.AuthenticationFailed: {
+ throw new Error('Authentication failed');
+ }
+
+ case GatewayCloseCodes.AlreadyAuthenticated: {
+ this.debug(['More than one auth payload was sent.']);
+ return this.destroy({ code, recover: WebSocketShardDestroyRecovery.Reconnect });
+ }
+
+ case GatewayCloseCodes.InvalidSeq: {
+ this.debug(['An invalid sequence was sent.']);
+ return this.destroy({ code, recover: WebSocketShardDestroyRecovery.Reconnect });
+ }
+
+ case GatewayCloseCodes.RateLimited: {
+ this.debug(['The WebSocket rate limit has been hit, this should never happen']);
+ return this.destroy({ code, recover: WebSocketShardDestroyRecovery.Reconnect });
+ }
+
+ case GatewayCloseCodes.SessionTimedOut: {
+ this.debug(['Session timed out.']);
+ return this.destroy({ code, recover: WebSocketShardDestroyRecovery.Resume });
+ }
+
+ case GatewayCloseCodes.InvalidShard: {
+ throw new Error('Invalid shard');
+ }
+
+ case GatewayCloseCodes.ShardingRequired: {
+ throw new Error('Sharding is required');
+ }
+
+ case GatewayCloseCodes.InvalidAPIVersion: {
+ throw new Error('Used an invalid API version');
+ }
+
+ case GatewayCloseCodes.InvalidIntents: {
+ throw new Error('Used invalid intents');
+ }
+
+ case GatewayCloseCodes.DisallowedIntents: {
+ throw new Error('Used disallowed intents');
+ }
+
+ default: {
+ this.debug([`The gateway closed with an unexpected code ${code}, attempting to resume.`]);
+ return this.destroy({ code, recover: WebSocketShardDestroyRecovery.Resume });
+ }
+ }
+ }
+
+ private debug(messages: [string, ...string[]]) {
+ const message = `${messages[0]}${
+ messages.length > 1
+ ? `\n${messages
+ .slice(1)
+ .map((m) => ` ${m}`)
+ .join('\n')}`
+ : ''
+ }`;
+
+ this.emit(WebSocketShardEvents.Debug, { message });
+ }
+}
diff --git a/packages/ws/tsconfig.eslint.json b/packages/ws/tsconfig.eslint.json
new file mode 100644
index 000000000000..d04d4be3aedc
--- /dev/null
+++ b/packages/ws/tsconfig.eslint.json
@@ -0,0 +1,20 @@
+{
+ "extends": "./tsconfig.json",
+ "compilerOptions": {
+ "allowJs": true
+ },
+ "include": [
+ "**/*.ts",
+ "**/*.tsx",
+ "**/*.js",
+ "**/*.mjs",
+ "**/*.jsx",
+ "**/*.test.ts",
+ "**/*.test.js",
+ "**/*.test.mjs",
+ "**/*.spec.ts",
+ "**/*.spec.js",
+ "**/*.spec.mjs"
+ ],
+ "exclude": []
+}
diff --git a/packages/ws/tsconfig.json b/packages/ws/tsconfig.json
new file mode 100644
index 000000000000..fd8b5e417b9f
--- /dev/null
+++ b/packages/ws/tsconfig.json
@@ -0,0 +1,4 @@
+{
+ "extends": "../../tsconfig.json",
+ "include": ["src/**/*.ts"]
+}
diff --git a/packages/ws/tsup.config.ts b/packages/ws/tsup.config.ts
new file mode 100644
index 000000000000..463feada3ae6
--- /dev/null
+++ b/packages/ws/tsup.config.ts
@@ -0,0 +1,3 @@
+import { createTsupConfig } from '../../tsup.config';
+
+export default createTsupConfig({ entry: ['./src/**/*.ts'], bundle: false });
diff --git a/tsup.config.ts b/tsup.config.ts
index 0237faab3e2a..d6b84e1322b9 100644
--- a/tsup.config.ts
+++ b/tsup.config.ts
@@ -13,6 +13,7 @@ type ConfigOptions = Pick<
| 'noExternal'
| 'esbuildOptions'
| 'dts'
+ | 'bundle'
>;
export const createTsupConfig = ({
@@ -32,6 +33,7 @@ export const createTsupConfig = ({
};
}
},
+ bundle,
}: ConfigOptions = {}) =>
defineConfig({
clean: true,
@@ -47,4 +49,6 @@ export const createTsupConfig = ({
globalName,
noExternal,
esbuildOptions,
+ bundle,
+ shims: true,
});
diff --git a/yarn.lock b/yarn.lock
index 84c61bd9f89a..d05ca3323255 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -43,23 +43,14 @@ __metadata:
languageName: node
linkType: hard
-"@antfu/utils@npm:^0.5.0, @antfu/utils@npm:^0.5.1":
+"@antfu/utils@npm:^0.5.0, @antfu/utils@npm:^0.5.2":
version: 0.5.2
resolution: "@antfu/utils@npm:0.5.2"
checksum: 9b91446b2dbb823abeeba1cc33d6ebf701a462923408ad4751fbe162da46ae0669c774c2b5435fc77691dc207ce5de5945e693d5163e07d6ef42e376b04c7af4
languageName: node
linkType: hard
-"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.16.7":
- version: 7.16.7
- resolution: "@babel/code-frame@npm:7.16.7"
- dependencies:
- "@babel/highlight": ^7.16.7
- checksum: db2f7faa31bc2c9cf63197b481b30ea57147a5fc1a6fab60e5d6c02cdfbf6de8e17b5121f99917b3dabb5eeb572da078312e70697415940383efc140d4e0808b
- languageName: node
- linkType: hard
-
-"@babel/code-frame@npm:^7.18.6":
+"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.10.4, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.16.7, @babel/code-frame@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/code-frame@npm:7.18.6"
dependencies:
@@ -68,51 +59,14 @@ __metadata:
languageName: node
linkType: hard
-"@babel/compat-data@npm:^7.13.11, @babel/compat-data@npm:^7.17.10":
- version: 7.17.10
- resolution: "@babel/compat-data@npm:7.17.10"
- checksum: e85051087cd4690de5061909a2dd2d7f8b6434a3c2e30be6c119758db2027ae1845bcd75a81127423dd568b706ac6994a1a3d7d701069a23bf5cfe900728290b
- languageName: node
- linkType: hard
-
-"@babel/compat-data@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/compat-data@npm:7.18.6"
- checksum: fd73a1bd7bc29be5528d2ef78248929ed3ee72e0edb69cef6051e0aad0bf8087594db6cd9e981f0d7f5bfc274fdbb77306d8abea8ceb71e95c18afc3ebd81828
- languageName: node
- linkType: hard
-
-"@babel/compat-data@npm:^7.18.8":
+"@babel/compat-data@npm:^7.13.11, @babel/compat-data@npm:^7.18.8":
version: 7.18.8
resolution: "@babel/compat-data@npm:7.18.8"
checksum: 3096aafad74936477ebdd039bcf342fba84eb3100e608f3360850fb63e1efa1c66037c4824f814d62f439ab47d25164439343a6e92e9b4357024fdf571505eb9
languageName: node
linkType: hard
-"@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.13.16":
- version: 7.18.2
- resolution: "@babel/core@npm:7.18.2"
- dependencies:
- "@ampproject/remapping": ^2.1.0
- "@babel/code-frame": ^7.16.7
- "@babel/generator": ^7.18.2
- "@babel/helper-compilation-targets": ^7.18.2
- "@babel/helper-module-transforms": ^7.18.0
- "@babel/helpers": ^7.18.2
- "@babel/parser": ^7.18.0
- "@babel/template": ^7.16.7
- "@babel/traverse": ^7.18.2
- "@babel/types": ^7.18.2
- convert-source-map: ^1.7.0
- debug: ^4.1.0
- gensync: ^1.0.0-beta.2
- json5: ^2.2.1
- semver: ^6.3.0
- checksum: 14a4142c12e004cd2477b7610408d5788ee5dd821ee9e4de204cbb72d9c399d858d9deabc3d49914d5d7c2927548160c19bdc7524b1a9f6acc1ec96a8d9848dd
- languageName: node
- linkType: hard
-
-"@babel/core@npm:^7.17.7, @babel/core@npm:^7.18.9":
+"@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.13.16, @babel/core@npm:^7.17.7, @babel/core@npm:^7.18.6, @babel/core@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/core@npm:7.18.9"
dependencies:
@@ -135,52 +89,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/core@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/core@npm:7.18.6"
- dependencies:
- "@ampproject/remapping": ^2.1.0
- "@babel/code-frame": ^7.18.6
- "@babel/generator": ^7.18.6
- "@babel/helper-compilation-targets": ^7.18.6
- "@babel/helper-module-transforms": ^7.18.6
- "@babel/helpers": ^7.18.6
- "@babel/parser": ^7.18.6
- "@babel/template": ^7.18.6
- "@babel/traverse": ^7.18.6
- "@babel/types": ^7.18.6
- convert-source-map: ^1.7.0
- debug: ^4.1.0
- gensync: ^1.0.0-beta.2
- json5: ^2.2.1
- semver: ^6.3.0
- checksum: 711459ebf7afab7b8eff88b7155c3f4a62690545f1c8c2eb6ba5ebaed01abeecb984cf9657847a2151ad24a5645efce765832aa343ce0f0386f311b67b59589a
- languageName: node
- linkType: hard
-
-"@babel/generator@npm:^7.18.2, @babel/generator@npm:^7.7.2":
- version: 7.18.2
- resolution: "@babel/generator@npm:7.18.2"
- dependencies:
- "@babel/types": ^7.18.2
- "@jridgewell/gen-mapping": ^0.3.0
- jsesc: ^2.5.1
- checksum: d0661e95532ddd97566d41fec26355a7b28d1cbc4df95fe80cc084c413342935911b48db20910708db39714844ddd614f61c2ec4cca3fb10181418bdcaa2e7a3
- languageName: node
- linkType: hard
-
-"@babel/generator@npm:^7.18.6":
- version: 7.18.7
- resolution: "@babel/generator@npm:7.18.7"
- dependencies:
- "@babel/types": ^7.18.7
- "@jridgewell/gen-mapping": ^0.3.2
- jsesc: ^2.5.1
- checksum: aad4b6873130165e9483af2888bce5a3a5ad9cca0757fc90ae11a0396757d0b295a3bff49282c8df8ab01b31972cc855ae88fd9ddc9ab00d9427dc0e01caeea9
- languageName: node
- linkType: hard
-
-"@babel/generator@npm:^7.18.9":
+"@babel/generator@npm:^7.18.9, @babel/generator@npm:^7.7.2":
version: 7.18.9
resolution: "@babel/generator@npm:7.18.9"
dependencies:
@@ -191,15 +100,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-annotate-as-pure@npm:^7.16.7":
- version: 7.16.7
- resolution: "@babel/helper-annotate-as-pure@npm:7.16.7"
- dependencies:
- "@babel/types": ^7.16.7
- checksum: d235be963fed5d48a8a4cfabc41c3f03fad6a947810dbcab9cebed7f819811457e10d99b4b2e942ad71baa7ee8e3cd3f5f38a4e4685639ddfddb7528d9a07179
- languageName: node
- linkType: hard
-
"@babel/helper-annotate-as-pure@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/helper-annotate-as-pure@npm:7.18.6"
@@ -210,44 +110,16 @@ __metadata:
linkType: hard
"@babel/helper-builder-binary-assignment-operator-visitor@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-builder-binary-assignment-operator-visitor@npm:7.18.6"
+ version: 7.18.9
+ resolution: "@babel/helper-builder-binary-assignment-operator-visitor@npm:7.18.9"
dependencies:
"@babel/helper-explode-assignable-expression": ^7.18.6
- "@babel/types": ^7.18.6
- checksum: c4d71356e0adbc20ce9fe7c1e1181ff65a78603f8bba7615745f0417fed86bad7dc0a54a840bc83667c66709b3cb3721edcb9be0d393a298ce4e9eb6d085f3c1
- languageName: node
- linkType: hard
-
-"@babel/helper-compilation-targets@npm:^7.13.0, @babel/helper-compilation-targets@npm:^7.18.2":
- version: 7.18.2
- resolution: "@babel/helper-compilation-targets@npm:7.18.2"
- dependencies:
- "@babel/compat-data": ^7.17.10
- "@babel/helper-validator-option": ^7.16.7
- browserslist: ^4.20.2
- semver: ^6.3.0
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 4f02e79f20c0b3f8db5049ba8c35027c41ccb3fc7884835d04e49886538e0f55702959db1bb75213c94a5708fec2dc81a443047559a4f184abb884c72c0059b4
- languageName: node
- linkType: hard
-
-"@babel/helper-compilation-targets@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-compilation-targets@npm:7.18.6"
- dependencies:
- "@babel/compat-data": ^7.18.6
- "@babel/helper-validator-option": ^7.18.6
- browserslist: ^4.20.2
- semver: ^6.3.0
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: f09ddaddc83c241cb7a040025e2ba558daa1c950ce878604d91230aed8d8a90f10dfd5bb0b67bc5b3db8af1576a0d0dac1d65959a06a17259243dbb5730d0ed1
+ "@babel/types": ^7.18.9
+ checksum: b4bc214cb56329daff6cc18a7f7a26aeafb55a1242e5362f3d47fe3808421f8c7cd91fff95d6b9b7ccb67e14e5a67d944e49dbe026942bfcbfda19b1c72a8e72
languageName: node
linkType: hard
-"@babel/helper-compilation-targets@npm:^7.18.9":
+"@babel/helper-compilation-targets@npm:^7.13.0, @babel/helper-compilation-targets@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/helper-compilation-targets@npm:7.18.9"
dependencies:
@@ -261,49 +133,20 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-create-class-features-plugin@npm:^7.17.12, @babel/helper-create-class-features-plugin@npm:^7.18.0":
- version: 7.18.0
- resolution: "@babel/helper-create-class-features-plugin@npm:7.18.0"
- dependencies:
- "@babel/helper-annotate-as-pure": ^7.16.7
- "@babel/helper-environment-visitor": ^7.16.7
- "@babel/helper-function-name": ^7.17.9
- "@babel/helper-member-expression-to-functions": ^7.17.7
- "@babel/helper-optimise-call-expression": ^7.16.7
- "@babel/helper-replace-supers": ^7.16.7
- "@babel/helper-split-export-declaration": ^7.16.7
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 9a6ef175350f1cf87abe7a738e8c9b603da7fcdb153c74e49af509183f8705278020baddb62a12c7f9ca059487fef97d75a4adea6a1446598ad9901d010e4296
- languageName: node
- linkType: hard
-
"@babel/helper-create-class-features-plugin@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-create-class-features-plugin@npm:7.18.6"
+ version: 7.18.9
+ resolution: "@babel/helper-create-class-features-plugin@npm:7.18.9"
dependencies:
"@babel/helper-annotate-as-pure": ^7.18.6
- "@babel/helper-environment-visitor": ^7.18.6
- "@babel/helper-function-name": ^7.18.6
- "@babel/helper-member-expression-to-functions": ^7.18.6
+ "@babel/helper-environment-visitor": ^7.18.9
+ "@babel/helper-function-name": ^7.18.9
+ "@babel/helper-member-expression-to-functions": ^7.18.9
"@babel/helper-optimise-call-expression": ^7.18.6
- "@babel/helper-replace-supers": ^7.18.6
+ "@babel/helper-replace-supers": ^7.18.9
"@babel/helper-split-export-declaration": ^7.18.6
peerDependencies:
"@babel/core": ^7.0.0
- checksum: 4d6da441ce329867338825c044c143f0b273cbfc6a20b9099e824a46f916584f44eabab073f78f02047d86719913e8f1a8bd72f42099ebe52691c29fabb992e4
- languageName: node
- linkType: hard
-
-"@babel/helper-create-regexp-features-plugin@npm:^7.16.7, @babel/helper-create-regexp-features-plugin@npm:^7.17.12":
- version: 7.17.12
- resolution: "@babel/helper-create-regexp-features-plugin@npm:7.17.12"
- dependencies:
- "@babel/helper-annotate-as-pure": ^7.16.7
- regexpu-core: ^5.0.1
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: fe49d26b0f6c58d4c1748a4d0e98b343882b428e6db43c4ba5e0aa7ff2296b3a557f0a88de9f000599bb95640a6c47c0b0c9a952b58c11f61aabb06bcc304329
+ checksum: 020dba79b92ee9a98520dad81dddb47d75b34b7b4392672cbefc59db6f5e89a96c5eb95bb1cc46b2fddf913ef63dfe6d17168f56b059af5c6965bb37b6ce1d82
languageName: node
linkType: hard
@@ -337,21 +180,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-environment-visitor@npm:^7.16.7, @babel/helper-environment-visitor@npm:^7.18.2":
- version: 7.18.2
- resolution: "@babel/helper-environment-visitor@npm:7.18.2"
- checksum: 1a9c8726fad454a082d077952a90f17188e92eabb3de236cb4782c49b39e3f69c327e272b965e9a20ff8abf37d30d03ffa6fd7974625a6c23946f70f7527f5e9
- languageName: node
- linkType: hard
-
-"@babel/helper-environment-visitor@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-environment-visitor@npm:7.18.6"
- checksum: 64fce65a26efb50d2496061ab2de669dc4c42175a8e05c82279497127e5c542538ed22b38194f6f5a4e86bed6ef5a4890aed23408480db0555728b4ca660fc9c
- languageName: node
- linkType: hard
-
-"@babel/helper-environment-visitor@npm:^7.18.9":
+"@babel/helper-environment-visitor@npm:^7.18.6, @babel/helper-environment-visitor@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/helper-environment-visitor@npm:7.18.9"
checksum: b25101f6162ddca2d12da73942c08ad203d7668e06663df685634a8fde54a98bc015f6f62938e8554457a592a024108d45b8f3e651fd6dcdb877275b73cc4420
@@ -367,26 +196,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-function-name@npm:^7.17.9":
- version: 7.17.9
- resolution: "@babel/helper-function-name@npm:7.17.9"
- dependencies:
- "@babel/template": ^7.16.7
- "@babel/types": ^7.17.0
- checksum: a59b2e5af56d8f43b9b0019939a43774754beb7cb01a211809ca8031c71890999d07739e955343135ec566c4d8ff725435f1f60fb0af3bb546837c1f9f84f496
- languageName: node
- linkType: hard
-
-"@babel/helper-function-name@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-function-name@npm:7.18.6"
- dependencies:
- "@babel/template": ^7.18.6
- "@babel/types": ^7.18.6
- checksum: bf84c2e0699aa07c3559d4262d199d4a9d0320037c2932efe3246866c3e01ce042c9c2131b5db32ba2409a9af01fb468171052819af759babc8ca93bdc6c9aeb
- languageName: node
- linkType: hard
-
"@babel/helper-function-name@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/helper-function-name@npm:7.18.9"
@@ -397,15 +206,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-hoist-variables@npm:^7.16.7":
- version: 7.16.7
- resolution: "@babel/helper-hoist-variables@npm:7.16.7"
- dependencies:
- "@babel/types": ^7.16.7
- checksum: 6ae1641f4a751cd9045346e3f61c3d9ec1312fd779ab6d6fecfe2a96e59a481ad5d7e40d2a840894c13b3fd6114345b157f9e3062fc5f1580f284636e722de60
- languageName: node
- linkType: hard
-
"@babel/helper-hoist-variables@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/helper-hoist-variables@npm:7.18.6"
@@ -415,24 +215,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-member-expression-to-functions@npm:^7.17.7":
- version: 7.17.7
- resolution: "@babel/helper-member-expression-to-functions@npm:7.17.7"
- dependencies:
- "@babel/types": ^7.17.0
- checksum: 70f361bab627396c714c3938e94a569cb0da522179328477cdbc4318e4003c2666387ad4931d6bd5de103338c667c9e4bbe3e917fc8c527b3f3eb6175b888b7d
- languageName: node
- linkType: hard
-
-"@babel/helper-member-expression-to-functions@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-member-expression-to-functions@npm:7.18.6"
- dependencies:
- "@babel/types": ^7.18.6
- checksum: 20c8e82d2375534dfe4d4adeb01d94906e5e616143bb2775e9f1d858039d87a0f79220e0a5c2ed410c54ccdeda47a4c09609b396db1f98fe8ce9e420894ac2f3
- languageName: node
- linkType: hard
-
"@babel/helper-member-expression-to-functions@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/helper-member-expression-to-functions@npm:7.18.9"
@@ -442,16 +224,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-module-imports@npm:^7.12.13, @babel/helper-module-imports@npm:^7.16.7":
- version: 7.16.7
- resolution: "@babel/helper-module-imports@npm:7.16.7"
- dependencies:
- "@babel/types": ^7.16.7
- checksum: ddd2c4a600a2e9a4fee192ab92bf35a627c5461dbab4af31b903d9ba4d6b6e59e0ff3499fde4e2e9a0eebe24906f00b636f8b4d9bd72ff24d50e6618215c3212
- languageName: node
- linkType: hard
-
-"@babel/helper-module-imports@npm:^7.18.6":
+"@babel/helper-module-imports@npm:^7.12.13, @babel/helper-module-imports@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/helper-module-imports@npm:7.18.6"
dependencies:
@@ -460,39 +233,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-module-transforms@npm:^7.18.0":
- version: 7.18.0
- resolution: "@babel/helper-module-transforms@npm:7.18.0"
- dependencies:
- "@babel/helper-environment-visitor": ^7.16.7
- "@babel/helper-module-imports": ^7.16.7
- "@babel/helper-simple-access": ^7.17.7
- "@babel/helper-split-export-declaration": ^7.16.7
- "@babel/helper-validator-identifier": ^7.16.7
- "@babel/template": ^7.16.7
- "@babel/traverse": ^7.18.0
- "@babel/types": ^7.18.0
- checksum: 824c3967c08d75bb36adc18c31dcafebcd495b75b723e2e17c6185e88daf5c6db62a6a75d9f791b5f38618a349e7cb32503e715a1b9a4e8bad4d0f43e3e6b523
- languageName: node
- linkType: hard
-
-"@babel/helper-module-transforms@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-module-transforms@npm:7.18.6"
- dependencies:
- "@babel/helper-environment-visitor": ^7.18.6
- "@babel/helper-module-imports": ^7.18.6
- "@babel/helper-simple-access": ^7.18.6
- "@babel/helper-split-export-declaration": ^7.18.6
- "@babel/helper-validator-identifier": ^7.18.6
- "@babel/template": ^7.18.6
- "@babel/traverse": ^7.18.6
- "@babel/types": ^7.18.6
- checksum: 75d90be9ecd314fe2f1b668ce065d7e8b3dff82eddea88480259c5d4bd54f73a909d0998909ffe734a44ba8be85ba233359033071cc800db209d37173bd26db2
- languageName: node
- linkType: hard
-
-"@babel/helper-module-transforms@npm:^7.18.9":
+"@babel/helper-module-transforms@npm:^7.18.6, @babel/helper-module-transforms@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/helper-module-transforms@npm:7.18.9"
dependencies:
@@ -508,15 +249,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-optimise-call-expression@npm:^7.16.7":
- version: 7.16.7
- resolution: "@babel/helper-optimise-call-expression@npm:7.16.7"
- dependencies:
- "@babel/types": ^7.16.7
- checksum: 925feb877d5a30a71db56e2be498b3abbd513831311c0188850896c4c1ada865eea795dce5251a1539b0f883ef82493f057f84286dd01abccc4736acfafe15ea
- languageName: node
- linkType: hard
-
"@babel/helper-optimise-call-expression@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/helper-optimise-call-expression@npm:7.18.6"
@@ -526,21 +258,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.13.0, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.16.7, @babel/helper-plugin-utils@npm:^7.17.12, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3":
- version: 7.17.12
- resolution: "@babel/helper-plugin-utils@npm:7.17.12"
- checksum: 4813cf0ddb0f143de032cb88d4207024a2334951db330f8216d6fa253ea320c02c9b2667429ef1a34b5e95d4cfbd085f6cb72d418999751c31d0baf2422cc61d
- languageName: node
- linkType: hard
-
-"@babel/helper-plugin-utils@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-plugin-utils@npm:7.18.6"
- checksum: 3dbfceb6c10fdf6c78a0e57f24e991ff8967b8a0bd45fe0314fb4a8ccf7c8ad4c3778c319a32286e7b1f63d507173df56b4e69fb31b71e1b447a73efa1ca723e
- languageName: node
- linkType: hard
-
-"@babel/helper-plugin-utils@npm:^7.18.9":
+"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.13.0, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.18.9, @babel/helper-plugin-utils@npm:^7.8.0, @babel/helper-plugin-utils@npm:^7.8.3":
version: 7.18.9
resolution: "@babel/helper-plugin-utils@npm:7.18.9"
checksum: ebae876cd60f1fe238c7210986093845fa5c4cad5feeda843ea4d780bf068256717650376d3af2a5e760f2ed6a35c065ae144f99c47da3e54aa6cba99d8804e0
@@ -548,46 +266,20 @@ __metadata:
linkType: hard
"@babel/helper-remap-async-to-generator@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-remap-async-to-generator@npm:7.18.6"
+ version: 7.18.9
+ resolution: "@babel/helper-remap-async-to-generator@npm:7.18.9"
dependencies:
"@babel/helper-annotate-as-pure": ^7.18.6
- "@babel/helper-environment-visitor": ^7.18.6
- "@babel/helper-wrap-function": ^7.18.6
- "@babel/types": ^7.18.6
+ "@babel/helper-environment-visitor": ^7.18.9
+ "@babel/helper-wrap-function": ^7.18.9
+ "@babel/types": ^7.18.9
peerDependencies:
"@babel/core": ^7.0.0
- checksum: 83e890624da9413c74a8084f6b5f7bfe93abad8a6e1a33464f3086e2a1336751672e6ac6d74dddd35b641d19584cc0f93d02c52a4f33385b3be5b40942fe30da
- languageName: node
- linkType: hard
-
-"@babel/helper-replace-supers@npm:^7.16.7":
- version: 7.18.2
- resolution: "@babel/helper-replace-supers@npm:7.18.2"
- dependencies:
- "@babel/helper-environment-visitor": ^7.18.2
- "@babel/helper-member-expression-to-functions": ^7.17.7
- "@babel/helper-optimise-call-expression": ^7.16.7
- "@babel/traverse": ^7.18.2
- "@babel/types": ^7.18.2
- checksum: c0083b7933672dd2aed50b79021c46401c83f41bc2132def19c5414cf8f944251f6d91dd959b2bedada9a7436a80fab629adb486e008566290c82293e89fec05
- languageName: node
- linkType: hard
-
-"@babel/helper-replace-supers@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-replace-supers@npm:7.18.6"
- dependencies:
- "@babel/helper-environment-visitor": ^7.18.6
- "@babel/helper-member-expression-to-functions": ^7.18.6
- "@babel/helper-optimise-call-expression": ^7.18.6
- "@babel/traverse": ^7.18.6
- "@babel/types": ^7.18.6
- checksum: 48e869dc8d3569136d239cd6354687e49c3225b114cb2141ed3a5f31cff5278f463eb25913df3345489061f377ad5d6e49778bddedd098fa8ee3adcec07cc1d3
+ checksum: 4be6076192308671b046245899b703ba090dbe7ad03e0bea897bb2944ae5b88e5e85853c9d1f83f643474b54c578d8ac0800b80341a86e8538264a725fbbefec
languageName: node
linkType: hard
-"@babel/helper-replace-supers@npm:^7.18.9":
+"@babel/helper-replace-supers@npm:^7.18.6, @babel/helper-replace-supers@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/helper-replace-supers@npm:7.18.9"
dependencies:
@@ -600,15 +292,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-simple-access@npm:^7.17.7, @babel/helper-simple-access@npm:^7.18.2":
- version: 7.18.2
- resolution: "@babel/helper-simple-access@npm:7.18.2"
- dependencies:
- "@babel/types": ^7.18.2
- checksum: c0862b56db7e120754d89273a039b128c27517389f6a4425ff24e49779791e8fe10061579171fb986be81fa076778acb847c709f6f5e396278d9c5e01360c375
- languageName: node
- linkType: hard
-
"@babel/helper-simple-access@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/helper-simple-access@npm:7.18.6"
@@ -618,24 +301,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-skip-transparent-expression-wrappers@npm:^7.16.0":
- version: 7.16.0
- resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.16.0"
- dependencies:
- "@babel/types": ^7.16.0
- checksum: b9ed2896eb253e6a85f472b0d4098ed80403758ad1a4e34b02b11e8276e3083297526758b1a3e6886e292987266f10622d7dbced3508cc22b296a74903b41cfb
- languageName: node
- linkType: hard
-
-"@babel/helper-skip-transparent-expression-wrappers@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.18.6"
- dependencies:
- "@babel/types": ^7.18.6
- checksum: 069750f9690b2995617c42be4b7848a4490cd30f1edc72401d9d2ae362bc186d395b7d8c1e171c1b6c09751642ab1bba578cccf8c0dfc82b4541f8627965aea7
- languageName: node
- linkType: hard
-
"@babel/helper-skip-transparent-expression-wrappers@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.18.9"
@@ -645,15 +310,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-split-export-declaration@npm:^7.16.7":
- version: 7.16.7
- resolution: "@babel/helper-split-export-declaration@npm:7.16.7"
- dependencies:
- "@babel/types": ^7.16.7
- checksum: e10aaf135465c55114627951b79115f24bc7af72ecbb58d541d66daf1edaee5dde7cae3ec8c3639afaf74526c03ae3ce723444e3b5b3dc77140c456cd84bcaa1
- languageName: node
- linkType: hard
-
"@babel/helper-split-export-declaration@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/helper-split-export-declaration@npm:7.18.6"
@@ -663,13 +319,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-validator-identifier@npm:^7.16.7":
- version: 7.16.7
- resolution: "@babel/helper-validator-identifier@npm:7.16.7"
- checksum: dbb3db9d184343152520a209b5684f5e0ed416109cde82b428ca9c759c29b10c7450657785a8b5c5256aa74acc6da491c1f0cf6b784939f7931ef82982051b69
- languageName: node
- linkType: hard
-
"@babel/helper-validator-identifier@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/helper-validator-identifier@npm:7.18.6"
@@ -677,13 +326,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-validator-option@npm:^7.16.7":
- version: 7.16.7
- resolution: "@babel/helper-validator-option@npm:7.16.7"
- checksum: c5ccc451911883cc9f12125d47be69434f28094475c1b9d2ada7c3452e6ac98a1ee8ddd364ca9e3f9855fcdee96cdeafa32543ebd9d17fee7a1062c202e80570
- languageName: node
- linkType: hard
-
"@babel/helper-validator-option@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/helper-validator-option@npm:7.18.6"
@@ -691,37 +333,15 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-wrap-function@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helper-wrap-function@npm:7.18.6"
- dependencies:
- "@babel/helper-function-name": ^7.18.6
- "@babel/template": ^7.18.6
- "@babel/traverse": ^7.18.6
- "@babel/types": ^7.18.6
- checksum: b7a4f59b302ed77407e5c2005d8677ebdeabbfa69230e15f80b5e06cc532369c1e48399ec3e67dd3341e7ab9b3f84f17a255e2c1ec4e0d42bb571a4dac5472d6
- languageName: node
- linkType: hard
-
-"@babel/helpers@npm:^7.18.2":
- version: 7.18.2
- resolution: "@babel/helpers@npm:7.18.2"
- dependencies:
- "@babel/template": ^7.16.7
- "@babel/traverse": ^7.18.2
- "@babel/types": ^7.18.2
- checksum: 94620242f23f6d5f9b83a02b1aa1632ffb05b0815e1bb53d3b46d64aa8e771066bba1db8bd267d9091fb00134cfaeda6a8d69d1d4cc2c89658631adfa077ae70
- languageName: node
- linkType: hard
-
-"@babel/helpers@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/helpers@npm:7.18.6"
+"@babel/helper-wrap-function@npm:^7.18.9":
+ version: 7.18.9
+ resolution: "@babel/helper-wrap-function@npm:7.18.9"
dependencies:
+ "@babel/helper-function-name": ^7.18.9
"@babel/template": ^7.18.6
- "@babel/traverse": ^7.18.6
- "@babel/types": ^7.18.6
- checksum: 5dea4fa53776703ae4190cacd3f81464e6e00cf0b6908ea9b0af2b3d9992153f3746dd8c33d22ec198f77a8eaf13a273d83cd8847f7aef983801e7bfafa856ec
+ "@babel/traverse": ^7.18.9
+ "@babel/types": ^7.18.9
+ checksum: da818e519b48bbaa748a4fa87b0ba681bc627c9eb9557008d5307d42d3f536fe435b775163088dd9639b0120c8ea1ae1021777f48806f9f83397f4df622b88d3
languageName: node
linkType: hard
@@ -736,17 +356,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/highlight@npm:^7.16.7":
- version: 7.16.7
- resolution: "@babel/highlight@npm:7.16.7"
- dependencies:
- "@babel/helper-validator-identifier": ^7.16.7
- chalk: ^2.0.0
- js-tokens: ^4.0.0
- checksum: f7e04e7e03b83c2cca984f4d3e180c9b018784f45d03367e94daf983861229ddc47264045f3b58dfeb0007f9c67bc2a76c4de1693bad90e5394876ef55ece5bb
- languageName: node
- linkType: hard
-
"@babel/highlight@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/highlight@npm:7.18.6"
@@ -758,25 +367,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.13.16, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.16.7, @babel/parser@npm:^7.18.0":
- version: 7.18.4
- resolution: "@babel/parser@npm:7.18.4"
- bin:
- parser: ./bin/babel-parser.js
- checksum: e05b2dc720c4b200e088258f3c2a2de5041c140444edc38181d1217b10074e881a7133162c5b62356061f26279f08df5a06ec14c5842996ee8601ad03c57a44f
- languageName: node
- linkType: hard
-
-"@babel/parser@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/parser@npm:7.18.6"
- bin:
- parser: ./bin/babel-parser.js
- checksum: 533ffc26667b7e2e0d87ae11368d90b6a3a468734d6dfe9c4697c24f48373cf9cc35ee08e416728f087fc56531b68022f752097941feddc60e0223d69a4d4cad
- languageName: node
- linkType: hard
-
-"@babel/parser@npm:^7.18.9":
+"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.13.16, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.18.6, @babel/parser@npm:^7.18.9, @babel/parser@npm:^7.9.4":
version: 7.18.9
resolution: "@babel/parser@npm:7.18.9"
bin:
@@ -785,15 +376,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/parser@npm:^7.9.4":
- version: 7.16.7
- resolution: "@babel/parser@npm:7.16.7"
- bin:
- parser: ./bin/babel-parser.js
- checksum: e664ff1edda164ab3f3c97fc1dd1a8930b0fba9981cbf873d3f25a22d16d50e2efcfaf81daeefa978bff2c4f268d34832f6817c8bc4e03594c3f43beba92fb68
- languageName: node
- linkType: hard
-
"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.18.6"
@@ -805,19 +387,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/helper-skip-transparent-expression-wrappers": ^7.18.6
- "@babel/plugin-proposal-optional-chaining": ^7.18.6
- peerDependencies:
- "@babel/core": ^7.13.0
- checksum: 0f0057cd12e98e297fd952c9cfdbffe5e34813f1b302e941fc212ca2a7b183ec2a227a1c49e104bbda528a4da6be03dbfb6e0d275d9572fb16b6ac5cda09fcd7
- languageName: node
- linkType: hard
-
"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.18.9"
@@ -845,19 +414,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-class-properties@npm:^7.13.0":
- version: 7.17.12
- resolution: "@babel/plugin-proposal-class-properties@npm:7.17.12"
- dependencies:
- "@babel/helper-create-class-features-plugin": ^7.17.12
- "@babel/helper-plugin-utils": ^7.17.12
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 884df6a4617a18cdc2a630096b2a10954bcc94757c893bb01abd6702fdc73343ca5c611f4884c4634e0608f5e86c3093ea6b973ce00bf21b248ba54de92c837d
- languageName: node
- linkType: hard
-
-"@babel/plugin-proposal-class-properties@npm:^7.18.6":
+"@babel/plugin-proposal-class-properties@npm:^7.13.0, @babel/plugin-proposal-class-properties@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/plugin-proposal-class-properties@npm:7.18.6"
dependencies:
@@ -894,18 +451,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-export-namespace-from@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-proposal-export-namespace-from@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/plugin-syntax-export-namespace-from": ^7.8.3
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 3227307e1155e8434825c02fb2e4e91e590aeb629ce6ce23e4fe869d0018a144c4674bf98863e1bb6d4e4a6f831e686ae43f46a87894e4286e31e6492a5571eb
- languageName: node
- linkType: hard
-
"@babel/plugin-proposal-export-namespace-from@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/plugin-proposal-export-namespace-from@npm:7.18.9"
@@ -930,18 +475,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-logical-assignment-operators@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-proposal-logical-assignment-operators@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 4fe0a0d6739da6b1929f5015846e1de3b72d7dd07c665975ca795850ad7d048f8a0756c057a4cd1d71080384ad6283c30fcc239393da6848eabc38e38d3206c5
- languageName: node
- linkType: hard
-
"@babel/plugin-proposal-logical-assignment-operators@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/plugin-proposal-logical-assignment-operators@npm:7.18.9"
@@ -954,19 +487,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-nullish-coalescing-operator@npm:^7.13.8":
- version: 7.17.12
- resolution: "@babel/plugin-proposal-nullish-coalescing-operator@npm:7.17.12"
- dependencies:
- "@babel/helper-plugin-utils": ^7.17.12
- "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 7881d8005d0d4e17a94f3bfbfa4a0d8af016d2f62ed90912fabb8c5f8f0cc0a15fd412f09c230984c40b5c893086987d403c73198ef388ffcb3726ff72efc009
- languageName: node
- linkType: hard
-
-"@babel/plugin-proposal-nullish-coalescing-operator@npm:^7.18.6":
+"@babel/plugin-proposal-nullish-coalescing-operator@npm:^7.13.8, @babel/plugin-proposal-nullish-coalescing-operator@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/plugin-proposal-nullish-coalescing-operator@npm:7.18.6"
dependencies:
@@ -990,21 +511,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-object-rest-spread@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-proposal-object-rest-spread@npm:7.18.6"
- dependencies:
- "@babel/compat-data": ^7.18.6
- "@babel/helper-compilation-targets": ^7.18.6
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/plugin-syntax-object-rest-spread": ^7.8.3
- "@babel/plugin-transform-parameters": ^7.18.6
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 9b7516bad285a8706beb5e619cf505364bfbe79e219ae86d2139b32010d238d146301c1424488926a57f6d729556e21cfccab29f28c26ecd0dda05e53d7160b1
- languageName: node
- linkType: hard
-
"@babel/plugin-proposal-object-rest-spread@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/plugin-proposal-object-rest-spread@npm:7.18.9"
@@ -1032,33 +538,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-optional-chaining@npm:^7.13.12":
- version: 7.17.12
- resolution: "@babel/plugin-proposal-optional-chaining@npm:7.17.12"
- dependencies:
- "@babel/helper-plugin-utils": ^7.17.12
- "@babel/helper-skip-transparent-expression-wrappers": ^7.16.0
- "@babel/plugin-syntax-optional-chaining": ^7.8.3
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: a27b220573441a0ad3eecf8ddcb249556a64de45add236791d76cfa164a8fd34181857528fa7d21d03d6b004e7c043bd929cce068e611ee1ac72aaf4d397aa12
- languageName: node
- linkType: hard
-
-"@babel/plugin-proposal-optional-chaining@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-proposal-optional-chaining@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/helper-skip-transparent-expression-wrappers": ^7.18.6
- "@babel/plugin-syntax-optional-chaining": ^7.8.3
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 9c3bf80cfb41ee53a2a5d0f316ef5d125bb0d400ede1ee1a68a9b7dfc998036cca20c3901cb5c9e24fdd9f08c0056030e042f4637bc9bbc36b682384b38e2d96
- languageName: node
- linkType: hard
-
-"@babel/plugin-proposal-optional-chaining@npm:^7.18.9":
+"@babel/plugin-proposal-optional-chaining@npm:^7.13.12, @babel/plugin-proposal-optional-chaining@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/plugin-proposal-optional-chaining@npm:7.18.9"
dependencies:
@@ -1097,7 +577,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-unicode-property-regex@npm:^7.18.6":
+"@babel/plugin-proposal-unicode-property-regex@npm:^7.18.6, @babel/plugin-proposal-unicode-property-regex@npm:^7.4.4":
version: 7.18.6
resolution: "@babel/plugin-proposal-unicode-property-regex@npm:7.18.6"
dependencies:
@@ -1109,18 +589,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-proposal-unicode-property-regex@npm:^7.4.4":
- version: 7.17.12
- resolution: "@babel/plugin-proposal-unicode-property-regex@npm:7.17.12"
- dependencies:
- "@babel/helper-create-regexp-features-plugin": ^7.17.12
- "@babel/helper-plugin-utils": ^7.17.12
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 0e4194510415ed11849f1617fcb32d996df746ba93cd05ebbabecb63cfc02c0e97b585c97da3dcf68acdd3c8b71cfae964abe5d5baba6bd3977a475d9225ad9e
- languageName: node
- linkType: hard
-
"@babel/plugin-syntax-async-generators@npm:^7.8.4":
version: 7.8.4
resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4"
@@ -1187,14 +655,14 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-syntax-flow@npm:^7.17.12":
- version: 7.17.12
- resolution: "@babel/plugin-syntax-flow@npm:7.17.12"
+"@babel/plugin-syntax-flow@npm:^7.18.6":
+ version: 7.18.6
+ resolution: "@babel/plugin-syntax-flow@npm:7.18.6"
dependencies:
- "@babel/helper-plugin-utils": ^7.17.12
+ "@babel/helper-plugin-utils": ^7.18.6
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: f92f18c9414478a3f408866c8a3d3f6b83f5369c8b76880245ba05d7ab9166d47c7d4ab1e0ac8b7a69d1d1b448bea836d1b340f823b1e548fec62a563cc9d0ec
+ checksum: abe82062b3eef14de7d2b3c0e4fecf80a3e796ca497e9df616d12dd250968abf71495ee85a955b43a6c827137203f0c409450cf792732ed0d6907c806580ea71
languageName: node
linkType: hard
@@ -1330,18 +798,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-syntax-typescript@npm:^7.17.12, @babel/plugin-syntax-typescript@npm:^7.7.2":
- version: 7.17.12
- resolution: "@babel/plugin-syntax-typescript@npm:7.17.12"
- dependencies:
- "@babel/helper-plugin-utils": ^7.17.12
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 50ab09f1953a2b0586cff9e29bf7cea3d886b48c1361a861687c2aef46356c6d73778c3341b0c051dc82a34417f19e9d759ae918353c5a98d25e85f2f6d24181
- languageName: node
- linkType: hard
-
-"@babel/plugin-syntax-typescript@npm:^7.18.6":
+"@babel/plugin-syntax-typescript@npm:^7.18.6, @babel/plugin-syntax-typescript@npm:^7.7.2":
version: 7.18.6
resolution: "@babel/plugin-syntax-typescript@npm:7.18.6"
dependencies:
@@ -1386,44 +843,15 @@ __metadata:
checksum: 0a0df61f94601e3666bf39f2cc26f5f7b22a94450fb93081edbed967bd752ce3f81d1227fefd3799f5ee2722171b5e28db61379234d1bb85b6ec689589f99d7e
languageName: node
linkType: hard
-
-"@babel/plugin-transform-block-scoping@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-block-scoping@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: b117a005a9d5aedacc4a899a4d504b7f46e4c1e852b62d34a7f1cb06caecb1f69507b6a07d0ba6c6241ddd8f470bc6f483513d87637e49f6c508aadf23cf391a
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-block-scoping@npm:^7.18.9":
- version: 7.18.9
- resolution: "@babel/plugin-transform-block-scoping@npm:7.18.9"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.9
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: f8064ea431eb7aa349dc5b6be87a650f912b48cd65afde917e8644f6f840d7f9d2ce4795f2aa3955aa5b23a73d4ad38abd03386ae109b4b8702b746c6d35bda3
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-classes@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-classes@npm:7.18.6"
- dependencies:
- "@babel/helper-annotate-as-pure": ^7.18.6
- "@babel/helper-environment-visitor": ^7.18.6
- "@babel/helper-function-name": ^7.18.6
- "@babel/helper-optimise-call-expression": ^7.18.6
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/helper-replace-supers": ^7.18.6
- "@babel/helper-split-export-declaration": ^7.18.6
- globals: ^11.1.0
+
+"@babel/plugin-transform-block-scoping@npm:^7.18.9":
+ version: 7.18.9
+ resolution: "@babel/plugin-transform-block-scoping@npm:7.18.9"
+ dependencies:
+ "@babel/helper-plugin-utils": ^7.18.9
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 661e37037912a25a77fe8bef7e9d480c24ff4ba4000a3137243b098c86cf5ddc970af66c5c245f828c7dcfafc24e80d260f31274e2f2d6dce49a0964a7648a0c
+ checksum: f8064ea431eb7aa349dc5b6be87a650f912b48cd65afde917e8644f6f840d7f9d2ce4795f2aa3955aa5b23a73d4ad38abd03386ae109b4b8702b746c6d35bda3
languageName: node
linkType: hard
@@ -1445,17 +873,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-computed-properties@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-computed-properties@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 686d7b9d03192959684de11ddf9c616ecfb314b199e9191f2ebbbfe0e0c9d6a3a5245668cde620e949e5891ca9a9d90a224fbf605dfb94d05b81aff127c5ae60
- languageName: node
- linkType: hard
-
"@babel/plugin-transform-computed-properties@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/plugin-transform-computed-properties@npm:7.18.9"
@@ -1467,17 +884,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-destructuring@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-destructuring@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 256573bd2712e292784befb82fcb88b070c16b4d129469ea886885d8fbafdbb072c9fcf7f82039d2c61b05f2005db34e5068b2a6e813941c41ce709249f357c1
- languageName: node
- linkType: hard
-
"@babel/plugin-transform-destructuring@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/plugin-transform-destructuring@npm:7.18.9"
@@ -1489,7 +895,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-dotall-regex@npm:^7.18.6":
+"@babel/plugin-transform-dotall-regex@npm:^7.18.6, @babel/plugin-transform-dotall-regex@npm:^7.4.4":
version: 7.18.6
resolution: "@babel/plugin-transform-dotall-regex@npm:7.18.6"
dependencies:
@@ -1501,29 +907,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-dotall-regex@npm:^7.4.4":
- version: 7.16.7
- resolution: "@babel/plugin-transform-dotall-regex@npm:7.16.7"
- dependencies:
- "@babel/helper-create-regexp-features-plugin": ^7.16.7
- "@babel/helper-plugin-utils": ^7.16.7
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 554570dddfd5bfd87ab307be520f69a3d4ed2d2db677c165971b400d4c96656d0c165b318e69f1735612dcd12e04c0ee257697dc26800e8a572ca73bc05fa0f4
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-duplicate-keys@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-duplicate-keys@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: c21797ae06e84e3d1502b1214279215e4dcb2e181198bfb9b1644e65ca0288441d3d70a9ea745f687095e9226b9a4a62b9e53fb944c8924b9591ce4e0039b042
- languageName: node
- linkType: hard
-
"@babel/plugin-transform-duplicate-keys@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/plugin-transform-duplicate-keys@npm:7.18.9"
@@ -1547,26 +930,15 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-flow-strip-types@npm:^7.17.12":
- version: 7.17.12
- resolution: "@babel/plugin-transform-flow-strip-types@npm:7.17.12"
- dependencies:
- "@babel/helper-plugin-utils": ^7.17.12
- "@babel/plugin-syntax-flow": ^7.17.12
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: c37d3cc00aaec2036d1046f5376820f5c6098df493bd9a4d9013c47e0f5ef9c213eb4567ba1ce466269d9771f5cdc76613309c310b696a0489a20e593c8967e2
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-for-of@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-for-of@npm:7.18.6"
+"@babel/plugin-transform-flow-strip-types@npm:^7.18.6":
+ version: 7.18.9
+ resolution: "@babel/plugin-transform-flow-strip-types@npm:7.18.9"
dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
+ "@babel/helper-plugin-utils": ^7.18.9
+ "@babel/plugin-syntax-flow": ^7.18.6
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: fd92e18d6cd90063c4d5c7562d8b6ed1c7bd6c13a9451966ebfcc5f0f5645f306de615207322eafd06e297ea2339e28ba664e3ed276759dde8e14fbdce4cf108
+ checksum: f25fe67b4986a5361539191ccfbf6a84fb6729db6f04c897799e2081c6b96b475cf4e05ab207bd63d7112d5d9465b5efbcc1def7940cba3ba69776a09f7db88d
languageName: node
linkType: hard
@@ -1581,19 +953,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-function-name@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-function-name@npm:7.18.6"
- dependencies:
- "@babel/helper-compilation-targets": ^7.18.6
- "@babel/helper-function-name": ^7.18.6
- "@babel/helper-plugin-utils": ^7.18.6
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: d15d36f52d11a1b6dde3cfc0975eb9c030d66207875a722860bc0637f7515f94107b35320306967faaaa896523097e8f5c3dd6982d926f52016525ceaa9e3e42
- languageName: node
- linkType: hard
-
"@babel/plugin-transform-function-name@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/plugin-transform-function-name@npm:7.18.9"
@@ -1607,17 +966,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-literals@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-literals@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 859e2405d51931c8c0ea39890c0bcf6c7c01793fe99409844fe122e4c342528f87cd13b8210dd2873ecf5c643149b310c4bc5eb9a4c45928de142063ab04b2b8
- languageName: node
- linkType: hard
-
"@babel/plugin-transform-literals@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/plugin-transform-literals@npm:7.18.9"
@@ -1653,21 +1001,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-modules-commonjs@npm:^7.13.8":
- version: 7.18.2
- resolution: "@babel/plugin-transform-modules-commonjs@npm:7.18.2"
- dependencies:
- "@babel/helper-module-transforms": ^7.18.0
- "@babel/helper-plugin-utils": ^7.17.12
- "@babel/helper-simple-access": ^7.18.2
- babel-plugin-dynamic-import-node: ^2.3.3
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 99c1c5ce9c353e29eb680ebb5bdf27c076c6403e133a066999298de642423cc7f38cfbac02372d33ed73278da13be23c4be7d60169c3e27bd900a373e61a599a
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-modules-commonjs@npm:^7.18.6":
+"@babel/plugin-transform-modules-commonjs@npm:^7.13.8, @babel/plugin-transform-modules-commonjs@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/plugin-transform-modules-commonjs@npm:7.18.6"
dependencies:
@@ -1681,21 +1015,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-modules-systemjs@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-modules-systemjs@npm:7.18.6"
- dependencies:
- "@babel/helper-hoist-variables": ^7.18.6
- "@babel/helper-module-transforms": ^7.18.6
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/helper-validator-identifier": ^7.18.6
- babel-plugin-dynamic-import-node: ^2.3.3
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 69e476477fe4c18a5975aa683684b2db76c76013d2387110ffc7b221071ec611cd3961b68631bdae7a57cb5cc0decdbb07119ef168e9dcdae9ba803a7b352ab0
- languageName: node
- linkType: hard
-
"@babel/plugin-transform-modules-systemjs@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/plugin-transform-modules-systemjs@npm:7.18.9"
@@ -1758,17 +1077,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-parameters@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-parameters@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 35bfdf5b2e7f4c10b68aff317b6d47cc5b2261b85158f427696e1ce17f3da466a098ad4e57dc3deb4e7b349994313cfe459d42ecd5f4028989bcc710e62ed709
- languageName: node
- linkType: hard
-
"@babel/plugin-transform-parameters@npm:^7.18.8":
version: 7.18.8
resolution: "@babel/plugin-transform-parameters@npm:7.18.8"
@@ -1873,18 +1181,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-spread@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-spread@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/helper-skip-transparent-expression-wrappers": ^7.18.6
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 996b139ed68503700184f709dc996f285be285282d1780227185b622d9642f5bd60996fcfe910ed0495834f1935df805e7abb36b4b587222264c61020ba4485b
- languageName: node
- linkType: hard
-
"@babel/plugin-transform-spread@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/plugin-transform-spread@npm:7.18.9"
@@ -1908,17 +1204,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-template-literals@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-template-literals@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 6ec354415f92850c927dd3ad90e337df8ee1aeb4cdb2c643208bc8652be91f647c137846586b14bc2b2d7ec408c2b74af2d154ba0972a4fe8b559f8c3e07a3aa
- languageName: node
- linkType: hard
-
"@babel/plugin-transform-template-literals@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/plugin-transform-template-literals@npm:7.18.9"
@@ -1930,17 +1215,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-typeof-symbol@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-typeof-symbol@npm:7.18.6"
- dependencies:
- "@babel/helper-plugin-utils": ^7.18.6
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: b018ac3275958ed74caa2fdb900873bc61907e0cb8b70197ecd2f0e98611119d7a5831761bd14710882c94903e220e6338dd2e7346eca678c788b30457080a7e
- languageName: node
- linkType: hard
-
"@babel/plugin-transform-typeof-symbol@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/plugin-transform-typeof-symbol@npm:7.18.9"
@@ -1952,29 +1226,16 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-typescript@npm:^7.17.12":
- version: 7.18.4
- resolution: "@babel/plugin-transform-typescript@npm:7.18.4"
- dependencies:
- "@babel/helper-create-class-features-plugin": ^7.18.0
- "@babel/helper-plugin-utils": ^7.17.12
- "@babel/plugin-syntax-typescript": ^7.17.12
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: d4575d473af634f77070f847478dfd8de7662f9a531dbaedf1f99c49b6e9b7c76d7f562a9595a82a02867a55e1f3f0a4f48c6f8756712414065a232ed856b7ae
- languageName: node
- linkType: hard
-
"@babel/plugin-transform-typescript@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-transform-typescript@npm:7.18.6"
+ version: 7.18.8
+ resolution: "@babel/plugin-transform-typescript@npm:7.18.8"
dependencies:
"@babel/helper-create-class-features-plugin": ^7.18.6
"@babel/helper-plugin-utils": ^7.18.6
"@babel/plugin-syntax-typescript": ^7.18.6
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 9dc070304688dd183b2abb6bdac6f4b1939df7cc8caf32c57327bf90de26abce2130c5d807e82e25287d3a3e23f7532c9f7afd44a2e7bb815cae92015d352925
+ checksum: 627211f1658870274fcabf38a71bb08ae219e3ac672423083574fabe2c857f28d39243cb7279adada8468c912a7beebc0622770ed66885a1e33b84ccc8bfd7df
languageName: node
linkType: hard
@@ -2001,92 +1262,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/preset-env@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/preset-env@npm:7.18.6"
- dependencies:
- "@babel/compat-data": ^7.18.6
- "@babel/helper-compilation-targets": ^7.18.6
- "@babel/helper-plugin-utils": ^7.18.6
- "@babel/helper-validator-option": ^7.18.6
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": ^7.18.6
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": ^7.18.6
- "@babel/plugin-proposal-async-generator-functions": ^7.18.6
- "@babel/plugin-proposal-class-properties": ^7.18.6
- "@babel/plugin-proposal-class-static-block": ^7.18.6
- "@babel/plugin-proposal-dynamic-import": ^7.18.6
- "@babel/plugin-proposal-export-namespace-from": ^7.18.6
- "@babel/plugin-proposal-json-strings": ^7.18.6
- "@babel/plugin-proposal-logical-assignment-operators": ^7.18.6
- "@babel/plugin-proposal-nullish-coalescing-operator": ^7.18.6
- "@babel/plugin-proposal-numeric-separator": ^7.18.6
- "@babel/plugin-proposal-object-rest-spread": ^7.18.6
- "@babel/plugin-proposal-optional-catch-binding": ^7.18.6
- "@babel/plugin-proposal-optional-chaining": ^7.18.6
- "@babel/plugin-proposal-private-methods": ^7.18.6
- "@babel/plugin-proposal-private-property-in-object": ^7.18.6
- "@babel/plugin-proposal-unicode-property-regex": ^7.18.6
- "@babel/plugin-syntax-async-generators": ^7.8.4
- "@babel/plugin-syntax-class-properties": ^7.12.13
- "@babel/plugin-syntax-class-static-block": ^7.14.5
- "@babel/plugin-syntax-dynamic-import": ^7.8.3
- "@babel/plugin-syntax-export-namespace-from": ^7.8.3
- "@babel/plugin-syntax-import-assertions": ^7.18.6
- "@babel/plugin-syntax-json-strings": ^7.8.3
- "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4
- "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3
- "@babel/plugin-syntax-numeric-separator": ^7.10.4
- "@babel/plugin-syntax-object-rest-spread": ^7.8.3
- "@babel/plugin-syntax-optional-catch-binding": ^7.8.3
- "@babel/plugin-syntax-optional-chaining": ^7.8.3
- "@babel/plugin-syntax-private-property-in-object": ^7.14.5
- "@babel/plugin-syntax-top-level-await": ^7.14.5
- "@babel/plugin-transform-arrow-functions": ^7.18.6
- "@babel/plugin-transform-async-to-generator": ^7.18.6
- "@babel/plugin-transform-block-scoped-functions": ^7.18.6
- "@babel/plugin-transform-block-scoping": ^7.18.6
- "@babel/plugin-transform-classes": ^7.18.6
- "@babel/plugin-transform-computed-properties": ^7.18.6
- "@babel/plugin-transform-destructuring": ^7.18.6
- "@babel/plugin-transform-dotall-regex": ^7.18.6
- "@babel/plugin-transform-duplicate-keys": ^7.18.6
- "@babel/plugin-transform-exponentiation-operator": ^7.18.6
- "@babel/plugin-transform-for-of": ^7.18.6
- "@babel/plugin-transform-function-name": ^7.18.6
- "@babel/plugin-transform-literals": ^7.18.6
- "@babel/plugin-transform-member-expression-literals": ^7.18.6
- "@babel/plugin-transform-modules-amd": ^7.18.6
- "@babel/plugin-transform-modules-commonjs": ^7.18.6
- "@babel/plugin-transform-modules-systemjs": ^7.18.6
- "@babel/plugin-transform-modules-umd": ^7.18.6
- "@babel/plugin-transform-named-capturing-groups-regex": ^7.18.6
- "@babel/plugin-transform-new-target": ^7.18.6
- "@babel/plugin-transform-object-super": ^7.18.6
- "@babel/plugin-transform-parameters": ^7.18.6
- "@babel/plugin-transform-property-literals": ^7.18.6
- "@babel/plugin-transform-regenerator": ^7.18.6
- "@babel/plugin-transform-reserved-words": ^7.18.6
- "@babel/plugin-transform-shorthand-properties": ^7.18.6
- "@babel/plugin-transform-spread": ^7.18.6
- "@babel/plugin-transform-sticky-regex": ^7.18.6
- "@babel/plugin-transform-template-literals": ^7.18.6
- "@babel/plugin-transform-typeof-symbol": ^7.18.6
- "@babel/plugin-transform-unicode-escapes": ^7.18.6
- "@babel/plugin-transform-unicode-regex": ^7.18.6
- "@babel/preset-modules": ^0.1.5
- "@babel/types": ^7.18.6
- babel-plugin-polyfill-corejs2: ^0.3.1
- babel-plugin-polyfill-corejs3: ^0.5.2
- babel-plugin-polyfill-regenerator: ^0.3.1
- core-js-compat: ^3.22.1
- semver: ^6.3.0
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 0598ff98b69116e289174d89d976f27eff54d9d7f9f95a1feadf743c18021cd9785ddf2439de9af360f5625450816e4bc3b76ddd0c20ecc64e8802f943f07302
- languageName: node
- linkType: hard
-
-"@babel/preset-env@npm:^7.18.9":
+"@babel/preset-env@npm:^7.18.6, @babel/preset-env@npm:^7.18.9":
version: 7.18.9
resolution: "@babel/preset-env@npm:7.18.9"
dependencies:
@@ -2172,15 +1348,15 @@ __metadata:
linkType: hard
"@babel/preset-flow@npm:^7.13.13":
- version: 7.17.12
- resolution: "@babel/preset-flow@npm:7.17.12"
+ version: 7.18.6
+ resolution: "@babel/preset-flow@npm:7.18.6"
dependencies:
- "@babel/helper-plugin-utils": ^7.17.12
- "@babel/helper-validator-option": ^7.16.7
- "@babel/plugin-transform-flow-strip-types": ^7.17.12
+ "@babel/helper-plugin-utils": ^7.18.6
+ "@babel/helper-validator-option": ^7.18.6
+ "@babel/plugin-transform-flow-strip-types": ^7.18.6
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 21b123c21133eb0998f7b847176da392d49e894671c96785c2471d34845bb50cf4d376e1b4ea3edeafb8b258cc884cd3bed5882fe7ba8d7b0522f3829dea39c5
+ checksum: 9100d4eab3402e6601e361a5b235e46d90cfd389c12db19e2a071e1082ca2a00c04bd47eb185ce68d8979e7c8f3e548cd5d61b86dcd701135468fb929c3aecb6
languageName: node
linkType: hard
@@ -2199,20 +1375,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/preset-typescript@npm:^7.13.0":
- version: 7.17.12
- resolution: "@babel/preset-typescript@npm:7.17.12"
- dependencies:
- "@babel/helper-plugin-utils": ^7.17.12
- "@babel/helper-validator-option": ^7.16.7
- "@babel/plugin-transform-typescript": ^7.17.12
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: f4ee9eeb0ef631a47d1c9bd7f6e365ae0bacefa3f47c702b03c51652ea764c267b26fdcf2814718b26c73accdd0fff7fcec1bb2d00625a967ecd7dac2f5fdce1
- languageName: node
- linkType: hard
-
-"@babel/preset-typescript@npm:^7.18.6":
+"@babel/preset-typescript@npm:^7.13.0, @babel/preset-typescript@npm:^7.18.6":
version: 7.18.6
resolution: "@babel/preset-typescript@npm:7.18.6"
dependencies:
@@ -2226,8 +1389,8 @@ __metadata:
linkType: hard
"@babel/register@npm:^7.13.16":
- version: 7.17.7
- resolution: "@babel/register@npm:7.17.7"
+ version: 7.18.9
+ resolution: "@babel/register@npm:7.18.9"
dependencies:
clone-deep: ^4.0.1
find-cache-dir: ^2.0.0
@@ -2236,16 +1399,16 @@ __metadata:
source-map-support: ^0.5.16
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: b4b352a29487e9a45f3694e3f7cacc24668add2c3f9a45a5c8768a39cf495b1b49b7c95f0ebc6e415db4ac66317d20de15b3de96ca40f76d192137c4ad4cc7ce
+ checksum: 4aeaff97e061a397f632659082ba86c539ef8194697b236d991c10d1c2ea8f73213d3b5b3b2c24625951a1ef726b7a7d2e70f70ffcb37f79ef0c1a745eebef21
languageName: node
linkType: hard
"@babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.14.6, @babel/runtime@npm:^7.3.1, @babel/runtime@npm:^7.7.6, @babel/runtime@npm:^7.8.4, @babel/runtime@npm:^7.9.2":
- version: 7.18.3
- resolution: "@babel/runtime@npm:7.18.3"
+ version: 7.18.9
+ resolution: "@babel/runtime@npm:7.18.9"
dependencies:
regenerator-runtime: ^0.13.4
- checksum: db8526226aa02cfa35a5a7ac1a34b5f303c62a1f000c7db48cb06c6290e616483e5036ab3c4e7a84d0f3be6d4e2148d5fe5cec9564bf955f505c3e764b83d7f1
+ checksum: 36dd736baba7164e82b3cc9d43e081f0cb2d05ff867ad39cac515d99546cee75b7f782018b02a3dcf5f2ef3d27f319faa68965fdfec49d4912c60c6002353a2e
languageName: node
linkType: hard
@@ -2256,18 +1419,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/template@npm:^7.16.7, @babel/template@npm:^7.3.3":
- version: 7.16.7
- resolution: "@babel/template@npm:7.16.7"
- dependencies:
- "@babel/code-frame": ^7.16.7
- "@babel/parser": ^7.16.7
- "@babel/types": ^7.16.7
- checksum: 10cd112e89276e00f8b11b55a51c8b2f1262c318283a980f4d6cdb0286dc05734b9aaeeb9f3ad3311900b09bc913e02343fcaa9d4a4f413964aaab04eb84ac4a
- languageName: node
- linkType: hard
-
-"@babel/template@npm:^7.18.6":
+"@babel/template@npm:^7.18.6, @babel/template@npm:^7.3.3":
version: 7.18.6
resolution: "@babel/template@npm:7.18.6"
dependencies:
@@ -2278,43 +1430,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/traverse@npm:^7.13.0, @babel/traverse@npm:^7.18.0, @babel/traverse@npm:^7.18.2, @babel/traverse@npm:^7.7.2":
- version: 7.18.2
- resolution: "@babel/traverse@npm:7.18.2"
- dependencies:
- "@babel/code-frame": ^7.16.7
- "@babel/generator": ^7.18.2
- "@babel/helper-environment-visitor": ^7.18.2
- "@babel/helper-function-name": ^7.17.9
- "@babel/helper-hoist-variables": ^7.16.7
- "@babel/helper-split-export-declaration": ^7.16.7
- "@babel/parser": ^7.18.0
- "@babel/types": ^7.18.2
- debug: ^4.1.0
- globals: ^11.1.0
- checksum: e21c2d550bf610406cf21ef6fbec525cb1d80b9d6d71af67552478a24ee371203cb4025b23b110ae7288a62a874ad5898daad19ad23daa95dfc8ab47a47a092f
- languageName: node
- linkType: hard
-
-"@babel/traverse@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/traverse@npm:7.18.6"
- dependencies:
- "@babel/code-frame": ^7.18.6
- "@babel/generator": ^7.18.6
- "@babel/helper-environment-visitor": ^7.18.6
- "@babel/helper-function-name": ^7.18.6
- "@babel/helper-hoist-variables": ^7.18.6
- "@babel/helper-split-export-declaration": ^7.18.6
- "@babel/parser": ^7.18.6
- "@babel/types": ^7.18.6
- debug: ^4.1.0
- globals: ^11.1.0
- checksum: 5427a9db63984b2600f62b257dab18e3fc057997b69d708573bfc88eb5eacd6678fb24fddba082d6ac050734b8846ce110960be841ea1e461d66e2cde72b6b07
- languageName: node
- linkType: hard
-
-"@babel/traverse@npm:^7.18.9":
+"@babel/traverse@npm:^7.13.0, @babel/traverse@npm:^7.18.9, @babel/traverse@npm:^7.7.2":
version: 7.18.9
resolution: "@babel/traverse@npm:7.18.9"
dependencies:
@@ -2332,27 +1448,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/types@npm:^7.0.0, @babel/types@npm:^7.16.0, @babel/types@npm:^7.16.7, @babel/types@npm:^7.17.0, @babel/types@npm:^7.18.0, @babel/types@npm:^7.18.2, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4":
- version: 7.18.4
- resolution: "@babel/types@npm:7.18.4"
- dependencies:
- "@babel/helper-validator-identifier": ^7.16.7
- to-fast-properties: ^2.0.0
- checksum: 85df59beb99c1b95e9e41590442f2ffa1e5b1b558d025489db40c9f7c906bd03a17da26c3ec486e5800e80af27c42ca7eee9506d9212ab17766d2d68d30fbf52
- languageName: node
- linkType: hard
-
-"@babel/types@npm:^7.18.6, @babel/types@npm:^7.18.7":
- version: 7.18.7
- resolution: "@babel/types@npm:7.18.7"
- dependencies:
- "@babel/helper-validator-identifier": ^7.18.6
- to-fast-properties: ^2.0.0
- checksum: 3114ce161c4ebcb70271e168aa5af5cecedf3278209161d5ba6124bd3f9cb02e3f3ace587ad1b53f7baa153b6b3714720721c72a9ef3ec451663862f9cc1f014
- languageName: node
- linkType: hard
-
-"@babel/types@npm:^7.18.9":
+"@babel/types@npm:^7.0.0, @babel/types@npm:^7.17.0, @babel/types@npm:^7.18.6, @babel/types@npm:^7.18.9, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3":
version: 7.18.9
resolution: "@babel/types@npm:7.18.9"
dependencies:
@@ -2362,16 +1458,6 @@ __metadata:
languageName: node
linkType: hard
-"@babel/types@npm:^7.8.3":
- version: 7.17.0
- resolution: "@babel/types@npm:7.17.0"
- dependencies:
- "@babel/helper-validator-identifier": ^7.16.7
- to-fast-properties: ^2.0.0
- checksum: 12e5a287986fe557188e87b2c5202223f1dc83d9239a196ab936fdb9f8c1eb0be717ff19f934b5fad4e29a75586d5798f74bed209bccea1c20376b9952056f0e
- languageName: node
- linkType: hard
-
"@bcoe/v8-coverage@npm:^0.2.3":
version: 0.2.3
resolution: "@bcoe/v8-coverage@npm:0.2.3"
@@ -2627,37 +1713,37 @@ __metadata:
languageName: node
linkType: hard
-"@definitelytyped/header-parser@latest":
- version: 0.0.100
- resolution: "@definitelytyped/header-parser@npm:0.0.100"
+"@definitelytyped/header-parser@npm:latest":
+ version: 0.0.121
+ resolution: "@definitelytyped/header-parser@npm:0.0.121"
dependencies:
- "@definitelytyped/typescript-versions": ^0.0.100
+ "@definitelytyped/typescript-versions": ^0.0.121
"@types/parsimmon": ^1.10.1
parsimmon: ^1.13.0
- checksum: 1909fc809881b33204111969c9a3ea088bc9e29054ea709d10858a21b765fd2c18a5286251157dc5322f0f1546f2d08d80e31952034ce34beb92b8f38ba1234e
+ checksum: fed4328800f1031e6dd4064c8b869d97f56db97fa718bff323d52878eac61fb816c2d53b082fd16bd0dcf594fa57261dd4ffe08aa87ae08dd6585a6f4b4a8c72
languageName: node
linkType: hard
-"@definitelytyped/typescript-versions@latest, @definitelytyped/typescript-versions@npm:^0.0.100":
- version: 0.0.100
- resolution: "@definitelytyped/typescript-versions@npm:0.0.100"
- checksum: e30e8d798cbf4c615aa9ca33678e83f6b21b5c4a2c7e07a96f6d12716b19387cea306ebf30d149530e1e6cc112ea48a8ae59ac4e9039baee5c549633f878772d
+"@definitelytyped/typescript-versions@npm:^0.0.121, @definitelytyped/typescript-versions@npm:latest":
+ version: 0.0.121
+ resolution: "@definitelytyped/typescript-versions@npm:0.0.121"
+ checksum: d52b062f5a973a875ea95d18cf6f5582e8f70a7bbdd06b2b555e5b8b103f62d9dcc86ef32ccb2aafbce78abfb3013a53fd50d91bc5ca1acbe25a4963cdd93315
languageName: node
linkType: hard
-"@definitelytyped/utils@latest":
- version: 0.0.100
- resolution: "@definitelytyped/utils@npm:0.0.100"
+"@definitelytyped/utils@npm:latest":
+ version: 0.0.121
+ resolution: "@definitelytyped/utils@npm:0.0.121"
dependencies:
- "@definitelytyped/typescript-versions": ^0.0.100
+ "@definitelytyped/typescript-versions": ^0.0.121
"@qiwi/npm-registry-client": ^8.9.1
"@types/node": ^14.14.35
charm: ^1.0.2
fs-extra: ^8.1.0
fstream: ^1.0.12
- tar: ^2.2.2
+ tar: ^6.1.11
tar-stream: ^2.1.4
- checksum: 62c726c4c6160f69f4f696d3fa995d067c46e2f2e66bdd0bcb60b9db8310b3f6707c12216a8760c3f6ea078dc0ff0fa77cbc328628e41329d7f740d363a91560
+ checksum: 354f42ab32488f34304c658d7325319b87e54082e1a0865ab6a5b0227a6b74dc01f047ff49b6e38c115f0af9b22e4ddb89a1d701ddbf857c7b2cf9f6c4072330
languageName: node
linkType: hard
@@ -2931,14 +2017,45 @@ __metadata:
happy-dom: ^6.0.4
msw: ^0.44.2
prettier: ^2.7.1
- react: ^18.2.0
- react-dom: ^18.2.0
- react-icons: ^4.4.0
- react-syntax-highlighter: ^15.5.0
- remix: ^1.6.5
+ react: ^18.2.0
+ react-dom: ^18.2.0
+ react-icons: ^4.4.0
+ react-syntax-highlighter: ^15.5.0
+ remix: ^1.6.5
+ typescript: ^4.7.4
+ unocss: ^0.44.5
+ vitest: ^0.18.1
+ languageName: unknown
+ linkType: soft
+
+"@discordjs/ws@workspace:packages/ws":
+ version: 0.0.0-use.local
+ resolution: "@discordjs/ws@workspace:packages/ws"
+ dependencies:
+ "@discordjs/collection": "workspace:^"
+ "@discordjs/docgen": "workspace:^"
+ "@discordjs/rest": "workspace:^"
+ "@discordjs/scripts": "workspace:^"
+ "@favware/cliff-jumper": ^1.8.5
+ "@microsoft/api-extractor": ^7.28.3
+ "@sapphire/async-queue": ^1.3.1
+ "@types/node": ^18.0.3
+ "@types/ws": ^8.5.3
+ "@vladfrangu/async_event_emitter": ^2.0.1
+ c8: ^7.11.3
+ discord-api-types: ^0.36.1
+ eslint: ^8.19.0
+ mock-socket: ^9.1.5
+ prettier: ^2.7.1
+ rollup-plugin-typescript2: ^0.32.1
+ tslib: ^2.4.0
+ tsup: ^6.1.3
typescript: ^4.7.4
- unocss: ^0.44.5
- vitest: ^0.18.1
+ unbuild: ^0.7.6
+ undici: ^5.8.0
+ vitest: ^0.17.0
+ ws: ^8.8.0
+ zlib-sync: ^0.1.7
languageName: unknown
linkType: soft
@@ -3010,21 +2127,21 @@ __metadata:
languageName: node
linkType: hard
-"@gar/promisify@npm:^1.0.1":
- version: 1.1.2
- resolution: "@gar/promisify@npm:1.1.2"
- checksum: d05081e0887a49c178b75ee3067bd6ee086f73c154d121b854fb2e044e8a89cb1cbb6de3a0dd93a519b80f0531fda68b099dd7256205f7fbb3490324342f2217
+"@gar/promisify@npm:^1.0.1, @gar/promisify@npm:^1.1.3":
+ version: 1.1.3
+ resolution: "@gar/promisify@npm:1.1.3"
+ checksum: 4059f790e2d07bf3c3ff3e0fec0daa8144fe35c1f6e0111c9921bd32106adaa97a4ab096ad7dab1e28ee6a9060083c4d1a4ada42a7f5f3f7a96b8812e2b757c1
languageName: node
linkType: hard
"@humanwhocodes/config-array@npm:^0.9.2":
- version: 0.9.2
- resolution: "@humanwhocodes/config-array@npm:0.9.2"
+ version: 0.9.5
+ resolution: "@humanwhocodes/config-array@npm:0.9.5"
dependencies:
"@humanwhocodes/object-schema": ^1.2.1
debug: ^4.1.1
minimatch: ^3.0.4
- checksum: 28a9e2974c50a86765cb6cc96e03d29187ea33fdaba62c4f35db89002e3cfbd340e64c9f6cf869e33e2e5cdcc06e78763458f4178d38a6f30aea1308787ca706
+ checksum: 8ba6281bc0590f6c6eadeefc14244b5a3e3f5903445aadd1a32099ed80e753037674026ce1b3c945ab93561bea5eb29e3c5bff67060e230c295595ba517a3492
languageName: node
linkType: hard
@@ -3233,15 +2350,6 @@ __metadata:
languageName: node
linkType: hard
-"@jest/schemas@npm:^28.0.2":
- version: 28.0.2
- resolution: "@jest/schemas@npm:28.0.2"
- dependencies:
- "@sinclair/typebox": ^0.23.3
- checksum: 6a177e97b112c99f377697fe803a34f4489b92cd07949876250c69edc9029c7cbda771fcbb03caebd20ffbcfa89b9c22b4dc9d1e9a7fbc9873185459b48ba780
- languageName: node
- linkType: hard
-
"@jest/schemas@npm:^28.1.3":
version: 28.1.3
resolution: "@jest/schemas@npm:28.1.3"
@@ -3309,19 +2417,6 @@ __metadata:
languageName: node
linkType: hard
-"@jest/types@npm:^27.4.2":
- version: 27.4.2
- resolution: "@jest/types@npm:27.4.2"
- dependencies:
- "@types/istanbul-lib-coverage": ^2.0.0
- "@types/istanbul-reports": ^3.0.0
- "@types/node": "*"
- "@types/yargs": ^16.0.0
- chalk: ^4.0.0
- checksum: 1191022023e32763063cc1c8b1143fa316fb05db2f9698280a7bdbafcabd989e5fd64f8eb875b8a2e54c53f25dba45ed2eea8ced394d9e484da0fda674cd17a5
- languageName: node
- linkType: hard
-
"@jest/types@npm:^28.1.3":
version: 28.1.3
resolution: "@jest/types@npm:28.1.3"
@@ -3346,17 +2441,6 @@ __metadata:
languageName: node
linkType: hard
-"@jridgewell/gen-mapping@npm:^0.3.0":
- version: 0.3.1
- resolution: "@jridgewell/gen-mapping@npm:0.3.1"
- dependencies:
- "@jridgewell/set-array": ^1.0.0
- "@jridgewell/sourcemap-codec": ^1.4.10
- "@jridgewell/trace-mapping": ^0.3.9
- checksum: e9e7bb3335dea9e60872089761d4e8e089597360cdb1af90370e9d53b7d67232c1e0a3ab65fbfef4fc785745193fbc56bff9f3a6cab6c6ce3f15e12b4191f86b
- languageName: node
- linkType: hard
-
"@jridgewell/gen-mapping@npm:^0.3.2":
version: 0.3.2
resolution: "@jridgewell/gen-mapping@npm:0.3.2"
@@ -3369,20 +2453,13 @@ __metadata:
linkType: hard
"@jridgewell/resolve-uri@npm:^3.0.3":
- version: 3.0.4
- resolution: "@jridgewell/resolve-uri@npm:3.0.4"
- checksum: 799bcba2730280a42f11b4d41a5d34d68ce72cb1bd23186bd3356607c93b62765b2b050e5dfb67f04ce4e817f882bfc10a4d1c43fe2d8eeb38371c98d71217b4
- languageName: node
- linkType: hard
-
-"@jridgewell/set-array@npm:^1.0.0":
- version: 1.1.1
- resolution: "@jridgewell/set-array@npm:1.1.1"
- checksum: cc5d91e0381c347e3edee4ca90b3c292df9e6e55f29acbe0dd97de8651b4730e9ab761406fd572effa79972a0edc55647b627f8c72315e276d959508853d9bf2
+ version: 3.1.0
+ resolution: "@jridgewell/resolve-uri@npm:3.1.0"
+ checksum: b5ceaaf9a110fcb2780d1d8f8d4a0bfd216702f31c988d8042e5f8fbe353c55d9b0f55a1733afdc64806f8e79c485d2464680ac48a0d9fcadb9548ee6b81d267
languageName: node
linkType: hard
-"@jridgewell/set-array@npm:^1.0.1":
+"@jridgewell/set-array@npm:^1.0.0, @jridgewell/set-array@npm:^1.0.1":
version: 1.1.2
resolution: "@jridgewell/set-array@npm:1.1.2"
checksum: 69a84d5980385f396ff60a175f7177af0b8da4ddb81824cb7016a9ef914eee9806c72b6b65942003c63f7983d4f39a5c6c27185bbca88eb4690b62075602e28e
@@ -3390,9 +2467,9 @@ __metadata:
linkType: hard
"@jridgewell/sourcemap-codec@npm:^1.4.10":
- version: 1.4.11
- resolution: "@jridgewell/sourcemap-codec@npm:1.4.11"
- checksum: 3b2afaf8400fb07a36db60e901fcce6a746cdec587310ee9035939d89878e57b2dec8173b0b8f63176f647efa352294049a53c49739098eb907ff81fec2547c8
+ version: 1.4.14
+ resolution: "@jridgewell/sourcemap-codec@npm:1.4.14"
+ checksum: 61100637b6d173d3ba786a5dff019e1a74b1f394f323c1fee337ff390239f053b87266c7a948777f4b1ee68c01a8ad0ab61e5ff4abb5a012a0b091bec391ab97
languageName: node
linkType: hard
@@ -3406,7 +2483,7 @@ __metadata:
languageName: node
linkType: hard
-"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.13":
+"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.13, @jridgewell/trace-mapping@npm:^0.3.9":
version: 0.3.14
resolution: "@jridgewell/trace-mapping@npm:0.3.14"
dependencies:
@@ -3416,32 +2493,22 @@ __metadata:
languageName: node
linkType: hard
-"@jridgewell/trace-mapping@npm:^0.3.7, @jridgewell/trace-mapping@npm:^0.3.9":
- version: 0.3.13
- resolution: "@jridgewell/trace-mapping@npm:0.3.13"
- dependencies:
- "@jridgewell/resolve-uri": ^3.0.3
- "@jridgewell/sourcemap-codec": ^1.4.10
- checksum: e38254e830472248ca10a6ed1ae75af5e8514f0680245a5e7b53bc3c030fd8691d4d3115d80595b45d3badead68269769ed47ecbbdd67db1343a11f05700e75a
- languageName: node
- linkType: hard
-
-"@microsoft/api-extractor-model@npm:7.22.0, @microsoft/api-extractor-model@npm:^7.22.0":
- version: 7.22.0
- resolution: "@microsoft/api-extractor-model@npm:7.22.0"
+"@microsoft/api-extractor-model@npm:7.22.1, @microsoft/api-extractor-model@npm:^7.22.0":
+ version: 7.22.1
+ resolution: "@microsoft/api-extractor-model@npm:7.22.1"
dependencies:
"@microsoft/tsdoc": 0.14.1
"@microsoft/tsdoc-config": ~0.16.1
"@rushstack/node-core-library": 3.49.0
- checksum: 3dfc2459fea007ab44fddff56156b2a0372204636a133b196a48e0b9f7b77953c4ccd735a7307d010e7de57483e1bf3e4a1ecc0adb1ceaaa65bc9d82f1e63fb9
+ checksum: f1e583cc95abf383e0650568ec3c8a32810de3f47175308f7f867b5b5fa18a92d6fdb2d1f035f54b77c9346ad8a4070c8c70a18602de80a404b2ff3310d9334d
languageName: node
linkType: hard
-"@microsoft/api-extractor@npm:^7.28.5":
- version: 7.28.5
- resolution: "@microsoft/api-extractor@npm:7.28.5"
+"@microsoft/api-extractor@npm:^7.28.3, @microsoft/api-extractor@npm:^7.28.5":
+ version: 7.28.6
+ resolution: "@microsoft/api-extractor@npm:7.28.6"
dependencies:
- "@microsoft/api-extractor-model": 7.22.0
+ "@microsoft/api-extractor-model": 7.22.1
"@microsoft/tsdoc": 0.14.1
"@microsoft/tsdoc-config": ~0.16.1
"@rushstack/node-core-library": 3.49.0
@@ -3455,7 +2522,7 @@ __metadata:
typescript: ~4.6.3
bin:
api-extractor: bin/api-extractor
- checksum: 3278dca7c2e79f6d27e5210f1c056a9ea92aa428811ee94d45777146bd3121e667570ac9875bf875b8a977ef1f74a1cf3873bec9fcf5c64e7c473a6fb6ae2587
+ checksum: a287e12c84c8c11690783f1118b7cc2e02f777ef21c72e9e37bd920a4837ab09a05888ce0d25f8d29af0032465b80ab62e9a111b169226c49b17e8b97b21f598
languageName: node
linkType: hard
@@ -3532,12 +2599,22 @@ __metadata:
linkType: hard
"@npmcli/fs@npm:^1.0.0":
- version: 1.1.0
- resolution: "@npmcli/fs@npm:1.1.0"
+ version: 1.1.1
+ resolution: "@npmcli/fs@npm:1.1.1"
dependencies:
"@gar/promisify": ^1.0.1
semver: ^7.3.5
- checksum: e435b883b4f8da8c95a820f458cabb7d86582406eed5ad79fc689000d3e2df17e1f475c4903627272c001357cabc70d8b4c62520cbdae8cfab1dfdd51949f408
+ checksum: f5ad92f157ed222e4e31c352333d0901df02c7c04311e42a81d8eb555d4ec4276ea9c635011757de20cc476755af33e91622838de573b17e52e2e7703f0a9965
+ languageName: node
+ linkType: hard
+
+"@npmcli/fs@npm:^2.1.0":
+ version: 2.1.1
+ resolution: "@npmcli/fs@npm:2.1.1"
+ dependencies:
+ "@gar/promisify": ^1.1.3
+ semver: ^7.3.5
+ checksum: 4944a0545d38d3e6e29780eeb3cd4be6059c1e9627509d2c9ced635c53b852d28b37cdc615a2adf815b51ab8673adb6507e370401a20a7e90c8a6dc4fac02389
languageName: node
linkType: hard
@@ -3551,6 +2628,16 @@ __metadata:
languageName: node
linkType: hard
+"@npmcli/move-file@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "@npmcli/move-file@npm:2.0.0"
+ dependencies:
+ mkdirp: ^1.0.4
+ rimraf: ^3.0.2
+ checksum: 1388777b507b0c592d53f41b9d182e1a8de7763bc625fc07999b8edbc22325f074e5b3ec90af79c89d6987fdb2325bc66d59f483258543c14a43661621f841b0
+ languageName: node
+ linkType: hard
+
"@npmcli/package-json@npm:^2.0.0":
version: 2.0.0
resolution: "@npmcli/package-json@npm:2.0.0"
@@ -3760,16 +2847,16 @@ __metadata:
linkType: hard
"@remix-run/web-fetch@npm:^4.1.3":
- version: 4.1.3
- resolution: "@remix-run/web-fetch@npm:4.1.3"
+ version: 4.2.0
+ resolution: "@remix-run/web-fetch@npm:4.2.0"
dependencies:
"@remix-run/web-blob": ^3.0.4
- "@remix-run/web-form-data": ^3.0.2
+ "@remix-run/web-form-data": ^3.0.3
"@remix-run/web-stream": ^1.0.3
"@web3-storage/multipart-parser": ^1.0.0
data-uri-to-buffer: ^3.0.1
mrmime: ^1.0.0
- checksum: 157c7f4cb8d08980de546a850cacca8513d06482d7b55889b10cfadbf2da9f1a063d3f6c8766eab8c29dabd0803af8810c831e6a3eeb07412e14542ccef3efc9
+ checksum: ecd91b6942cc9af5ac4c55def04aa107b118e84a68776f92c0fd5d4688013dab150fd9b83e2629b3ec4178768110343cc773bcdbad625e6b47c5f2b8bf5a80aa
languageName: node
linkType: hard
@@ -3782,12 +2869,12 @@ __metadata:
languageName: node
linkType: hard
-"@remix-run/web-form-data@npm:^3.0.2":
- version: 3.0.2
- resolution: "@remix-run/web-form-data@npm:3.0.2"
+"@remix-run/web-form-data@npm:^3.0.3":
+ version: 3.0.3
+ resolution: "@remix-run/web-form-data@npm:3.0.3"
dependencies:
web-encoding: 1.1.5
- checksum: 8b41caf2c2897741b4d7451a8d9a206345c59964f5ed7d245d950fb4f70683eade28834c4328b6a9a11d0850a7043d1fbf48d4066ac16510582cd9c737794d46
+ checksum: e22a07e6ebf1e703108872ec606a3fbe664868c1fb463cb35df905a93db3b3a7aa4a8e37bc7b0c4b3fe3cab6aaddc4c73b61c9e6b7457e99d09e66ed7a28efb6
languageName: node
linkType: hard
@@ -3929,7 +3016,7 @@ __metadata:
languageName: node
linkType: hard
-"@sapphire/async-queue@npm:^1.3.2":
+"@sapphire/async-queue@npm:^1.3.1, @sapphire/async-queue@npm:^1.3.2":
version: 1.3.2
resolution: "@sapphire/async-queue@npm:1.3.2"
checksum: 348f35a278bff68cb6d5e2c2219b03ce66243162522003bb14426e5fdad251300bea8ef3883043eb034c181dddd52296a519e9f377075a5b31074807fe163e76
@@ -3937,11 +3024,11 @@ __metadata:
linkType: hard
"@sapphire/fetch@npm:^2.0.0":
- version: 2.0.3
- resolution: "@sapphire/fetch@npm:2.0.3"
+ version: 2.4.1
+ resolution: "@sapphire/fetch@npm:2.4.1"
dependencies:
- cross-fetch: ^3.1.4
- checksum: 7e0ddbd79c0d84f322c5ba3c50a9d353a599ff39279f698f21433cf6e3cf8eaf6e9a87d805b68b6c1c15c7106b8a47c4a049e00c0e7f715fb76d43a00cbd8595
+ cross-fetch: ^3.1.5
+ checksum: f8ab0baa59dfcb931729a46957073e4e26377b6b5e3bdbbed921ae793c0848a240545ed157efd5db13342d68eed84dc73c6fe83038a5e62af9daa3715326c4a9
languageName: node
linkType: hard
@@ -3969,24 +3056,10 @@ __metadata:
languageName: node
linkType: hard
-"@sapphire/utilities@npm:^3.0.1":
- version: 3.1.0
- resolution: "@sapphire/utilities@npm:3.1.0"
- checksum: aa0628352faf8c52774740c53a26ca7154b133ffbe86efaf9684de67c9d8d913732f99108d15babf4e4f9c2bc6e71070466bc8585be9a7add1659533aa2b5716
- languageName: node
- linkType: hard
-
-"@sapphire/utilities@npm:^3.6.2":
- version: 3.6.2
- resolution: "@sapphire/utilities@npm:3.6.2"
- checksum: 71210753b446f3f2835dd9d28fb10767f4c6f005b465eea179082d9f2c071acb7dcd2aebdf7c4974b26aad3ab2374a1dd168a66371b06bd65f248bbca4a90cda
- languageName: node
- linkType: hard
-
-"@sinclair/typebox@npm:^0.23.3":
- version: 0.23.5
- resolution: "@sinclair/typebox@npm:0.23.5"
- checksum: c96056d35d9cb862aeb635ff8873e2e7633e668dd544e162aee2690a82c970d0b3f90aa2b3501fe374dfa8e792388559a3e3a86712b23ebaef10061add534f47
+"@sapphire/utilities@npm:^3.0.1, @sapphire/utilities@npm:^3.6.2":
+ version: 3.7.0
+ resolution: "@sapphire/utilities@npm:3.7.0"
+ checksum: 3b574586242f015859e913123a5311774ad2d6cb79241c2a3d447a585282bdb04cddcd8e086f757a8ae5d2c49f4a25b4f848d63cebe605c7641364b51c3cfa11
languageName: node
linkType: hard
@@ -4043,23 +3116,7 @@ __metadata:
languageName: node
linkType: hard
-"@testing-library/dom@npm:^8.1.0, @testing-library/dom@npm:^8.5.0":
- version: 8.13.0
- resolution: "@testing-library/dom@npm:8.13.0"
- dependencies:
- "@babel/code-frame": ^7.10.4
- "@babel/runtime": ^7.12.5
- "@types/aria-query": ^4.2.0
- aria-query: ^5.0.0
- chalk: ^4.1.0
- dom-accessibility-api: ^0.5.9
- lz-string: ^1.4.4
- pretty-format: ^27.0.2
- checksum: 880f1872b9949800d4444e3bdbd03df86d6f41ec7c27136dff1da29e87d2df2d7ee904afcdf895ffce351c25bd12119117eae023354d50e707ad56d43b2ed3ed
- languageName: node
- linkType: hard
-
-"@testing-library/dom@npm:^8.16.0":
+"@testing-library/dom@npm:^8.1.0, @testing-library/dom@npm:^8.16.0, @testing-library/dom@npm:^8.5.0":
version: 8.16.0
resolution: "@testing-library/dom@npm:8.16.0"
dependencies:
@@ -4129,31 +3186,38 @@ __metadata:
languageName: node
linkType: hard
+"@tootallnate/once@npm:2":
+ version: 2.0.0
+ resolution: "@tootallnate/once@npm:2.0.0"
+ checksum: ad87447820dd3f24825d2d947ebc03072b20a42bfc96cbafec16bff8bbda6c1a81fcb0be56d5b21968560c5359a0af4038a68ba150c3e1694fe4c109a063bed8
+ languageName: node
+ linkType: hard
+
"@tsconfig/node10@npm:^1.0.7":
- version: 1.0.8
- resolution: "@tsconfig/node10@npm:1.0.8"
- checksum: b8d5fffbc6b17ef64ef74f7fdbccee02a809a063ade785c3648dae59406bc207f70ea2c4296f92749b33019fa36a5ae716e42e49cc7f1bbf0fd147be0d6b970a
+ version: 1.0.9
+ resolution: "@tsconfig/node10@npm:1.0.9"
+ checksum: a33ae4dc2a621c0678ac8ac4bceb8e512ae75dac65417a2ad9b022d9b5411e863c4c198b6ba9ef659e14b9fb609bbec680841a2e84c1172df7a5ffcf076539df
languageName: node
linkType: hard
"@tsconfig/node12@npm:^1.0.7":
- version: 1.0.9
- resolution: "@tsconfig/node12@npm:1.0.9"
- checksum: a01b2400ab3582b86b589c6d31dcd0c0656f333adecde85d6d7d4086adb059808b82692380bb169546d189bf771ae21d02544a75b57bd6da4a5dd95f8567bec9
+ version: 1.0.11
+ resolution: "@tsconfig/node12@npm:1.0.11"
+ checksum: 5ce29a41b13e7897a58b8e2df11269c5395999e588b9a467386f99d1d26f6c77d1af2719e407621412520ea30517d718d5192a32403b8dfcc163bf33e40a338a
languageName: node
linkType: hard
"@tsconfig/node14@npm:^1.0.0":
- version: 1.0.1
- resolution: "@tsconfig/node14@npm:1.0.1"
- checksum: 976345e896c0f059867f94f8d0f6ddb8b1844fb62bf36b727de8a9a68f024857e5db97ed51d3325e23e0616a5e48c034ff51a8d595b3fe7e955f3587540489be
+ version: 1.0.3
+ resolution: "@tsconfig/node14@npm:1.0.3"
+ checksum: 19275fe80c4c8d0ad0abed6a96dbf00642e88b220b090418609c4376e1cef81bf16237bf170ad1b341452feddb8115d8dd2e5acdfdea1b27422071163dc9ba9d
languageName: node
linkType: hard
"@tsconfig/node16@npm:^1.0.2":
- version: 1.0.2
- resolution: "@tsconfig/node16@npm:1.0.2"
- checksum: ca94d3639714672bbfd55f03521d3f56bb6a25479bd425da81faf21f13e1e9d15f40f97377dedbbf477a5841c5b0c8f4cd1b391f33553d750b9202c54c2c07aa
+ version: 1.0.3
+ resolution: "@tsconfig/node16@npm:1.0.3"
+ checksum: 3a8b657dd047495b7ad23437d6afd20297ce90380ff0bdee93fc7d39a900dbd8d9e26e53ff6b465e7967ce2adf0b218782590ce9013285121e6a5928fbd6819f
languageName: node
linkType: hard
@@ -4311,9 +3375,9 @@ __metadata:
linkType: hard
"@types/estree@npm:*":
- version: 0.0.50
- resolution: "@types/estree@npm:0.0.50"
- checksum: 9a2b6a4a8c117f34d08fbda5e8f69b1dfb109f7d149b60b00fd7a9fb6ac545c078bc590aa4ec2f0a256d680cf72c88b3b28b60c326ee38a7bc8ee1ee95624922
+ version: 1.0.0
+ resolution: "@types/estree@npm:1.0.0"
+ checksum: 910d97fb7092c6738d30a7430ae4786a38542023c6302b95d46f49420b797f21619cdde11fa92b338366268795884111c2eb10356e4bd2c8ad5b92941e9e6443
languageName: node
linkType: hard
@@ -4324,13 +3388,6 @@ __metadata:
languageName: node
linkType: hard
-"@types/estree@npm:^0.0.46":
- version: 0.0.46
- resolution: "@types/estree@npm:0.0.46"
- checksum: 620f7549c8cf99fe1c91a943a42ae2684c18f6007dc1bd6a439a2bf3204022ab746ffb3be5244c70d43a822beeb3c948216be1a69cb25e79005daeca4ebe5722
- languageName: node
- linkType: hard
-
"@types/estree@npm:^0.0.51":
version: 0.0.51
resolution: "@types/estree@npm:0.0.51"
@@ -4407,17 +3464,7 @@ __metadata:
languageName: node
linkType: hard
-"@types/jest@npm:*":
- version: 28.1.1
- resolution: "@types/jest@npm:28.1.1"
- dependencies:
- jest-matcher-utils: ^27.0.0
- pretty-format: ^27.0.0
- checksum: 0a8b045a7b660372decc807c390d3f99a2b12bb1659a1cd593afe04557f4b7c235b0576a5e35b1577710d20e42759d3d8755eb8bed6edc8733f47007e75a5509
- languageName: node
- linkType: hard
-
-"@types/jest@npm:^28.1.6":
+"@types/jest@npm:*, @types/jest@npm:^28.1.6":
version: 28.1.6
resolution: "@types/jest@npm:28.1.6"
dependencies:
@@ -4449,9 +3496,9 @@ __metadata:
linkType: hard
"@types/json-schema@npm:*, @types/json-schema@npm:^7.0.9":
- version: 7.0.9
- resolution: "@types/json-schema@npm:7.0.9"
- checksum: 259d0e25f11a21ba5c708f7ea47196bd396e379fddb79c76f9f4f62c945879dc21657904914313ec2754e443c5018ea8372362f323f30e0792897fdb2098a705
+ version: 7.0.11
+ resolution: "@types/json-schema@npm:7.0.11"
+ checksum: 527bddfe62db9012fccd7627794bd4c71beb77601861055d87e3ee464f2217c85fca7a4b56ae677478367bbd248dbde13553312b7d4dbc702a2f2bbf60c4018d
languageName: node
linkType: hard
@@ -4525,10 +3572,10 @@ __metadata:
languageName: node
linkType: hard
-"@types/node@npm:*":
- version: 17.0.6
- resolution: "@types/node@npm:17.0.6"
- checksum: 36fda5555ec759132886721f59fa74333947f7148b7dcce3de0a78c36f37f57ec86a3d09fd38c835ba65c8de77905de6c01523ec99864d8cead83f404118a44a
+"@types/node@npm:*, @types/node@npm:>=12, @types/node@npm:^18.0.3":
+ version: 18.0.6
+ resolution: "@types/node@npm:18.0.6"
+ checksum: 780f8885a6b6eb12f4c0246617747fdc37a451931b3c01ce8148d356c0903b705dcb16cc6a914de63d48b0dc1b002c7a3dfae681f580e1761aa551d3cd996813
languageName: node
linkType: hard
@@ -4539,13 +3586,6 @@ __metadata:
languageName: node
linkType: hard
-"@types/node@npm:>=12":
- version: 17.0.17
- resolution: "@types/node@npm:17.0.17"
- checksum: 8ddba2829acdf1684fbd8fd248ec13f033efb70ecd1085677b547c40ef8e936a006b95eac3bdc28c47939c62526f3f027afeb4a930e30e4394923bbae4626476
- languageName: node
- linkType: hard
-
"@types/node@npm:^10.0.3":
version: 10.17.60
resolution: "@types/node@npm:10.17.60"
@@ -4553,17 +3593,10 @@ __metadata:
languageName: node
linkType: hard
-"@types/node@npm:^14.14.31":
- version: 14.18.21
- resolution: "@types/node@npm:14.18.21"
- checksum: 4ed35b76609647a4e36a194702e31cdda9ed42174ddaf7937bc5498984e98a99e8a42ea895ea17dd9c5ec18080112c29ab670c34f90eb9f7a4703b85b31e34fa
- languageName: node
- linkType: hard
-
-"@types/node@npm:^14.14.35":
- version: 14.18.4
- resolution: "@types/node@npm:14.18.4"
- checksum: 12015baff875140579d4c8982a7c239685ceee3a7b0ea58e6d6918d001582a752bfbc13e5c06c745e2bb10261068e632929fdf3e013c98fba006cd0cc4c67bf9
+"@types/node@npm:^14.14.31, @types/node@npm:^14.14.35":
+ version: 14.18.22
+ resolution: "@types/node@npm:14.18.22"
+ checksum: 5cec8276b834b8988f0af69655423e816729a5757d2015a3199156bdc98ea55206338fad752b26236c55d431dce24eb973b4f5a8918f8e6b17056ffcc12edc08
languageName: node
linkType: hard
@@ -4623,16 +3656,7 @@ __metadata:
languageName: node
linkType: hard
-"@types/react-dom@npm:^18.0.0":
- version: 18.0.5
- resolution: "@types/react-dom@npm:18.0.5"
- dependencies:
- "@types/react": "*"
- checksum: cd48b81950f499b52a3f0c08261f00046f9b7c96699fa249c9664e257e820daf6ecac815cd1028cebc9d105094adc39d047d1efd79214394b8b2d515574c0787
- languageName: node
- linkType: hard
-
-"@types/react-dom@npm:^18.0.6":
+"@types/react-dom@npm:^18.0.0, @types/react-dom@npm:^18.0.6":
version: 18.0.6
resolution: "@types/react-dom@npm:18.0.6"
dependencies:
@@ -4651,13 +3675,13 @@ __metadata:
linkType: hard
"@types/react@npm:*":
- version: 18.0.12
- resolution: "@types/react@npm:18.0.12"
+ version: 18.0.15
+ resolution: "@types/react@npm:18.0.15"
dependencies:
"@types/prop-types": "*"
"@types/scheduler": "*"
csstype: ^3.0.2
- checksum: 526ea13b3adf7fe4b475e55b7426510a7861ef2910664a9014ef42cba0c699d5167dc378eb161e2ec26c07a3b6fde9b6bdcbbb6f4b5580612246bc289395ef03
+ checksum: e22cc388d1c145aa184787e44dc28db4789976c704cd5db475c170bb76a560eb81def5f346cfe750949bb3d43ad88822b8cbb9f19b1286e3795892a8263e7715
languageName: node
linkType: hard
@@ -4736,11 +3760,11 @@ __metadata:
linkType: hard
"@types/testing-library__jest-dom@npm:^5.9.1":
- version: 5.14.3
- resolution: "@types/testing-library__jest-dom@npm:5.14.3"
+ version: 5.14.5
+ resolution: "@types/testing-library__jest-dom@npm:5.14.5"
dependencies:
"@types/jest": "*"
- checksum: 203443d0e7e5929fbc9e441146f92d85efa033b4697e427ed0164df1c40b720b6bb9bbd96a3171ea5fd8d9301b538fd0f49d4f35594d142afd0f6d2ecac25785
+ checksum: dcb05416758fe88c1f4f3aa97b4699fcb46a5ed8f53c6b81721e66155452a48caf12ecb97dfdfd4130678e65efd66b9fca0ac434b3d63affec84842a84a6bf38
languageName: node
linkType: hard
@@ -4761,18 +3785,9 @@ __metadata:
linkType: hard
"@types/yargs-parser@npm:*":
- version: 20.2.1
- resolution: "@types/yargs-parser@npm:20.2.1"
- checksum: 1d039e64494a7a61ddd278349a3dc60b19f99ff0517425696e796f794e4252452b9d62178e69755ad03f439f9dc0c8c3d7b3a1201b3a24e134bac1a09fa11eaa
- languageName: node
- linkType: hard
-
-"@types/yargs@npm:^16.0.0":
- version: 16.0.4
- resolution: "@types/yargs@npm:16.0.4"
- dependencies:
- "@types/yargs-parser": "*"
- checksum: caa21d2c957592fe2184a8368c8cbe5a82a6c2e2f2893722e489f842dc5963293d2f3120bc06fe3933d60a3a0d1e2eb269649fd6b1947fe1820f8841ba611dd9
+ version: 21.0.0
+ resolution: "@types/yargs-parser@npm:21.0.0"
+ checksum: b2f4c8d12ac18a567440379909127cf2cec393daffb73f246d0a25df36ea983b93b7e9e824251f959e9f928cbc7c1aab6728d0a0ff15d6145f66cec2be67d9a2
languageName: node
linkType: hard
@@ -5113,6 +4128,13 @@ __metadata:
languageName: node
linkType: hard
+"@vladfrangu/async_event_emitter@npm:^2.0.1":
+ version: 2.0.1
+ resolution: "@vladfrangu/async_event_emitter@npm:2.0.1"
+ checksum: 96aec2c774676c3af47651167cb8ce1eba386c512aeac44731b09080f3a6faed7286993c37086da6cf600027f3281572d7beb8bc650f2fb257749ac99e6e2f6a
+ languageName: node
+ linkType: hard
+
"@vscode/codicons@npm:^0.0.31":
version: 0.0.31
resolution: "@vscode/codicons@npm:0.0.31"
@@ -5206,21 +4228,12 @@ __metadata:
languageName: node
linkType: hard
-"acorn@npm:^8.0.0, acorn@npm:^8.7.1":
- version: 8.7.1
- resolution: "acorn@npm:8.7.1"
- bin:
- acorn: bin/acorn
- checksum: aca0aabf98826717920ac2583fdcad0a6fbe4e583fdb6e843af2594e907455aeafe30b1e14f1757cd83ce1776773cf8296ffc3a4acf13f0bd3dfebcf1db6ae80
- languageName: node
- linkType: hard
-
-"acorn@npm:^8.4.1":
- version: 8.7.0
- resolution: "acorn@npm:8.7.0"
+"acorn@npm:^8.0.0, acorn@npm:^8.4.1, acorn@npm:^8.7.1":
+ version: 8.8.0
+ resolution: "acorn@npm:8.8.0"
bin:
acorn: bin/acorn
- checksum: e0f79409d68923fbf1aa6d4166f3eedc47955320d25c89a20cc822e6ba7c48c5963d5bc657bc242d68f7a4ac9faf96eef033e8f73656da6c640d4219935fdfd0
+ checksum: 7270ca82b242eafe5687a11fea6e088c960af712683756abf0791b68855ea9cace3057bd5e998ffcef50c944810c1e0ca1da526d02b32110e13c722aa959afdc
languageName: node
linkType: hard
@@ -5240,14 +4253,14 @@ __metadata:
languageName: node
linkType: hard
-"agentkeepalive@npm:^4.1.3":
- version: 4.2.0
- resolution: "agentkeepalive@npm:4.2.0"
+"agentkeepalive@npm:^4.1.3, agentkeepalive@npm:^4.2.1":
+ version: 4.2.1
+ resolution: "agentkeepalive@npm:4.2.1"
dependencies:
debug: ^4.1.0
depd: ^1.1.2
humanize-ms: ^1.2.1
- checksum: 89806f83ceebbcaabf6bd581a8dce4870910fd2a11f66df8f505b4cd4ce4ca5ab9e6eec8d11ce8531a6b60f6748b75b0775e0e2fa33871503ef00d535418a19a
+ checksum: 39cb49ed8cf217fd6da058a92828a0a84e0b74c35550f82ee0a10e1ee403c4b78ade7948be2279b188b7a7303f5d396ea2738b134731e464bf28de00a4f72a18
languageName: node
linkType: hard
@@ -5408,13 +4421,13 @@ __metadata:
languageName: node
linkType: hard
-"are-we-there-yet@npm:^2.0.0":
- version: 2.0.0
- resolution: "are-we-there-yet@npm:2.0.0"
+"are-we-there-yet@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "are-we-there-yet@npm:3.0.0"
dependencies:
delegates: ^1.0.0
readable-stream: ^3.6.0
- checksum: 6c80b4fd04ecee6ba6e737e0b72a4b41bdc64b7d279edfc998678567ff583c8df27e27523bc789f2c99be603ffa9eaa612803da1d886962d2086e7ff6fa90c7c
+ checksum: 348edfdd931b0b50868b55402c01c3f64df1d4c229ab6f063539a5025fd6c5f5bb8a0cab409bbed8d75d34762d22aa91b7c20b4204eb8177063158d9ba792981
languageName: node
linkType: hard
@@ -5546,20 +4559,7 @@ __metadata:
languageName: node
linkType: hard
-"array-includes@npm:^3.1.4":
- version: 3.1.4
- resolution: "array-includes@npm:3.1.4"
- dependencies:
- call-bind: ^1.0.2
- define-properties: ^1.1.3
- es-abstract: ^1.19.1
- get-intrinsic: ^1.1.1
- is-string: ^1.0.7
- checksum: 69967c38c52698f84b50a7aed5554aadc89c6ac6399b6d92ad061a5952f8423b4bba054c51d40963f791dfa294d7247cdd7988b6b1f2c5861477031c6386e1c0
- languageName: node
- linkType: hard
-
-"array-includes@npm:^3.1.5":
+"array-includes@npm:^3.1.4, array-includes@npm:^3.1.5":
version: 3.1.5
resolution: "array-includes@npm:3.1.5"
dependencies:
@@ -5587,13 +4587,14 @@ __metadata:
linkType: hard
"array.prototype.flat@npm:^1.2.5":
- version: 1.2.5
- resolution: "array.prototype.flat@npm:1.2.5"
+ version: 1.3.0
+ resolution: "array.prototype.flat@npm:1.3.0"
dependencies:
call-bind: ^1.0.2
define-properties: ^1.1.3
- es-abstract: ^1.19.0
- checksum: 9cc6414b111abfc7717e39546e4887b1e5ec74df8f1618d83425deaa95752bf05d475d1d241253b4d88d4a01f8e1bc84845ad5b7cc2047f8db2f614512acd40e
+ es-abstract: ^1.19.2
+ es-shim-unscopables: ^1.0.0
+ checksum: 2a652b3e8dc0bebb6117e42a5ab5738af0203a14c27341d7bb2431467bdb4b348e2c5dc555dfcda8af0a5e4075c400b85311ded73861c87290a71a17c3e0a257
languageName: node
linkType: hard
@@ -5965,15 +4966,6 @@ __metadata:
languageName: node
linkType: hard
-"block-stream@npm:*":
- version: 0.0.9
- resolution: "block-stream@npm:0.0.9"
- dependencies:
- inherits: ~2.0.0
- checksum: 72733cbb816181b7c92449e7b650247c02122f743526ce9d948ff68afc27d8709106cd62f2c876c6d8cd3977e0204a014f38d22805974008039bd3bed35f2cbd
- languageName: node
- linkType: hard
-
"bluebird@npm:^3.7.2":
version: 3.7.2
resolution: "bluebird@npm:3.7.2"
@@ -6038,7 +5030,7 @@ __metadata:
languageName: node
linkType: hard
-"braces@npm:^3.0.1, braces@npm:^3.0.2, braces@npm:~3.0.2":
+"braces@npm:^3.0.2, braces@npm:~3.0.2":
version: 3.0.2
resolution: "braces@npm:3.0.2"
dependencies:
@@ -6056,18 +5048,17 @@ __metadata:
languageName: node
linkType: hard
-"browserslist@npm:^4.20.2, browserslist@npm:^4.20.3":
- version: 4.20.3
- resolution: "browserslist@npm:4.20.3"
+"browserslist@npm:^4.20.2, browserslist@npm:^4.21.2":
+ version: 4.21.2
+ resolution: "browserslist@npm:4.21.2"
dependencies:
- caniuse-lite: ^1.0.30001332
- electron-to-chromium: ^1.4.118
- escalade: ^3.1.1
- node-releases: ^2.0.3
- picocolors: ^1.0.0
+ caniuse-lite: ^1.0.30001366
+ electron-to-chromium: ^1.4.188
+ node-releases: ^2.0.6
+ update-browserslist-db: ^1.0.4
bin:
browserslist: cli.js
- checksum: 1e4b719ac2ca0fe235218a606e8b8ef16b8809e0973b924158c39fbc435a0b0fe43437ea52dd6ef5ad2efcb83fcb07431244e472270177814217f7c563651f7d
+ checksum: 30fe59f8b065f99665ea63819d29c797660f7975857c290f61f570403abed4d7039ca15b6fd21e39a57b87e1a9262f94676114040766fc0da6ccc11faf9fc377
languageName: node
linkType: hard
@@ -6150,7 +5141,7 @@ __metadata:
languageName: node
linkType: hard
-"c8@npm:^7.12.0":
+"c8@npm:^7.11.3, c8@npm:^7.12.0":
version: 7.12.0
resolution: "c8@npm:7.12.0"
dependencies:
@@ -6205,6 +5196,32 @@ __metadata:
languageName: node
linkType: hard
+"cacache@npm:^16.1.0":
+ version: 16.1.1
+ resolution: "cacache@npm:16.1.1"
+ dependencies:
+ "@npmcli/fs": ^2.1.0
+ "@npmcli/move-file": ^2.0.0
+ chownr: ^2.0.0
+ fs-minipass: ^2.1.0
+ glob: ^8.0.1
+ infer-owner: ^1.0.4
+ lru-cache: ^7.7.1
+ minipass: ^3.1.6
+ minipass-collect: ^1.0.2
+ minipass-flush: ^1.0.5
+ minipass-pipeline: ^1.2.4
+ mkdirp: ^1.0.4
+ p-map: ^4.0.0
+ promise-inflight: ^1.0.1
+ rimraf: ^3.0.2
+ ssri: ^9.0.0
+ tar: ^6.1.11
+ unique-filename: ^1.1.1
+ checksum: 488524617008b793f0249b0c4ea2c330c710ca997921376e15650cc2415a8054491ae2dee9f01382c2015602c0641f3f977faf2fa7361aa33d2637dcfb03907a
+ languageName: node
+ linkType: hard
+
"cache-base@npm:^1.0.1":
version: 1.0.1
resolution: "cache-base@npm:1.0.1"
@@ -6304,10 +5321,10 @@ __metadata:
languageName: node
linkType: hard
-"caniuse-lite@npm:^1.0.30001332":
- version: 1.0.30001346
- resolution: "caniuse-lite@npm:1.0.30001346"
- checksum: 951590454ffa4e2e7b772558dc593cd08604b44c83741e1188166298f54c34387f4bf34f5141a35de4a43028c012484240ad15c896e48bf4eac70dd7076a4449
+"caniuse-lite@npm:^1.0.30001366":
+ version: 1.0.30001368
+ resolution: "caniuse-lite@npm:1.0.30001368"
+ checksum: e2a763e7bca8f7a2494f752d0e1a5c0cd1c70ebd18df2eda2bdcf2f908901bbff14f78961ad1cada3eb7af32120ce95aa93f06c5a093d721e787816dc7f5bfaa
languageName: node
linkType: hard
@@ -6439,9 +5456,9 @@ __metadata:
linkType: hard
"character-entities@npm:^2.0.0":
- version: 2.0.1
- resolution: "character-entities@npm:2.0.1"
- checksum: 1165064dbe1cc1f3cd5b28eba0e94f051d97bdd65463b0e763d6a8aae527443596f9e0e774a79c4a66de0c47ad95c94fc5fb2c7f6bec6551b5580f730a8da341
+ version: 2.0.2
+ resolution: "character-entities@npm:2.0.2"
+ checksum: cf1643814023697f725e47328fcec17923b8f1799102a8a79c1514e894815651794a2bffd84bb1b3a4b124b050154e4529ed6e81f7c8068a734aecf07a6d3def
languageName: node
linkType: hard
@@ -6489,7 +5506,7 @@ __metadata:
languageName: node
linkType: hard
-"chokidar@npm:^3.4.2, chokidar@npm:^3.5.3":
+"chokidar@npm:^3.4.2, chokidar@npm:^3.5.1, chokidar@npm:^3.5.3":
version: 3.5.3
resolution: "chokidar@npm:3.5.3"
dependencies:
@@ -6508,25 +5525,6 @@ __metadata:
languageName: node
linkType: hard
-"chokidar@npm:^3.5.1":
- version: 3.5.2
- resolution: "chokidar@npm:3.5.2"
- dependencies:
- anymatch: ~3.1.2
- braces: ~3.0.2
- fsevents: ~2.3.2
- glob-parent: ~5.1.2
- is-binary-path: ~2.1.0
- is-glob: ~4.0.1
- normalize-path: ~3.0.0
- readdirp: ~3.6.0
- dependenciesMeta:
- fsevents:
- optional: true
- checksum: d1fda32fcd67d9f6170a8468ad2630a3c6194949c9db3f6a91b16478c328b2800f433fb5d2592511b6cb145a47c013ea1cce60b432b1a001ae3ee978a8bffc2d
- languageName: node
- linkType: hard
-
"chownr@npm:^1.1.1":
version: 1.1.4
resolution: "chownr@npm:1.1.4"
@@ -6542,9 +5540,9 @@ __metadata:
linkType: hard
"ci-info@npm:^3.2.0":
- version: 3.3.0
- resolution: "ci-info@npm:3.3.0"
- checksum: c3d86fe374938ecda5093b1ba39acb535d8309185ba3f23587747c6a057e63f45419b406d880304dbc0e1d72392c9a33e42fe9a1e299209bc0ded5efaa232b66
+ version: 3.3.2
+ resolution: "ci-info@npm:3.3.2"
+ checksum: fd81f1edd2d3b0f6cb077b2e84365136d87b9db8c055928c1ad69da8a76c2c2f19cba8ea51b90238302157ca927f91f92b653e933f2398dde4867500f08d6e62
languageName: node
linkType: hard
@@ -6664,11 +5662,11 @@ __metadata:
linkType: hard
"clone-response@npm:^1.0.2":
- version: 1.0.2
- resolution: "clone-response@npm:1.0.2"
+ version: 1.0.3
+ resolution: "clone-response@npm:1.0.3"
dependencies:
mimic-response: ^1.0.0
- checksum: 2d0e61547fc66276e0903be9654ada422515f5a15741691352000d47e8c00c226061221074ce2c0064d12e975e84a8687cfd35d8b405750cb4e772f87b256eda
+ checksum: 4e671cac39b11c60aa8ba0a450657194a5d6504df51bca3fac5b3bd0145c4f8e8464898f87c8406b83232e3bc5cca555f51c1f9c8ac023969ebfbf7f6bdabb2e
languageName: node
linkType: hard
@@ -6752,7 +5750,7 @@ __metadata:
languageName: node
linkType: hard
-"color-support@npm:^1.1.2":
+"color-support@npm:^1.1.3":
version: 1.1.3
resolution: "color-support@npm:1.1.3"
bin:
@@ -6761,21 +5759,7 @@ __metadata:
languageName: node
linkType: hard
-"colorette@npm:^2.0.14":
- version: 2.0.16
- resolution: "colorette@npm:2.0.16"
- checksum: cd55596a3a2d1071c1a28eee7fd8a5387593ff1bd10a3e8d0a6221499311fe34a9f2b9272d77c391e0e003dcdc8934fb2f8d106e7ef1f7516f8060c901d41a27
- languageName: node
- linkType: hard
-
-"colorette@npm:^2.0.16":
- version: 2.0.17
- resolution: "colorette@npm:2.0.17"
- checksum: 693a56d816846e0e213f92c8061b65eb5025030b28a113f90c539fe34c860abc41132c03599af26bcbc213170a31bac1bf2d4c535ccad5ac7b5cb3248f9d98a8
- languageName: node
- linkType: hard
-
-"colorette@npm:^2.0.17, colorette@npm:^2.0.19":
+"colorette@npm:^2.0.14, colorette@npm:^2.0.16, colorette@npm:^2.0.17, colorette@npm:^2.0.19":
version: 2.0.19
resolution: "colorette@npm:2.0.19"
checksum: 888cf5493f781e5fcf54ce4d49e9d7d698f96ea2b2ef67906834bb319a392c667f9ec69f4a10e268d2946d13a9503d2d19b3abaaaf174e3451bfe91fb9d82427
@@ -6820,14 +5804,14 @@ __metadata:
linkType: hard
"command-line-args@npm:^5.0.0":
- version: 5.2.0
- resolution: "command-line-args@npm:5.2.0"
+ version: 5.2.1
+ resolution: "command-line-args@npm:5.2.1"
dependencies:
array-back: ^3.1.0
find-replace: ^3.0.0
lodash.camelcase: ^4.3.0
typical: ^4.0.0
- checksum: a63dd41541fc98fcef7a5f4f63e626a6c5955fae57247b604077f1d0cfbff58c5830240880903342785a0c40952c4bbd3a977425ba3f4c7d515253296843a566
+ checksum: e759519087be3cf2e86af8b9a97d3058b4910cd11ee852495be881a067b72891f6a32718fb685ee6d41531ab76b2b7bfb6602f79f882cd4b7587ff1e827982c7
languageName: node
linkType: hard
@@ -6884,14 +5868,7 @@ __metadata:
languageName: node
linkType: hard
-"commander@npm:^9.3.0":
- version: 9.3.0
- resolution: "commander@npm:9.3.0"
- checksum: d421ce66fee25792a1470c69aa8d1b86434bf873a96483aa92c8267f81a6f20c6f7c426f5e82f88ac50a8ec4855d3f2787aebcdef8aa559e1080a2337a95a217
- languageName: node
- linkType: hard
-
-"commander@npm:^9.4.0":
+"commander@npm:^9.3.0, commander@npm:^9.4.0":
version: 9.4.0
resolution: "commander@npm:9.4.0"
checksum: a322de584a6ccd1ea83c24f6a660e52d16ffbe2613fcfbb8d2cc68bc9dec637492456d754fe8bb5b039ad843ed8e04fb0b107e581a75f62cde9e1a0ab1546e09
@@ -7322,12 +6299,12 @@ __metadata:
linkType: hard
"core-js-compat@npm:^3.21.0, core-js-compat@npm:^3.22.1":
- version: 3.22.8
- resolution: "core-js-compat@npm:3.22.8"
+ version: 3.23.5
+ resolution: "core-js-compat@npm:3.23.5"
dependencies:
- browserslist: ^4.20.3
+ browserslist: ^4.21.2
semver: 7.0.0
- checksum: 0c82d9110dcb267c2f5547c61b62f8043793d203523048169176b8badf0b73f3792624342b85d9c923df8eb8971b4aa468b160abb81a023d183c5951e4f05a66
+ checksum: c2398a39239a782ba1b9531a80b25f8d9fb8d98de8bf980f32140e9be3d2852afb797517afdf3a15f9319bcd25d594b3d3d2a500dce7c338532532565c9e83cb
languageName: node
linkType: hard
@@ -7346,16 +6323,16 @@ __metadata:
linkType: hard
"cosmiconfig-typescript-loader@npm:^2.0.0":
- version: 2.0.1
- resolution: "cosmiconfig-typescript-loader@npm:2.0.1"
+ version: 2.0.2
+ resolution: "cosmiconfig-typescript-loader@npm:2.0.2"
dependencies:
cosmiconfig: ^7
- ts-node: ^10.8.0
+ ts-node: ^10.8.1
peerDependencies:
"@types/node": "*"
cosmiconfig: ">=7"
typescript: ">=3"
- checksum: 8412f91c0c00150ffab8a4a1bf797cc5dc417b8b99c48d445daa11608722d87456aec5052b52c38d990868cdbb763708a272fd377f6f5c51e70d414bd69fafee
+ checksum: 0c9a777e2e3ff7594d753e5781e8c3817ce5ba493a4e69cfde698a8e231b438695248dcc62a16c661f93ada7f762ac6e24457889439c94f58c094a24aecbd982
languageName: node
linkType: hard
@@ -7379,12 +6356,12 @@ __metadata:
languageName: node
linkType: hard
-"cross-fetch@npm:^3.1.4":
- version: 3.1.4
- resolution: "cross-fetch@npm:3.1.4"
+"cross-fetch@npm:^3.1.5":
+ version: 3.1.5
+ resolution: "cross-fetch@npm:3.1.5"
dependencies:
- node-fetch: 2.6.1
- checksum: 2107e5e633aa327bdacab036b1907c7ddd28651ede0c1d4fd14db04510944d56849a8255e2f5b8f9a1da0e061b6cee943f6819fe29ed9a130195e7fadd82a4ff
+ node-fetch: 2.6.7
+ checksum: f6b8c6ee3ef993ace6277fd789c71b6acf1b504fd5f5c7128df4ef2f125a429e29cd62dc8c127523f04a5f2fa4771ed80e3f3d9695617f441425045f505cf3bb
languageName: node
linkType: hard
@@ -7510,9 +6487,9 @@ __metadata:
linkType: hard
"date-fns@npm:^2.16.1":
- version: 2.28.0
- resolution: "date-fns@npm:2.28.0"
- checksum: a0516b2e4f99b8bffc6cc5193349f185f195398385bdcaf07f17c2c4a24473c99d933eb0018be4142a86a6d46cb0b06be6440ad874f15e795acbedd6fd727a1f
+ version: 2.29.1
+ resolution: "date-fns@npm:2.29.1"
+ checksum: 9d07f77dffc1eb8c213391bde39f2963ffe7c0019d9edde14487882d627224f3a39b963e6e99d0cc58afff220a6a1a7e8864d2789958f4eaa77714de94d4d076
languageName: node
linkType: hard
@@ -7524,19 +6501,19 @@ __metadata:
linkType: hard
"dayjs@npm:^1.10.4":
- version: 1.11.3
- resolution: "dayjs@npm:1.11.3"
- checksum: c87e06b562a51ae6568cc5b840c7579d82a0f8af7163128c858fe512d3d71d07bd8e8e464b8cc41b8698a9e26b80ab2c082d14a1cd4c33df5692d77ccdfc5a43
+ version: 1.11.4
+ resolution: "dayjs@npm:1.11.4"
+ checksum: 478c8a2db9e3fc752db9f02ef23f00e12308eebbeb85569913731ea78e8d5616f2335e14f25af48e9f16bbcbd796653092eca4d2f42c0218a948402c31735f59
languageName: node
linkType: hard
"deasync@npm:^0.1.0":
- version: 0.1.26
- resolution: "deasync@npm:0.1.26"
+ version: 0.1.27
+ resolution: "deasync@npm:0.1.27"
dependencies:
bindings: ^1.5.0
node-addon-api: ^1.7.1
- checksum: 4ac04ba620a2a1d2954e6c54b4fcc2b4d79866d8981fc5eab7cec1b031af4133fa799f4c9f875479d096f2384e5e7f789991e062f486630fea8fd75faaed10e2
+ checksum: 2a3629f36e2e9d9a26622c68dbaf96a9034805ed4cedc7d0b73ea05121113be257f118a13353606a859f625123d32f695702cb6db8bbfe661869ef884f7e5ec9
languageName: node
linkType: hard
@@ -7549,15 +6526,15 @@ __metadata:
languageName: node
linkType: hard
-"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2":
- version: 4.3.3
- resolution: "debug@npm:4.3.3"
+"debug@npm:4, debug@npm:^4.0.0, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4":
+ version: 4.3.4
+ resolution: "debug@npm:4.3.4"
dependencies:
ms: 2.1.2
peerDependenciesMeta:
supports-color:
optional: true
- checksum: 14472d56fe4a94dbcfaa6dbed2dd3849f1d72ba78104a1a328047bb564643ca49df0224c3a17fa63533fd11dd3d4c8636cd861191232a2c6735af00cc2d4de16
+ checksum: 3dbad3f94ea64f34431a9cbf0bafb61853eda57bff2880036153438f50fb5a84f27683ba0d8e5426bf41a8c6ff03879488120cf5b3a761e77953169c0600a708
languageName: node
linkType: hard
@@ -7570,18 +6547,6 @@ __metadata:
languageName: node
linkType: hard
-"debug@npm:^4.0.0, debug@npm:^4.3.3, debug@npm:^4.3.4":
- version: 4.3.4
- resolution: "debug@npm:4.3.4"
- dependencies:
- ms: 2.1.2
- peerDependenciesMeta:
- supports-color:
- optional: true
- checksum: 3dbad3f94ea64f34431a9cbf0bafb61853eda57bff2880036153438f50fb5a84f27683ba0d8e5426bf41a8c6ff03879488120cf5b3a761e77953169c0600a708
- languageName: node
- linkType: hard
-
"decamelize-keys@npm:^1.1.0":
version: 1.1.0
resolution: "decamelize-keys@npm:1.1.0"
@@ -7684,16 +6649,7 @@ __metadata:
languageName: node
linkType: hard
-"define-properties@npm:^1.1.3":
- version: 1.1.3
- resolution: "define-properties@npm:1.1.3"
- dependencies:
- object-keys: ^1.0.12
- checksum: da80dba55d0cd76a5a7ab71ef6ea0ebcb7b941f803793e4e0257b384cb772038faa0c31659d244e82c4342edef841c1a1212580006a05a5068ee48223d787317
- languageName: node
- linkType: hard
-
-"define-properties@npm:^1.1.4":
+"define-properties@npm:^1.1.3, define-properties@npm:^1.1.4":
version: 1.1.4
resolution: "define-properties@npm:1.1.4"
dependencies:
@@ -7767,9 +6723,9 @@ __metadata:
linkType: hard
"dequal@npm:^2.0.0":
- version: 2.0.2
- resolution: "dequal@npm:2.0.2"
- checksum: 86c7a2c59f7b0797ed397c74b5fcdb744e48fc19440b70ad6ac59f57550a96b0faef3f1cfd5760ec5e6d3f7cb101f634f1f80db4e727b1dc8389bf62d977c0a0
+ version: 2.0.3
+ resolution: "dequal@npm:2.0.3"
+ checksum: 8679b850e1a3d0ebbc46ee780d5df7b478c23f335887464023a631d1b9af051ad4a6595a44220f9ff8ff95a8ddccf019b5ad778a976fd7bbf77383d36f412f90
languageName: node
linkType: hard
@@ -7811,13 +6767,6 @@ __metadata:
languageName: node
linkType: hard
-"diff-sequences@npm:^27.4.0":
- version: 27.4.0
- resolution: "diff-sequences@npm:27.4.0"
- checksum: 66d04033e8632eeacdd029b4ecaf87d233d475e4b0cd1cee035eda99e70e1a7f803507d72f2677990ef526f28a2f6e5709af8d94dcdc0682b8884a3a646190a1
- languageName: node
- linkType: hard
-
"diff-sequences@npm:^27.5.1":
version: 27.5.1
resolution: "diff-sequences@npm:27.5.1"
@@ -7862,7 +6811,7 @@ __metadata:
languageName: node
linkType: hard
-"discord-api-types@npm:^0.36.3":
+"discord-api-types@npm:^0.36.1, discord-api-types@npm:^0.36.3":
version: 0.36.3
resolution: "discord-api-types@npm:0.36.3"
checksum: 3089c0fb37425dc5df03c76d82988d43fcc272699b06a02fc830d0a3bef550009aaebdf6d646529e8a7ccea76ae3f43b099d736ea5ef37a0be143142ab49871d
@@ -7971,7 +6920,7 @@ __metadata:
languageName: node
linkType: hard
-dts-critic@latest:
+"dts-critic@npm:latest":
version: 3.3.11
resolution: "dts-critic@npm:3.3.11"
dependencies:
@@ -8052,10 +7001,10 @@ dts-critic@latest:
languageName: node
linkType: hard
-"electron-to-chromium@npm:^1.4.118":
- version: 1.4.146
- resolution: "electron-to-chromium@npm:1.4.146"
- checksum: 5700a27f44463d2701cbc1593973a711ba7b23374db840ec00c612d1e0272ba95b4f170f561953380441739665a400670c6678bcff26a0ae28d2e49ab03d478d
+"electron-to-chromium@npm:^1.4.188":
+ version: 1.4.198
+ resolution: "electron-to-chromium@npm:1.4.198"
+ checksum: 4ef3e595539779711cbc21fda244825ec344897a2d1e82451b1b8b6d24bc49caab58166aa8ea26fc5fa58f8ae35ffd44fd27c7f0aba65249aaad8e2f3267a7a1
languageName: node
linkType: hard
@@ -8094,7 +7043,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"encoding@npm:^0.1.12":
+"encoding@npm:^0.1.12, encoding@npm:^0.1.13":
version: 0.1.13
resolution: "encoding@npm:0.1.13"
dependencies:
@@ -8155,41 +7104,13 @@ dts-critic@latest:
"error-ex@npm:^1.3.1":
version: 1.3.2
resolution: "error-ex@npm:1.3.2"
- dependencies:
- is-arrayish: ^0.2.1
- checksum: c1c2b8b65f9c91b0f9d75f0debaa7ec5b35c266c2cac5de412c1a6de86d4cbae04ae44e510378cb14d032d0645a36925d0186f8bb7367bcc629db256b743a001
- languageName: node
- linkType: hard
-
-"es-abstract@npm:^1.19.0, es-abstract@npm:^1.19.1":
- version: 1.19.1
- resolution: "es-abstract@npm:1.19.1"
- dependencies:
- call-bind: ^1.0.2
- es-to-primitive: ^1.2.1
- function-bind: ^1.1.1
- get-intrinsic: ^1.1.1
- get-symbol-description: ^1.0.0
- has: ^1.0.3
- has-symbols: ^1.0.2
- internal-slot: ^1.0.3
- is-callable: ^1.2.4
- is-negative-zero: ^2.0.1
- is-regex: ^1.1.4
- is-shared-array-buffer: ^1.0.1
- is-string: ^1.0.7
- is-weakref: ^1.0.1
- object-inspect: ^1.11.0
- object-keys: ^1.1.1
- object.assign: ^4.1.2
- string.prototype.trimend: ^1.0.4
- string.prototype.trimstart: ^1.0.4
- unbox-primitive: ^1.0.1
- checksum: b6be8410672c5364db3fb01eb786e30c7b4bb32b4af63d381c08840f4382c4a168e7855cd338bf59d4f1a1a1138f4d748d1fd40ec65aaa071876f9e9fbfed949
+ dependencies:
+ is-arrayish: ^0.2.1
+ checksum: c1c2b8b65f9c91b0f9d75f0debaa7ec5b35c266c2cac5de412c1a6de86d4cbae04ae44e510378cb14d032d0645a36925d0186f8bb7367bcc629db256b743a001
languageName: node
linkType: hard
-"es-abstract@npm:^1.19.2, es-abstract@npm:^1.19.5, es-abstract@npm:^1.20.0":
+"es-abstract@npm:^1.19.0, es-abstract@npm:^1.19.1, es-abstract@npm:^1.19.2, es-abstract@npm:^1.19.5, es-abstract@npm:^1.20.0":
version: 1.20.1
resolution: "es-abstract@npm:1.20.1"
dependencies:
@@ -8247,20 +7168,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-android-64@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-android-64@npm:0.14.46"
- conditions: os=android & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-android-64@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-android-64@npm:0.14.48"
- conditions: os=android & cpu=x64
- languageName: node
- linkType: hard
-
"esbuild-android-64@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-android-64@npm:0.14.49"
@@ -8275,20 +7182,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-android-arm64@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-android-arm64@npm:0.14.46"
- conditions: os=android & cpu=arm64
- languageName: node
- linkType: hard
-
-"esbuild-android-arm64@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-android-arm64@npm:0.14.48"
- conditions: os=android & cpu=arm64
- languageName: node
- linkType: hard
-
"esbuild-android-arm64@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-android-arm64@npm:0.14.49"
@@ -8303,20 +7196,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-darwin-64@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-darwin-64@npm:0.14.46"
- conditions: os=darwin & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-darwin-64@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-darwin-64@npm:0.14.48"
- conditions: os=darwin & cpu=x64
- languageName: node
- linkType: hard
-
"esbuild-darwin-64@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-darwin-64@npm:0.14.49"
@@ -8331,20 +7210,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-darwin-arm64@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-darwin-arm64@npm:0.14.46"
- conditions: os=darwin & cpu=arm64
- languageName: node
- linkType: hard
-
-"esbuild-darwin-arm64@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-darwin-arm64@npm:0.14.48"
- conditions: os=darwin & cpu=arm64
- languageName: node
- linkType: hard
-
"esbuild-darwin-arm64@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-darwin-arm64@npm:0.14.49"
@@ -8359,20 +7224,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-freebsd-64@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-freebsd-64@npm:0.14.46"
- conditions: os=freebsd & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-freebsd-64@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-freebsd-64@npm:0.14.48"
- conditions: os=freebsd & cpu=x64
- languageName: node
- linkType: hard
-
"esbuild-freebsd-64@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-freebsd-64@npm:0.14.49"
@@ -8387,20 +7238,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-freebsd-arm64@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-freebsd-arm64@npm:0.14.46"
- conditions: os=freebsd & cpu=arm64
- languageName: node
- linkType: hard
-
-"esbuild-freebsd-arm64@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-freebsd-arm64@npm:0.14.48"
- conditions: os=freebsd & cpu=arm64
- languageName: node
- linkType: hard
-
"esbuild-freebsd-arm64@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-freebsd-arm64@npm:0.14.49"
@@ -8415,20 +7252,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-linux-32@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-linux-32@npm:0.14.46"
- conditions: os=linux & cpu=ia32
- languageName: node
- linkType: hard
-
-"esbuild-linux-32@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-linux-32@npm:0.14.48"
- conditions: os=linux & cpu=ia32
- languageName: node
- linkType: hard
-
"esbuild-linux-32@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-linux-32@npm:0.14.49"
@@ -8443,20 +7266,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-linux-64@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-linux-64@npm:0.14.46"
- conditions: os=linux & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-linux-64@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-linux-64@npm:0.14.48"
- conditions: os=linux & cpu=x64
- languageName: node
- linkType: hard
-
"esbuild-linux-64@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-linux-64@npm:0.14.49"
@@ -8471,20 +7280,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-linux-arm64@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-linux-arm64@npm:0.14.46"
- conditions: os=linux & cpu=arm64
- languageName: node
- linkType: hard
-
-"esbuild-linux-arm64@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-linux-arm64@npm:0.14.48"
- conditions: os=linux & cpu=arm64
- languageName: node
- linkType: hard
-
"esbuild-linux-arm64@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-linux-arm64@npm:0.14.49"
@@ -8499,20 +7294,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-linux-arm@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-linux-arm@npm:0.14.46"
- conditions: os=linux & cpu=arm
- languageName: node
- linkType: hard
-
-"esbuild-linux-arm@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-linux-arm@npm:0.14.48"
- conditions: os=linux & cpu=arm
- languageName: node
- linkType: hard
-
"esbuild-linux-arm@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-linux-arm@npm:0.14.49"
@@ -8527,20 +7308,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-linux-mips64le@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-linux-mips64le@npm:0.14.46"
- conditions: os=linux & cpu=mips64el
- languageName: node
- linkType: hard
-
-"esbuild-linux-mips64le@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-linux-mips64le@npm:0.14.48"
- conditions: os=linux & cpu=mips64el
- languageName: node
- linkType: hard
-
"esbuild-linux-mips64le@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-linux-mips64le@npm:0.14.49"
@@ -8555,20 +7322,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-linux-ppc64le@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-linux-ppc64le@npm:0.14.46"
- conditions: os=linux & cpu=ppc64
- languageName: node
- linkType: hard
-
-"esbuild-linux-ppc64le@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-linux-ppc64le@npm:0.14.48"
- conditions: os=linux & cpu=ppc64
- languageName: node
- linkType: hard
-
"esbuild-linux-ppc64le@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-linux-ppc64le@npm:0.14.49"
@@ -8583,20 +7336,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-linux-riscv64@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-linux-riscv64@npm:0.14.46"
- conditions: os=linux & cpu=riscv64
- languageName: node
- linkType: hard
-
-"esbuild-linux-riscv64@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-linux-riscv64@npm:0.14.48"
- conditions: os=linux & cpu=riscv64
- languageName: node
- linkType: hard
-
"esbuild-linux-riscv64@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-linux-riscv64@npm:0.14.49"
@@ -8611,20 +7350,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-linux-s390x@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-linux-s390x@npm:0.14.46"
- conditions: os=linux & cpu=s390x
- languageName: node
- linkType: hard
-
-"esbuild-linux-s390x@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-linux-s390x@npm:0.14.48"
- conditions: os=linux & cpu=s390x
- languageName: node
- linkType: hard
-
"esbuild-linux-s390x@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-linux-s390x@npm:0.14.49"
@@ -8639,20 +7364,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-netbsd-64@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-netbsd-64@npm:0.14.46"
- conditions: os=netbsd & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-netbsd-64@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-netbsd-64@npm:0.14.48"
- conditions: os=netbsd & cpu=x64
- languageName: node
- linkType: hard
-
"esbuild-netbsd-64@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-netbsd-64@npm:0.14.49"
@@ -8667,20 +7378,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-openbsd-64@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-openbsd-64@npm:0.14.46"
- conditions: os=openbsd & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-openbsd-64@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-openbsd-64@npm:0.14.48"
- conditions: os=openbsd & cpu=x64
- languageName: node
- linkType: hard
-
"esbuild-openbsd-64@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-openbsd-64@npm:0.14.49"
@@ -8695,20 +7392,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-sunos-64@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-sunos-64@npm:0.14.46"
- conditions: os=sunos & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-sunos-64@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-sunos-64@npm:0.14.48"
- conditions: os=sunos & cpu=x64
- languageName: node
- linkType: hard
-
"esbuild-sunos-64@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-sunos-64@npm:0.14.49"
@@ -8723,20 +7406,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-windows-32@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-windows-32@npm:0.14.46"
- conditions: os=win32 & cpu=ia32
- languageName: node
- linkType: hard
-
-"esbuild-windows-32@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-windows-32@npm:0.14.48"
- conditions: os=win32 & cpu=ia32
- languageName: node
- linkType: hard
-
"esbuild-windows-32@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-windows-32@npm:0.14.49"
@@ -8751,20 +7420,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-windows-64@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-windows-64@npm:0.14.46"
- conditions: os=win32 & cpu=x64
- languageName: node
- linkType: hard
-
-"esbuild-windows-64@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-windows-64@npm:0.14.48"
- conditions: os=win32 & cpu=x64
- languageName: node
- linkType: hard
-
"esbuild-windows-64@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-windows-64@npm:0.14.49"
@@ -8779,20 +7434,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild-windows-arm64@npm:0.14.46":
- version: 0.14.46
- resolution: "esbuild-windows-arm64@npm:0.14.46"
- conditions: os=win32 & cpu=arm64
- languageName: node
- linkType: hard
-
-"esbuild-windows-arm64@npm:0.14.48":
- version: 0.14.48
- resolution: "esbuild-windows-arm64@npm:0.14.48"
- conditions: os=win32 & cpu=arm64
- languageName: node
- linkType: hard
-
"esbuild-windows-arm64@npm:0.14.49":
version: 0.14.49
resolution: "esbuild-windows-arm64@npm:0.14.49"
@@ -8868,149 +7509,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"esbuild@npm:^0.14.25":
- version: 0.14.46
- resolution: "esbuild@npm:0.14.46"
- dependencies:
- esbuild-android-64: 0.14.46
- esbuild-android-arm64: 0.14.46
- esbuild-darwin-64: 0.14.46
- esbuild-darwin-arm64: 0.14.46
- esbuild-freebsd-64: 0.14.46
- esbuild-freebsd-arm64: 0.14.46
- esbuild-linux-32: 0.14.46
- esbuild-linux-64: 0.14.46
- esbuild-linux-arm: 0.14.46
- esbuild-linux-arm64: 0.14.46
- esbuild-linux-mips64le: 0.14.46
- esbuild-linux-ppc64le: 0.14.46
- esbuild-linux-riscv64: 0.14.46
- esbuild-linux-s390x: 0.14.46
- esbuild-netbsd-64: 0.14.46
- esbuild-openbsd-64: 0.14.46
- esbuild-sunos-64: 0.14.46
- esbuild-windows-32: 0.14.46
- esbuild-windows-64: 0.14.46
- esbuild-windows-arm64: 0.14.46
- dependenciesMeta:
- esbuild-android-64:
- optional: true
- esbuild-android-arm64:
- optional: true
- esbuild-darwin-64:
- optional: true
- esbuild-darwin-arm64:
- optional: true
- esbuild-freebsd-64:
- optional: true
- esbuild-freebsd-arm64:
- optional: true
- esbuild-linux-32:
- optional: true
- esbuild-linux-64:
- optional: true
- esbuild-linux-arm:
- optional: true
- esbuild-linux-arm64:
- optional: true
- esbuild-linux-mips64le:
- optional: true
- esbuild-linux-ppc64le:
- optional: true
- esbuild-linux-riscv64:
- optional: true
- esbuild-linux-s390x:
- optional: true
- esbuild-netbsd-64:
- optional: true
- esbuild-openbsd-64:
- optional: true
- esbuild-sunos-64:
- optional: true
- esbuild-windows-32:
- optional: true
- esbuild-windows-64:
- optional: true
- esbuild-windows-arm64:
- optional: true
- bin:
- esbuild: bin/esbuild
- checksum: 2aa28d80907bbb9f1c37267e17fa2ff436add97b38650621c2ffd2311ef6802e2b39c61fa20d5a88b583b0a28f6f4ec48f84b905364fa2d91cd34847ad0ea607
- languageName: node
- linkType: hard
-
-"esbuild@npm:^0.14.47":
- version: 0.14.48
- resolution: "esbuild@npm:0.14.48"
- dependencies:
- esbuild-android-64: 0.14.48
- esbuild-android-arm64: 0.14.48
- esbuild-darwin-64: 0.14.48
- esbuild-darwin-arm64: 0.14.48
- esbuild-freebsd-64: 0.14.48
- esbuild-freebsd-arm64: 0.14.48
- esbuild-linux-32: 0.14.48
- esbuild-linux-64: 0.14.48
- esbuild-linux-arm: 0.14.48
- esbuild-linux-arm64: 0.14.48
- esbuild-linux-mips64le: 0.14.48
- esbuild-linux-ppc64le: 0.14.48
- esbuild-linux-riscv64: 0.14.48
- esbuild-linux-s390x: 0.14.48
- esbuild-netbsd-64: 0.14.48
- esbuild-openbsd-64: 0.14.48
- esbuild-sunos-64: 0.14.48
- esbuild-windows-32: 0.14.48
- esbuild-windows-64: 0.14.48
- esbuild-windows-arm64: 0.14.48
- dependenciesMeta:
- esbuild-android-64:
- optional: true
- esbuild-android-arm64:
- optional: true
- esbuild-darwin-64:
- optional: true
- esbuild-darwin-arm64:
- optional: true
- esbuild-freebsd-64:
- optional: true
- esbuild-freebsd-arm64:
- optional: true
- esbuild-linux-32:
- optional: true
- esbuild-linux-64:
- optional: true
- esbuild-linux-arm:
- optional: true
- esbuild-linux-arm64:
- optional: true
- esbuild-linux-mips64le:
- optional: true
- esbuild-linux-ppc64le:
- optional: true
- esbuild-linux-riscv64:
- optional: true
- esbuild-linux-s390x:
- optional: true
- esbuild-netbsd-64:
- optional: true
- esbuild-openbsd-64:
- optional: true
- esbuild-sunos-64:
- optional: true
- esbuild-windows-32:
- optional: true
- esbuild-windows-64:
- optional: true
- esbuild-windows-arm64:
- optional: true
- bin:
- esbuild: bin/esbuild
- checksum: 352d5f5678b697eaafe0bb3374e3da013b31df98c2da17e94266f0bd9d421c531733df038d5b3548d1e8bc86daac0417f1ba2df1cc184685fdb899e1f309f47d
- languageName: node
- linkType: hard
-
-"esbuild@npm:^0.14.49":
+"esbuild@npm:^0.14.25, esbuild@npm:^0.14.47, esbuild@npm:^0.14.49":
version: 0.14.49
resolution: "esbuild@npm:0.14.49"
dependencies:
@@ -9254,9 +7753,9 @@ dts-critic@latest:
linkType: hard
"eslint-rule-docs@npm:^1.1.5":
- version: 1.1.231
- resolution: "eslint-rule-docs@npm:1.1.231"
- checksum: b776c75469bf392d58747e2ffa12e96041f7fef00d6b6c7d5e1a3f3621e42fdde4811795eb7cd4c429c33ef71b9d84f5822d58bca8964e2814485f2498be77b5
+ version: 1.1.235
+ resolution: "eslint-rule-docs@npm:1.1.235"
+ checksum: b163596f9a05568e287b2c78f51a280092122a2e43c45fa2c200f0bd3f61877af186c641dab97620978bec96d9e2cfb621e51728044d9efe42ddc24f5a594b26
languageName: node
linkType: hard
@@ -9305,7 +7804,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"eslint@npm:^8.20.0":
+"eslint@npm:^8.19.0, eslint@npm:^8.20.0":
version: 8.20.0
resolution: "eslint@npm:8.20.0"
dependencies:
@@ -9404,11 +7903,11 @@ dts-critic@latest:
linkType: hard
"estree-util-attach-comments@npm:^2.0.0":
- version: 2.0.0
- resolution: "estree-util-attach-comments@npm:2.0.0"
+ version: 2.0.1
+ resolution: "estree-util-attach-comments@npm:2.0.1"
dependencies:
- "@types/estree": ^0.0.46
- checksum: 64048f336bd18dea83e9945c3f70efc51e363c5befa6bb32a417e27fc7d7303f72f63f6910a9886c2e9e369168f5c6d023755420bd76edbce07ff0b98fdc998f
+ "@types/estree": ^0.0.51
+ checksum: 56035644e2bdb0b3f7e4807bd87973c9feb489e1d8e9429308134240b9227254c3790ba9f67d60cd9f0d30c8c0004adfb7d346ed970ac5e9d93cfffd2f5c4c37
languageName: node
linkType: hard
@@ -9431,9 +7930,9 @@ dts-critic@latest:
linkType: hard
"estree-util-is-identifier-name@npm:^2.0.0":
- version: 2.0.0
- resolution: "estree-util-is-identifier-name@npm:2.0.0"
- checksum: 09305036c4e22e388686826c4f90813b25a907b7269557dd934664bac98bf2fa814c40a0e93ce9815fd7d64ff04d2a4d48ed405cb90762025cd5f80dcfd9b58e
+ version: 2.0.1
+ resolution: "estree-util-is-identifier-name@npm:2.0.1"
+ checksum: d91693dc1c8e7f9860e5c73d3f2e0ad4fc484dc9df432086e0432c27c89f1690fe3c63f0d608d11bce77bb026a4edef434c28da5cbad0761d0292741a96b1481
languageName: node
linkType: hard
@@ -9506,9 +8005,9 @@ dts-critic@latest:
linkType: hard
"eventemitter2@npm:^6.4.3":
- version: 6.4.5
- resolution: "eventemitter2@npm:6.4.5"
- checksum: 84504f9cf0cc30205cdd46783fe9df3733435e5097f13070b678023110b5ef07847651808ae280cd94c42cd5976880211c7a40321a8ff8fa56f7c5f9c5c11960
+ version: 6.4.6
+ resolution: "eventemitter2@npm:6.4.6"
+ checksum: 1ede7ce0c01298fa3bc1998b34857c2acd0e73a1d7406e37b9127a84712762cf303a46add62943ae6944cd806bdd29ff542344c727a012b2ea6fd3c90f059367
languageName: node
linkType: hard
@@ -9764,19 +8263,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"fast-glob@npm:^3.1.1":
- version: 3.2.7
- resolution: "fast-glob@npm:3.2.7"
- dependencies:
- "@nodelib/fs.stat": ^2.0.2
- "@nodelib/fs.walk": ^1.2.3
- glob-parent: ^5.1.2
- merge2: ^1.3.0
- micromatch: ^4.0.4
- checksum: 2f4708ff112d2b451888129fdd9a0938db88b105b0ddfd043c064e3c4d3e20eed8d7c7615f7565fee660db34ddcf08a2db1bf0ab3c00b87608e4719694642d78
- languageName: node
- linkType: hard
-
"fast-json-stable-stringify@npm:^2.0.0":
version: 2.1.0
resolution: "fast-json-stable-stringify@npm:2.1.0"
@@ -10005,16 +8491,16 @@ dts-critic@latest:
linkType: hard
"flatted@npm:^3.1.0":
- version: 3.2.4
- resolution: "flatted@npm:3.2.4"
- checksum: 7d33846428ab337ec81ef9b8b9103894c1c81f5f67feb32bd4ed106fbc47da60d56edb42efd36c9f1f30a010272aeccd34ec1ffacfe9dfdff19673b1d4df481b
+ version: 3.2.6
+ resolution: "flatted@npm:3.2.6"
+ checksum: 33b87aa88dfa40ca6ee31d7df61712bbbad3d3c05c132c23e59b9b61d34631b337a18ff2b8dc5553acdc871ec72b741e485f78969cf006124a3f57174de29a0e
languageName: node
linkType: hard
"flow-parser@npm:0.*":
- version: 0.179.0
- resolution: "flow-parser@npm:0.179.0"
- checksum: 939ef4e35dd126ecbfc461f996fbb796a8506b416bc018920fc13a5a0f705c2a688533a6459411b9edca3719fb7d8489287f142b8c164abff85f9232ca251e17
+ version: 0.183.0
+ resolution: "flow-parser@npm:0.183.0"
+ checksum: e973b440a189de761d0d4c3f5c4fa5409d531344046106d0cfa5613c66b8520a81e421444e50ad33c7034cef89eafcfacd49cca8696a8c76d1510adbcc313b07
languageName: node
linkType: hard
@@ -10134,13 +8620,13 @@ dts-critic@latest:
linkType: hard
"fs-extra@npm:^10.0.0":
- version: 10.0.0
- resolution: "fs-extra@npm:10.0.0"
+ version: 10.1.0
+ resolution: "fs-extra@npm:10.1.0"
dependencies:
graceful-fs: ^4.2.0
jsonfile: ^6.0.1
universalify: ^2.0.0
- checksum: 5285a3d8f34b917cf2b66af8c231a40c1623626e9d701a20051d3337be16c6d7cac94441c8b3732d47a92a2a027886ca93c69b6a4ae6aee3c89650d2a8880c0a
+ checksum: dc94ab37096f813cc3ca12f0f1b5ad6744dfed9ed21e953d72530d103cea193c2f81584a39e9dee1bea36de5ee66805678c0dddc048e8af1427ac19c00fffc50
languageName: node
linkType: hard
@@ -10189,7 +8675,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"fs-minipass@npm:^2.0.0":
+"fs-minipass@npm:^2.0.0, fs-minipass@npm:^2.1.0":
version: 2.1.0
resolution: "fs-minipass@npm:2.1.0"
dependencies:
@@ -10276,20 +8762,19 @@ dts-critic@latest:
languageName: node
linkType: hard
-"gauge@npm:^4.0.0":
- version: 4.0.0
- resolution: "gauge@npm:4.0.0"
+"gauge@npm:^4.0.3":
+ version: 4.0.4
+ resolution: "gauge@npm:4.0.4"
dependencies:
- ansi-regex: ^5.0.1
aproba: ^1.0.3 || ^2.0.0
- color-support: ^1.1.2
- console-control-strings: ^1.0.0
+ color-support: ^1.1.3
+ console-control-strings: ^1.1.0
has-unicode: ^2.0.1
- signal-exit: ^3.0.0
+ signal-exit: ^3.0.7
string-width: ^4.2.3
strip-ansi: ^6.0.1
- wide-align: ^1.1.2
- checksum: 637b34c84f518defa89319dbef68211a24e9302182ad2a619e3be1be5b7dcf2a962c8359e889294af667440f4722e7e6e61671859e00bd8ec280a136ded89b25
+ wide-align: ^1.1.5
+ checksum: 788b6bfe52f1dd8e263cda800c26ac0ca2ff6de0b6eee2fe0d9e3abf15e149b651bd27bf5226be10e6e3edb5c4e5d5985a5a1a98137e7a892f75eff76467ad2d
languageName: node
linkType: hard
@@ -10331,13 +8816,13 @@ dts-critic@latest:
linkType: hard
"get-intrinsic@npm:^1.0.2, get-intrinsic@npm:^1.1.0, get-intrinsic@npm:^1.1.1":
- version: 1.1.1
- resolution: "get-intrinsic@npm:1.1.1"
+ version: 1.1.2
+ resolution: "get-intrinsic@npm:1.1.2"
dependencies:
function-bind: ^1.1.1
has: ^1.0.3
- has-symbols: ^1.0.1
- checksum: a9fe2ca8fa3f07f9b0d30fb202bcd01f3d9b9b6b732452e79c48e79f7d6d8d003af3f9e38514250e3553fdc83c61650851cb6870832ac89deaaceb08e3721a17
+ has-symbols: ^1.0.3
+ checksum: 252f45491f2ba88ebf5b38018020c7cc3279de54b1d67ffb70c0cdf1dfa8ab31cd56467b5d117a8b4275b7a4dde91f86766b163a17a850f036528a7b2faafb2b
languageName: node
linkType: hard
@@ -10519,7 +9004,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"glob@npm:^7.0.0, glob@npm:^7.1.6":
+"glob@npm:^7.0.0, glob@npm:^7.1.1, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.1.6":
version: 7.2.3
resolution: "glob@npm:7.2.3"
dependencies:
@@ -10533,17 +9018,16 @@ dts-critic@latest:
languageName: node
linkType: hard
-"glob@npm:^7.1.1, glob@npm:^7.1.3, glob@npm:^7.1.4":
- version: 7.2.0
- resolution: "glob@npm:7.2.0"
+"glob@npm:^8.0.1":
+ version: 8.0.3
+ resolution: "glob@npm:8.0.3"
dependencies:
fs.realpath: ^1.0.0
inflight: ^1.0.4
inherits: 2
- minimatch: ^3.0.4
+ minimatch: ^5.0.1
once: ^1.3.0
- path-is-absolute: ^1.0.0
- checksum: 78a8ea942331f08ed2e055cb5b9e40fe6f46f579d7fd3d694f3412fe5db23223d29b7fee1575440202e9a7ff9a72ab106a39fee39934c7bedafe5e5f8ae20134
+ checksum: 50bcdea19d8e79d8de5f460b1939ffc2b3299eac28deb502093fdca22a78efebc03e66bf54f0abc3d3d07d8134d19a32850288b7440d77e072aa55f9d33b18c5
languageName: node
linkType: hard
@@ -10573,11 +9057,11 @@ dts-critic@latest:
linkType: hard
"globals@npm:^13.15.0":
- version: 13.15.0
- resolution: "globals@npm:13.15.0"
+ version: 13.17.0
+ resolution: "globals@npm:13.17.0"
dependencies:
type-fest: ^0.20.2
- checksum: 383ade0873b2ab29ce6d143466c203ed960491575bc97406395e5c8434026fb02472ab2dfff5bc16689b8460269b18fda1047975295cd0183904385c51258bae
+ checksum: fbaf4112e59b92c9f5575e85ce65e9e17c0b82711196ec5f58beb08599bbd92fd72703d6dfc9b080381fd35b644e1b11dcf25b38cc2341ec21df942594cbc8ce
languageName: node
linkType: hard
@@ -10604,21 +9088,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"globby@npm:^11.0.1":
- version: 11.0.4
- resolution: "globby@npm:11.0.4"
- dependencies:
- array-union: ^2.1.0
- dir-glob: ^3.0.1
- fast-glob: ^3.1.1
- ignore: ^5.1.4
- merge2: ^1.3.0
- slash: ^3.0.0
- checksum: d3e02d5e459e02ffa578b45f040381c33e3c0538ed99b958f0809230c423337999867d7b0dbf752ce93c46157d3bbf154d3fff988a93ccaeb627df8e1841775b
- languageName: node
- linkType: hard
-
-"globby@npm:^11.0.3, globby@npm:^11.1.0":
+"globby@npm:^11.0.1, globby@npm:^11.0.3, globby@npm:^11.1.0":
version: 11.1.0
resolution: "globby@npm:11.1.0"
dependencies:
@@ -10671,27 +9141,13 @@ dts-critic@latest:
languageName: node
linkType: hard
-"graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.2.9":
+"graceful-fs@npm:^4.1.11, graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.1.9, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9":
version: 4.2.10
resolution: "graceful-fs@npm:4.2.10"
checksum: 3f109d70ae123951905d85032ebeae3c2a5a7a997430df00ea30df0e3a6c60cf6689b109654d6fdacd28810a053348c4d14642da1d075049e6be1ba5216218da
languageName: node
linkType: hard
-"graceful-fs@npm:^4.1.2, graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.4":
- version: 4.2.8
- resolution: "graceful-fs@npm:4.2.8"
- checksum: 5d224c8969ad0581d551dfabdb06882706b31af2561bd5e2034b4097e67cc27d05232849b8643866585fd0a41c7af152950f8776f4dd5579e9853733f31461c6
- languageName: node
- linkType: hard
-
-"graceful-fs@npm:^4.2.6":
- version: 4.2.9
- resolution: "graceful-fs@npm:4.2.9"
- checksum: 68ea4e07ff2c041ada184f9278b830375f8e0b75154e3f080af6b70f66172fabb4108d19b3863a96b53fc068a310b9b6493d86d1291acc5f3861eb4b79d26ad6
- languageName: node
- linkType: hard
-
"graphql@npm:^16.3.0":
version: 16.5.0
resolution: "graphql@npm:16.5.0"
@@ -10790,14 +9246,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"has-bigints@npm:^1.0.1":
- version: 1.0.1
- resolution: "has-bigints@npm:1.0.1"
- checksum: 44ab55868174470065d2e0f8f6def1c990d12b82162a8803c679699fa8a39f966e336f2a33c185092fe8aea7e8bf2e85f1c26add5f29d98f2318bd270096b183
- languageName: node
- linkType: hard
-
-"has-bigints@npm:^1.0.2":
+"has-bigints@npm:^1.0.1, has-bigints@npm:^1.0.2":
version: 1.0.2
resolution: "has-bigints@npm:1.0.2"
checksum: 390e31e7be7e5c6fe68b81babb73dfc35d413604d7ee5f56da101417027a4b4ce6a27e46eff97ad040c835b5d228676eae99a9b5c3bc0e23c8e81a49241ff45b
@@ -10827,14 +9276,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"has-symbols@npm:^1.0.1, has-symbols@npm:^1.0.2":
- version: 1.0.2
- resolution: "has-symbols@npm:1.0.2"
- checksum: 2309c426071731be792b5be43b3da6fb4ed7cbe8a9a6bcfca1862587709f01b33d575ce8f5c264c1eaad09fca2f9a8208c0a2be156232629daa2dd0c0740976b
- languageName: node
- linkType: hard
-
-"has-symbols@npm:^1.0.3":
+"has-symbols@npm:^1.0.1, has-symbols@npm:^1.0.2, has-symbols@npm:^1.0.3":
version: 1.0.3
resolution: "has-symbols@npm:1.0.3"
checksum: a054c40c631c0d5741a8285010a0777ea0c068f99ed43e5d6eb12972da223f8af553a455132fdb0801bdcfa0e0f443c0c03a68d8555aa529b3144b446c3f2410
@@ -10964,9 +9406,9 @@ dts-critic@latest:
linkType: hard
"headers-polyfill@npm:^3.0.4":
- version: 3.0.7
- resolution: "headers-polyfill@npm:3.0.7"
- checksum: ee392c1acdd2be797090837a085b14c8dc79f221e2501508afc1474667fba0627d583e06f9ab5cad57cf9dd570942d3166f791c75b92522a17c69c1e6bfcfbc4
+ version: 3.0.10
+ resolution: "headers-polyfill@npm:3.0.10"
+ checksum: 9bb7e7056278f2da8f72a614475dcfed6e7299a1f84bff1763ac8c297d3b3e43f47e181950da249e7c922c26c552506a429123eac1f06e9e4c7d71779784c7ab
languageName: node
linkType: hard
@@ -11008,11 +9450,11 @@ dts-critic@latest:
linkType: hard
"hosted-git-info@npm:^4.0.0, hosted-git-info@npm:^4.0.1":
- version: 4.0.2
- resolution: "hosted-git-info@npm:4.0.2"
+ version: 4.1.0
+ resolution: "hosted-git-info@npm:4.1.0"
dependencies:
lru-cache: ^6.0.0
- checksum: d1b2d7720398ce96a788bd38d198fbddce089a2381f63cfb01743e6c7e5aed656e5547fe74090fb9fe53b2cb785b0e8c9ebdddadff48ed26bb471dd23cd25458
+ checksum: c3f87b3c2f7eb8c2748c8f49c0c2517c9a95f35d26f4bf54b2a8cba05d2e668f3753548b6ea366b18ec8dadb4e12066e19fa382a01496b0ffa0497eb23cbe461
languageName: node
linkType: hard
@@ -11066,6 +9508,17 @@ dts-critic@latest:
languageName: node
linkType: hard
+"http-proxy-agent@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "http-proxy-agent@npm:5.0.0"
+ dependencies:
+ "@tootallnate/once": 2
+ agent-base: 6
+ debug: 4
+ checksum: e2ee1ff1656a131953839b2a19cd1f3a52d97c25ba87bd2559af6ae87114abf60971e498021f9b73f9fd78aea8876d1fb0d4656aac8a03c6caa9fc175f22b786
+ languageName: node
+ linkType: hard
+
"http-response-object@npm:^3.0.1":
version: 3.0.2
resolution: "http-response-object@npm:3.0.2"
@@ -11108,12 +9561,12 @@ dts-critic@latest:
linkType: hard
"https-proxy-agent@npm:^5.0.0":
- version: 5.0.0
- resolution: "https-proxy-agent@npm:5.0.0"
+ version: 5.0.1
+ resolution: "https-proxy-agent@npm:5.0.1"
dependencies:
agent-base: 6
debug: 4
- checksum: 165bfb090bd26d47693597661298006841ab733d0c7383a8cb2f17373387a94c903a3ac687090aa739de05e379ab6f868bae84ab4eac288ad85c328cd1ec9e53
+ checksum: 571fccdf38184f05943e12d37d6ce38197becdd69e58d03f43637f7fa1269cf303a7d228aa27e5b27bbd3af8f09fd938e1c91dcfefff2df7ba77c20ed8dfc765
languageName: node
linkType: hard
@@ -11181,7 +9634,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"ignore@npm:^5.1.1, ignore@npm:^5.1.4, ignore@npm:^5.2.0":
+"ignore@npm:^5.1.1, ignore@npm:^5.2.0":
version: 5.2.0
resolution: "ignore@npm:5.2.0"
checksum: 6b1f926792d614f64c6c83da3a1f9c83f6196c2839aa41e1e32dd7b8d174cef2e329d75caabb62cb61ce9dc432f75e67d07d122a037312db7caa73166a1bdb77
@@ -11317,10 +9770,10 @@ dts-critic@latest:
languageName: node
linkType: hard
-"ip@npm:^1.1.5":
- version: 1.1.5
- resolution: "ip@npm:1.1.5"
- checksum: 30133981f082a060a32644f6a7746e9ba7ac9e2bc07ecc8bbdda3ee8ca9bec1190724c390e45a1ee7695e7edfd2a8f7dda2c104ec5f7ac5068c00648504c7e5a
+"ip@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "ip@npm:2.0.0"
+ checksum: cfcfac6b873b701996d71ec82a7dd27ba92450afdb421e356f44044ed688df04567344c36cbacea7d01b1c39a4c732dc012570ebe9bebfb06f27314bca625349
languageName: node
linkType: hard
@@ -11476,7 +9929,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"is-core-module@npm:^2.1.0, is-core-module@npm:^2.9.0":
+"is-core-module@npm:^2.1.0, is-core-module@npm:^2.5.0, is-core-module@npm:^2.8.1, is-core-module@npm:^2.9.0":
version: 2.9.0
resolution: "is-core-module@npm:2.9.0"
dependencies:
@@ -11485,24 +9938,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"is-core-module@npm:^2.2.0, is-core-module@npm:^2.5.0":
- version: 2.8.0
- resolution: "is-core-module@npm:2.8.0"
- dependencies:
- has: ^1.0.3
- checksum: f8b52714891e1a6c6577fcb8d5e057bab064a7a30954aab6beb5092e311473eb8da57afd334de4981dc32409ffca998412efc3a2edceb9e397cef6098d21dd91
- languageName: node
- linkType: hard
-
-"is-core-module@npm:^2.8.1":
- version: 2.8.1
- resolution: "is-core-module@npm:2.8.1"
- dependencies:
- has: ^1.0.3
- checksum: 418b7bc10768a73c41c7ef497e293719604007f88934a6ffc5f7c78702791b8528102fb4c9e56d006d69361549b3d9519440214a74aefc7e0b79e5e4411d377f
- languageName: node
- linkType: hard
-
"is-data-descriptor@npm:^0.1.4":
version: 0.1.4
resolution: "is-data-descriptor@npm:0.1.4"
@@ -11705,7 +10140,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"is-negative-zero@npm:^2.0.1, is-negative-zero@npm:^2.0.2":
+"is-negative-zero@npm:^2.0.2":
version: 2.0.2
resolution: "is-negative-zero@npm:2.0.2"
checksum: f3232194c47a549da60c3d509c9a09be442507616b69454716692e37ae9f37c4dea264fb208ad0c9f3efd15a796a46b79df07c7e53c6227c32170608b809149a
@@ -11720,11 +10155,11 @@ dts-critic@latest:
linkType: hard
"is-number-object@npm:^1.0.4":
- version: 1.0.6
- resolution: "is-number-object@npm:1.0.6"
+ version: 1.0.7
+ resolution: "is-number-object@npm:1.0.7"
dependencies:
has-tostringtag: ^1.0.0
- checksum: c697704e8fc2027fc41cb81d29805de4e8b6dc9c3efee93741dbf126a8ecc8443fef85adbc581415ae7e55d325e51d0a942324ae35c829131748cce39cba55f3
+ checksum: d1e8d01bb0a7134c74649c4e62da0c6118a0bfc6771ea3c560914d52a627873e6920dd0fd0ebc0e12ad2ff4687eac4c308f7e80320b973b2c8a2c8f97a7524f7
languageName: node
linkType: hard
@@ -11780,9 +10215,9 @@ dts-critic@latest:
linkType: hard
"is-plain-obj@npm:^4.0.0":
- version: 4.0.0
- resolution: "is-plain-obj@npm:4.0.0"
- checksum: a6bb55a90636345a64c6153b74d85a9b6440f9975f4dcc57eed596c280b7ba228c71c406355a3147ed0488330d2743d5756e052c9492b1aa4f7dcd281f08c4b6
+ version: 4.1.0
+ resolution: "is-plain-obj@npm:4.1.0"
+ checksum: 6dc45da70d04a81f35c9310971e78a6a3c7a63547ef782e3a07ee3674695081b6ca4e977fbb8efc48dae3375e0b34558d2bcd722aec9bddfa2d7db5b041be8ce
languageName: node
linkType: hard
@@ -11823,13 +10258,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"is-shared-array-buffer@npm:^1.0.1":
- version: 1.0.1
- resolution: "is-shared-array-buffer@npm:1.0.1"
- checksum: 2ffb92533e64e2876e6cfe6906871d28400b6f1a53130fe652ec8007bc0e5044d05e7af8e31bdc992fbba520bd92938cfbeedd0f286be92f250c7c76191c4d90
- languageName: node
- linkType: hard
-
"is-shared-array-buffer@npm:^1.0.2":
version: 1.0.2
resolution: "is-shared-array-buffer@npm:1.0.2"
@@ -11907,7 +10335,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"is-weakref@npm:^1.0.1, is-weakref@npm:^1.0.2":
+"is-weakref@npm:^1.0.2":
version: 1.0.2
resolution: "is-weakref@npm:1.0.2"
dependencies:
@@ -12012,12 +10440,12 @@ dts-critic@latest:
linkType: hard
"istanbul-reports@npm:^3.1.3, istanbul-reports@npm:^3.1.4":
- version: 3.1.4
- resolution: "istanbul-reports@npm:3.1.4"
+ version: 3.1.5
+ resolution: "istanbul-reports@npm:3.1.5"
dependencies:
html-escaper: ^2.0.0
istanbul-lib-report: ^3.0.0
- checksum: 2132983355710c522f6b26808015cab9a0ee8b9f5ae0db0d3edeff40b886dd83cb670fb123cb7b32dbe59473d7c00cdde2ba6136bc0acdb20a865fccea64dfe1
+ checksum: 7867228f83ed39477b188ea07e7ccb9b4f5320b6f73d1db93a0981b7414fa4ef72d3f80c4692c442f90fc250d9406e71d8d7ab65bb615cb334e6292b73192b89
languageName: node
linkType: hard
@@ -12124,18 +10552,6 @@ dts-critic@latest:
linkType: hard
"jest-diff@npm:^27.0.2":
- version: 27.4.2
- resolution: "jest-diff@npm:27.4.2"
- dependencies:
- chalk: ^4.0.0
- diff-sequences: ^27.4.0
- jest-get-type: ^27.4.0
- pretty-format: ^27.4.2
- checksum: e5bcdb4f27747795b74a56d56a9545d7fc8f1671a1251d580aea1a7a52df5db044f62ec24f2abc68305f0226d918a443f3b88d9a82f8d0dc4aaa079b621ab091
- languageName: node
- linkType: hard
-
-"jest-diff@npm:^27.5.1":
version: 27.5.1
resolution: "jest-diff@npm:27.5.1"
dependencies:
@@ -12147,18 +10563,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"jest-diff@npm:^28.1.1":
- version: 28.1.1
- resolution: "jest-diff@npm:28.1.1"
- dependencies:
- chalk: ^4.0.0
- diff-sequences: ^28.1.1
- jest-get-type: ^28.0.2
- pretty-format: ^28.1.1
- checksum: d9e0355880bee8728f7615ac0f03c66dcd4e93113935cca056a5f5a2f20ac2c7812aca6ad68e79bd1b11f2428748bd9123e6b1c7e51c93b4da3dfa5a875339f7
- languageName: node
- linkType: hard
-
"jest-diff@npm:^28.1.3":
version: 28.1.3
resolution: "jest-diff@npm:28.1.3"
@@ -12207,13 +10611,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"jest-get-type@npm:^27.4.0":
- version: 27.4.0
- resolution: "jest-get-type@npm:27.4.0"
- checksum: bb9b70e420009fdaed3026d5bccd01569f92c7500f9f544d862796d4f4efa93ced5484864b2f272c7748bfb5bfd3268d48868b169c51ab45fe5b45b9519b6e46
- languageName: node
- linkType: hard
-
"jest-get-type@npm:^27.5.1":
version: 27.5.1
resolution: "jest-get-type@npm:27.5.1"
@@ -12261,31 +10658,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"jest-matcher-utils@npm:^27.0.0":
- version: 27.5.1
- resolution: "jest-matcher-utils@npm:27.5.1"
- dependencies:
- chalk: ^4.0.0
- jest-diff: ^27.5.1
- jest-get-type: ^27.5.1
- pretty-format: ^27.5.1
- checksum: bb2135fc48889ff3fe73888f6cc7168ddab9de28b51b3148f820c89fdfd2effdcad005f18be67d0b9be80eda208ad47290f62f03d0a33f848db2dd0273c8217a
- languageName: node
- linkType: hard
-
-"jest-matcher-utils@npm:^28.0.0":
- version: 28.1.1
- resolution: "jest-matcher-utils@npm:28.1.1"
- dependencies:
- chalk: ^4.0.0
- jest-diff: ^28.1.1
- jest-get-type: ^28.0.2
- pretty-format: ^28.1.1
- checksum: cb73ccd347638cd761ef7e0b606fbd71c115bd8febe29413f7b105fff6855d4356b8094c6b72393c5457db253b9c163498f188f25f9b6308c39c510e4c2886ee
- languageName: node
- linkType: hard
-
-"jest-matcher-utils@npm:^28.1.3":
+"jest-matcher-utils@npm:^28.0.0, jest-matcher-utils@npm:^28.1.3":
version: 28.1.3
resolution: "jest-matcher-utils@npm:28.1.3"
dependencies:
@@ -12553,15 +10926,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"jiti@npm:^1.13.0":
- version: 1.13.0
- resolution: "jiti@npm:1.13.0"
- bin:
- jiti: bin/jiti.js
- checksum: 1e74d99b9a551df952057b8bce56f744caccca0044aa05021643e6ce0837ed47bc2d5b290fecb462e32988c6bf318afe77e341310c5ecf6bb63c19c80c929cb6
- languageName: node
- linkType: hard
-
"jju@npm:~1.4.0":
version: 1.4.0
resolution: "jju@npm:1.4.0"
@@ -12716,8 +11080,8 @@ dts-critic@latest:
linkType: hard
"jsdoc@npm:^3.6.10":
- version: 3.6.10
- resolution: "jsdoc@npm:3.6.10"
+ version: 3.6.11
+ resolution: "jsdoc@npm:3.6.11"
dependencies:
"@babel/parser": ^7.9.4
"@types/markdown-it": ^12.2.3
@@ -12725,7 +11089,7 @@ dts-critic@latest:
catharsis: ^0.9.0
escape-string-regexp: ^2.0.0
js2xmlparser: ^4.0.2
- klaw: ^4.0.1
+ klaw: ^3.0.0
markdown-it: ^12.3.2
markdown-it-anchor: ^8.4.1
marked: ^4.0.10
@@ -12736,7 +11100,7 @@ dts-critic@latest:
underscore: ~1.13.2
bin:
jsdoc: jsdoc.js
- checksum: 8902aa91a51c393036e0c4701ec6b1134dee5f0b42e6b9c7660958410200868368d6bf3df537d1c0fbcd193da83cbea9b8a60804f93bca658bc10e37ae999ab7
+ checksum: 7920b5cba6200c8f56c9ac2ac5e89d06b6581dd1ce22e66976409fad8b68c16bfd8cd30fe9af58baeacc9f6bd9ba06d901ca4f5e234944f42a3c37e55e4ddcf0
languageName: node
linkType: hard
@@ -12853,9 +11217,9 @@ dts-critic@latest:
linkType: hard
"jsonc-parser@npm:^3.0.0":
- version: 3.0.0
- resolution: "jsonc-parser@npm:3.0.0"
- checksum: 1df2326f1f9688de30c70ff19c5b2a83ba3b89a1036160da79821d1361090775e9db502dc57a67c11b56e1186fc1ed70b887f25c5febf9a3ec4f91435836c99d
+ version: 3.1.0
+ resolution: "jsonc-parser@npm:3.1.0"
+ checksum: 81b00c565c60cb1b400523a918d42ad9c7bb3d9cf34c708bf78d37c8c496ecd670c3ff8828f2f60aa6e6627ef4287982794ddf92261ea71e320973c54b29fb22
languageName: node
linkType: hard
@@ -12923,22 +11287,22 @@ dts-critic@latest:
linkType: hard
"jsx-ast-utils@npm:^2.4.1 || ^3.0.0":
- version: 3.3.0
- resolution: "jsx-ast-utils@npm:3.3.0"
+ version: 3.3.2
+ resolution: "jsx-ast-utils@npm:3.3.2"
dependencies:
- array-includes: ^3.1.4
+ array-includes: ^3.1.5
object.assign: ^4.1.2
- checksum: e3c0667e8979c70600fb0456b19f0ec194994c953678ac2772a819d8d5740df2ed751e49e4f1db7869bf63251585a93b18acd42ef02269fe41cb23941d0d4950
+ checksum: 61d4596d44480afc03ae0a7ebb272aa6603dc4c3645805dea0fc8d9f0693542cd0959f3ba7c0c9b16c13dd5a900c7c4310108bada273132a8355efe3fed22064
languageName: node
linkType: hard
"keyv@npm:^4.0.0":
- version: 4.3.0
- resolution: "keyv@npm:4.3.0"
+ version: 4.3.3
+ resolution: "keyv@npm:4.3.3"
dependencies:
compress-brotli: ^1.3.8
json-buffer: 3.0.1
- checksum: abcb5885fc636fb867929234da9e1cd4f74a7da5db2c59fe5f8537372416cfa4e25b54e1c18ae9c3a0e9688452d15bf32fbba1ed9dfb57047673fe6ddb8a7bb6
+ checksum: bcc946eeec3407fb3b42d831ce985357162113c5f07a8c45c12ede39704ba2d99be4c3dded76d2d2d2a2366627e42440bdde24393216164156928399949c12a1
languageName: node
linkType: hard
@@ -12974,10 +11338,12 @@ dts-critic@latest:
languageName: node
linkType: hard
-"klaw@npm:^4.0.1":
- version: 4.0.1
- resolution: "klaw@npm:4.0.1"
- checksum: 7835649ef632f96099d500f94b38c032acf1432ad5e87da596a2509c2f6a63a7fc346fb357e2227091cc433af5c1378ed448e1c0522ed028981dcd446152291e
+"klaw@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "klaw@npm:3.0.0"
+ dependencies:
+ graceful-fs: ^4.1.9
+ checksum: 1bf9de22392c80d28de8a2babd6f0de29fa52fcdc1654838fd35174b3641c168ec32b8b03022191e3c190efd535c31fce23f85e29cb260245571da7263ef418e
languageName: node
linkType: hard
@@ -12989,9 +11355,9 @@ dts-critic@latest:
linkType: hard
"kleur@npm:^4.0.3":
- version: 4.1.4
- resolution: "kleur@npm:4.1.4"
- checksum: 7f6db36e378045dec14acd3cbf0b1e59130c09e984ee8b8ce56dd2d2257cfff90389c1e8f8b19bd09dd5d241080566a814b4ccd99fdcef91f59ef93ec33c8a44
+ version: 4.1.5
+ resolution: "kleur@npm:4.1.5"
+ checksum: 1dc476e32741acf0b1b5b0627ffd0d722e342c1b0da14de3e8ae97821327ca08f9fb944542fb3c126d90ac5f27f9d804edbe7c585bf7d12ef495d115e0f22c12
languageName: node
linkType: hard
@@ -13026,13 +11392,20 @@ dts-critic@latest:
languageName: node
linkType: hard
-"lilconfig@npm:2.0.5, lilconfig@npm:^2.0.5":
+"lilconfig@npm:2.0.5":
version: 2.0.5
resolution: "lilconfig@npm:2.0.5"
checksum: f7bb9e42656f06930ad04e583026f087508ae408d3526b8b54895e934eb2a966b7aafae569656f2c79a29fe6d779b3ec44ba577e80814734c8655d6f71cdf2d1
languageName: node
linkType: hard
+"lilconfig@npm:^2.0.5":
+ version: 2.0.6
+ resolution: "lilconfig@npm:2.0.6"
+ checksum: 40a3cd72f103b1be5975f2ac1850810b61d4053e20ab09be8d3aeddfe042187e1ba70b4651a7e70f95efa1642e7dc8b2ae395b317b7d7753b241b43cef7c0f7d
+ languageName: node
+ linkType: hard
+
"lines-and-columns@npm:^1.1.6":
version: 1.2.4
resolution: "lines-and-columns@npm:1.2.4"
@@ -13144,14 +11517,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"local-pkg@npm:^0.4.1":
- version: 0.4.1
- resolution: "local-pkg@npm:0.4.1"
- checksum: 4ab3b4853ffbc3b292a3ae2e22618dbc348418a2ebf60ada55fdcc5a8583f9167c89fc7977194ffa39d0a4c5078f9c421d246afdd252fea7a840f7a8f3b5f96b
- languageName: node
- linkType: hard
-
-"local-pkg@npm:^0.4.2":
+"local-pkg@npm:^0.4.1, local-pkg@npm:^0.4.2":
version: 0.4.2
resolution: "local-pkg@npm:0.4.2"
checksum: 22be451353c25c4411b552bf01880ebc9e995b93574b2facc7757968d888356df59199cacada14162ab53bbc9da055bb692c907b4171f008dbce45a2afc777c1
@@ -13369,6 +11735,13 @@ dts-critic@latest:
languageName: node
linkType: hard
+"lru-cache@npm:^7.7.1":
+ version: 7.13.1
+ resolution: "lru-cache@npm:7.13.1"
+ checksum: f53c7dd098a7afd6342b23f7182629edff206c7665de79445a7f5455440e768a4d1c6ec52e1a16175580c71535c9437dfb6f6bc22ca1a0e4a7454a97cde87329
+ languageName: node
+ linkType: hard
+
"lunr@npm:^2.3.9":
version: 2.3.9
resolution: "lunr@npm:2.3.9"
@@ -13429,7 +11802,31 @@ dts-critic@latest:
languageName: node
linkType: hard
-"make-fetch-happen@npm:^9.0.1, make-fetch-happen@npm:^9.1.0":
+"make-fetch-happen@npm:^10.0.3":
+ version: 10.2.0
+ resolution: "make-fetch-happen@npm:10.2.0"
+ dependencies:
+ agentkeepalive: ^4.2.1
+ cacache: ^16.1.0
+ http-cache-semantics: ^4.1.0
+ http-proxy-agent: ^5.0.0
+ https-proxy-agent: ^5.0.0
+ is-lambda: ^1.0.1
+ lru-cache: ^7.7.1
+ minipass: ^3.1.6
+ minipass-collect: ^1.0.2
+ minipass-fetch: ^2.0.3
+ minipass-flush: ^1.0.5
+ minipass-pipeline: ^1.2.4
+ negotiator: ^0.6.3
+ promise-retry: ^2.0.1
+ socks-proxy-agent: ^7.0.0
+ ssri: ^9.0.0
+ checksum: 2f6c294179972f56fab40fd8618f07841e06550692bb78f6da16e7afaa9dca78c345b08cf44a77a8907ef3948e4dc77e93eb7492b8381f1217d7ac057a7522f8
+ languageName: node
+ linkType: hard
+
+"make-fetch-happen@npm:^9.0.1":
version: 9.1.0
resolution: "make-fetch-happen@npm:9.1.0"
dependencies:
@@ -13524,32 +11921,23 @@ dts-critic@latest:
languageName: node
linkType: hard
-"marked@npm:^4.0.10, marked@npm:^4.0.16":
- version: 4.0.16
- resolution: "marked@npm:4.0.16"
- bin:
- marked: bin/marked.js
- checksum: c0ef780bf56c9bb49c15b66683e5648410c924c1d725f1489fc3c7dc3bd01194c50d720052bb0282ad7907f472dfdc8fa278acbc7903c5db3be4b83487e0d684
- languageName: node
- linkType: hard
-
-"marked@npm:^4.0.12":
- version: 4.0.14
- resolution: "marked@npm:4.0.14"
+"marked@npm:^4.0.10, marked@npm:^4.0.12, marked@npm:^4.0.16":
+ version: 4.0.18
+ resolution: "marked@npm:4.0.18"
bin:
marked: bin/marked.js
- checksum: 778bc2fc94c51ae4fbafe5a08bc1f3917799c4dd39e9fccd972a97df4e5bc5aa78664b7143d12d4b4969608fb90c6a2de3f19811a2f9ccf6b7f207022f2842ba
+ checksum: a13e886d5059a8500a6fd552feecc16e18fc3636aa491fce372384b1fdea67e323d67ac49f7618f6977e66ca96e39f27400eb5c1273d5ee9c2301e8c33e90dce
languageName: node
linkType: hard
"mdast-util-definitions@npm:^5.0.0":
- version: 5.1.0
- resolution: "mdast-util-definitions@npm:5.1.0"
+ version: 5.1.1
+ resolution: "mdast-util-definitions@npm:5.1.1"
dependencies:
"@types/mdast": ^3.0.0
"@types/unist": ^2.0.0
- unist-util-visit: ^3.0.0
- checksum: a5237dc5925d965ec5f4c237b8d2fbc4728c18402f4f0cea0c947fb6241d7f2c7264b8bd5000363800388003d1474d57f5d5d29e0605a504bd186e59ddf8906a
+ unist-util-visit: ^4.0.0
+ checksum: f8025e2c35f6f8641528037abe18f492ef100e00a48c92cf78b7a313f9ccdb0e30c6aed0b40539767a3f425be09e78cb0f2f9bc4131fff41ea4664a1a7314a14
languageName: node
linkType: hard
@@ -13623,15 +12011,15 @@ dts-critic@latest:
linkType: hard
"mdast-util-mdxjs-esm@npm:^1.0.0":
- version: 1.2.0
- resolution: "mdast-util-mdxjs-esm@npm:1.2.0"
+ version: 1.2.1
+ resolution: "mdast-util-mdxjs-esm@npm:1.2.1"
dependencies:
"@types/estree-jsx": ^0.0.1
"@types/hast": ^2.0.0
"@types/mdast": ^3.0.0
mdast-util-from-markdown: ^1.0.0
mdast-util-to-markdown: ^1.0.0
- checksum: be8a9bc77bc66b2a7dd9057974b30e7e8e0a37caee467ee7f22451da25e4aeb58eec78b93132672449f8714bfb5c60dc58b3822956bdc8fffbc2ff476a1e4450
+ checksum: cc9b50612187208da2c592057b9b9f056e2eb6689891f6c9a85eeb800673f93d3b99b2a11e784114802db695654f2d4ad9af8fde8e3aadcdad75904a090c83ab
languageName: node
linkType: hard
@@ -14135,17 +12523,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"micromatch@npm:^4.0.4":
- version: 4.0.4
- resolution: "micromatch@npm:4.0.4"
- dependencies:
- braces: ^3.0.1
- picomatch: ^2.2.3
- checksum: ef3d1c88e79e0a68b0e94a03137676f3324ac18a908c245a9e5936f838079fcc108ac7170a5fadc265a9c2596963462e402841406bda1a4bb7b68805601d631c
- languageName: node
- linkType: hard
-
-"micromatch@npm:^4.0.5":
+"micromatch@npm:^4.0.4, micromatch@npm:^4.0.5":
version: 4.0.5
resolution: "micromatch@npm:4.0.5"
dependencies:
@@ -14155,13 +12533,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"mime-db@npm:1.51.0":
- version: 1.51.0
- resolution: "mime-db@npm:1.51.0"
- checksum: 613b1ac9d6e725cc24444600b124a7f1ce6c60b1baa654f39a3e260d0995a6dffc5693190217e271af7e2a5612dae19f2a73f3e316707d797a7391165f7ef423
- languageName: node
- linkType: hard
-
"mime-db@npm:1.52.0, mime-db@npm:>= 1.43.0 < 2":
version: 1.52.0
resolution: "mime-db@npm:1.52.0"
@@ -14169,16 +12540,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"mime-types@npm:^2.1.12, mime-types@npm:~2.1.19":
- version: 2.1.34
- resolution: "mime-types@npm:2.1.34"
- dependencies:
- mime-db: 1.51.0
- checksum: 67013de9e9d6799bde6d669d18785b7e18bcd212e710d3e04a4727f92f67a8ad4e74aee24be28b685adb794944814bde649119b58ee3282ffdbee58f9278d9f3
- languageName: node
- linkType: hard
-
-"mime-types@npm:~2.1.24, mime-types@npm:~2.1.34":
+"mime-types@npm:^2.1.12, mime-types@npm:~2.1.19, mime-types@npm:~2.1.24, mime-types@npm:~2.1.34":
version: 2.1.35
resolution: "mime-types@npm:2.1.35"
dependencies:
@@ -14240,7 +12602,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"minimatch@npm:^3.0.2, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2":
+"minimatch@npm:^3.0.2, minimatch@npm:^3.0.4, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2":
version: 3.1.2
resolution: "minimatch@npm:3.1.2"
dependencies:
@@ -14249,16 +12611,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"minimatch@npm:^3.0.4":
- version: 3.0.4
- resolution: "minimatch@npm:3.0.4"
- dependencies:
- brace-expansion: ^1.1.7
- checksum: 66ac295f8a7b59788000ea3749938b0970344c841750abd96694f80269b926ebcafad3deeb3f1da2522978b119e6ae3a5869b63b13a7859a456b3408bd18a078
- languageName: node
- linkType: hard
-
-"minimatch@npm:^5.1.0":
+"minimatch@npm:^5.0.1, minimatch@npm:^5.1.0":
version: 5.1.0
resolution: "minimatch@npm:5.1.0"
dependencies:
@@ -14278,14 +12631,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"minimist@npm:^1.2.0, minimist@npm:^1.2.5":
- version: 1.2.5
- resolution: "minimist@npm:1.2.5"
- checksum: 86706ce5b36c16bfc35c5fe3dbb01d5acdc9a22f2b6cc810b6680656a1d2c0e44a0159c9a3ba51fb072bb5c203e49e10b51dcd0eec39c481f4c42086719bae52
- languageName: node
- linkType: hard
-
-"minimist@npm:^1.2.6":
+"minimist@npm:^1.2.0, minimist@npm:^1.2.5, minimist@npm:^1.2.6":
version: 1.2.6
resolution: "minimist@npm:1.2.6"
checksum: d15428cd1e11eb14e1233bcfb88ae07ed7a147de251441d61158619dfb32c4d7e9061d09cab4825fdee18ecd6fce323228c8c47b5ba7cd20af378ca4048fb3fb
@@ -14316,6 +12662,21 @@ dts-critic@latest:
languageName: node
linkType: hard
+"minipass-fetch@npm:^2.0.3":
+ version: 2.1.0
+ resolution: "minipass-fetch@npm:2.1.0"
+ dependencies:
+ encoding: ^0.1.13
+ minipass: ^3.1.6
+ minipass-sized: ^1.0.3
+ minizlib: ^2.1.2
+ dependenciesMeta:
+ encoding:
+ optional: true
+ checksum: 1334732859a3f7959ed22589bafd9c40384b885aebb5932328071c33f86b3eb181d54c86919675d1825ab5f1c8e4f328878c863873258d113c29d79a4b0c9c9f
+ languageName: node
+ linkType: hard
+
"minipass-flush@npm:^1.0.5":
version: 1.0.5
resolution: "minipass-flush@npm:1.0.5"
@@ -14353,16 +12714,16 @@ dts-critic@latest:
languageName: node
linkType: hard
-"minipass@npm:^3.0.0, minipass@npm:^3.1.0, minipass@npm:^3.1.1, minipass@npm:^3.1.3":
- version: 3.1.6
- resolution: "minipass@npm:3.1.6"
+"minipass@npm:^3.0.0, minipass@npm:^3.1.0, minipass@npm:^3.1.1, minipass@npm:^3.1.3, minipass@npm:^3.1.6":
+ version: 3.3.4
+ resolution: "minipass@npm:3.3.4"
dependencies:
yallist: ^4.0.0
- checksum: 57a04041413a3531a65062452cb5175f93383ef245d6f4a2961d34386eb9aa8ac11ac7f16f791f5e8bbaf1dfb1ef01596870c88e8822215db57aa591a5bb0a77
+ checksum: 5d95a7738c54852ba78d484141e850c792e062666a2d0c681a5ac1021275beb7e1acb077e59f9523ff1defb80901aea4e30fac10ded9a20a25d819a42916ef1b
languageName: node
linkType: hard
-"minizlib@npm:^2.0.0, minizlib@npm:^2.1.1":
+"minizlib@npm:^2.0.0, minizlib@npm:^2.1.1, minizlib@npm:^2.1.2":
version: 2.1.2
resolution: "minizlib@npm:2.1.2"
dependencies:
@@ -14397,13 +12758,13 @@ dts-critic@latest:
linkType: hard
"mkdirp@npm:>=0.5 0, mkdirp@npm:^0.5.1, mkdirp@npm:^0.5.3":
- version: 0.5.5
- resolution: "mkdirp@npm:0.5.5"
+ version: 0.5.6
+ resolution: "mkdirp@npm:0.5.6"
dependencies:
- minimist: ^1.2.5
+ minimist: ^1.2.6
bin:
mkdirp: bin/cmd.js
- checksum: 3bce20ea525f9477befe458ab85284b0b66c8dc3812f94155af07c827175948cdd8114852ac6c6d82009b13c1048c37f6d98743eb019651ee25c39acc8aabe7d
+ checksum: 0c91b721bb12c3f9af4b77ebf73604baf350e64d80df91754dc509491ae93bf238581e59c7188360cec7cb62fc4100959245a42cfe01834efedc5e9d068376c2
languageName: node
linkType: hard
@@ -14438,17 +12799,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"mlly@npm:^0.5.3":
- version: 0.5.4
- resolution: "mlly@npm:0.5.4"
- dependencies:
- pathe: ^0.3.1
- pkg-types: ^0.3.3
- checksum: fb756e817aaf5edb94f3cd238bf608c59bb1e0f505fa4b9bd38d13a151e4120c561e8689bff4265602b0fea37cc43902b0d8e6754301b36c4ca5167926e75709
- languageName: node
- linkType: hard
-
-"mlly@npm:^0.5.4":
+"mlly@npm:^0.5.3, mlly@npm:^0.5.4":
version: 0.5.5
resolution: "mlly@npm:0.5.5"
dependencies:
@@ -14458,14 +12809,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"mock-socket@npm:^9.1.0":
- version: 9.1.0
- resolution: "mock-socket@npm:9.1.0"
- checksum: 19b16017da9810bbdcc2bc8e7e2b3ff0c7aa57d0f1edf5ab354e468457c1bace8d3d15c885123a614aa9cf916f6b40de5075b94f56b314a53a0ed2fbdff02e14
- languageName: node
- linkType: hard
-
-"mock-socket@npm:^9.1.5":
+"mock-socket@npm:^9.1.0, mock-socket@npm:^9.1.5":
version: 9.1.5
resolution: "mock-socket@npm:9.1.5"
checksum: a01586bc2850eb5809eda6de0c7ab19255c1e0eb217a805f86ba662bb4aab00b919032d67e7c826c6c12bcfb2fbe19cecbacf0ab6184936487edc4ba37d3ba53
@@ -14500,9 +12844,9 @@ dts-critic@latest:
linkType: hard
"mrmime@npm:^1.0.0":
- version: 1.0.0
- resolution: "mrmime@npm:1.0.0"
- checksum: 2c72a40942af7c53bc97d1e9e9c5cb0e6541d18f736811c3a1b46fa2a2b2362480d687daa8ae8372523acaacd82426a4f7ce34b0bf1825ea83b3983e8cb91afd
+ version: 1.0.1
+ resolution: "mrmime@npm:1.0.1"
+ checksum: cc979da44bbbffebaa8eaf7a45117e851f2d4cb46a3ada6ceb78130466a04c15a0de9a9ce1c8b8ba6f6e1b8618866b1352992bf1757d241c0ddca558b9f28a77
languageName: node
linkType: hard
@@ -14580,6 +12924,15 @@ dts-critic@latest:
languageName: node
linkType: hard
+"nan@npm:^2.14.0":
+ version: 2.16.0
+ resolution: "nan@npm:2.16.0"
+ dependencies:
+ node-gyp: latest
+ checksum: cb16937273ea55b01ea47df244094c12297ce6b29b36e845d349f1f7c268b8d7c5abd126a102c5678a1e1afd0d36bba35ea0cc959e364928ce60561c9306064a
+ languageName: node
+ linkType: hard
+
"nanoid@npm:^3.3.4":
version: 3.3.4
resolution: "nanoid@npm:3.3.4"
@@ -14615,20 +12968,13 @@ dts-critic@latest:
languageName: node
linkType: hard
-"negotiator@npm:0.6.3":
+"negotiator@npm:0.6.3, negotiator@npm:^0.6.2, negotiator@npm:^0.6.3":
version: 0.6.3
resolution: "negotiator@npm:0.6.3"
checksum: b8ffeb1e262eff7968fc90a2b6767b04cfd9842582a9d0ece0af7049537266e7b2506dfb1d107a32f06dd849ab2aea834d5830f7f4d0e5cb7d36e1ae55d021d9
languageName: node
linkType: hard
-"negotiator@npm:^0.6.2":
- version: 0.6.2
- resolution: "negotiator@npm:0.6.2"
- checksum: dfddaff6c06792f1c4c3809e29a427b8daef8cd437c83b08dd51d7ee11bbd1c29d9512d66b801144d6c98e910ffd8723f2432e0cbf8b18d41d2a09599c975ab3
- languageName: node
- linkType: hard
-
"neo-async@npm:^2.5.0, neo-async@npm:^2.6.0":
version: 2.6.2
resolution: "neo-async@npm:2.6.2"
@@ -14655,20 +13001,13 @@ dts-critic@latest:
linkType: hard
"node-fetch-native@npm:^0.1.3":
- version: 0.1.3
- resolution: "node-fetch-native@npm:0.1.3"
- checksum: b9659a22c41b471e970ef3223682d08c7c439deed9ed647f218bda503dae06d78f1882e1532ff9a70d088eac4a20b12a1711e18a756f609e26d6956955277a40
- languageName: node
- linkType: hard
-
-"node-fetch@npm:2.6.1":
- version: 2.6.1
- resolution: "node-fetch@npm:2.6.1"
- checksum: 91075bedd57879117e310fbcc36983ad5d699e522edb1ebcdc4ee5294c982843982652925c3532729fdc86b2d64a8a827797a745f332040d91823c8752ee4d7c
+ version: 0.1.4
+ resolution: "node-fetch-native@npm:0.1.4"
+ checksum: f7c5feb80159e95ac2165cfa650c8446158e3b1549f6046d83f75bd89cc32ef4673a57b9a19fc0335ad77a08527aed4cf53d83dc3d41ef628672fe97369f7f87
languageName: node
linkType: hard
-"node-fetch@npm:^2.6.7, node-fetch@npm:^2.x.x":
+"node-fetch@npm:2.6.7, node-fetch@npm:^2.6.7, node-fetch@npm:^2.x.x":
version: 2.6.7
resolution: "node-fetch@npm:2.6.7"
dependencies:
@@ -14683,13 +13022,13 @@ dts-critic@latest:
linkType: hard
"node-gyp@npm:latest":
- version: 8.4.1
- resolution: "node-gyp@npm:8.4.1"
+ version: 9.1.0
+ resolution: "node-gyp@npm:9.1.0"
dependencies:
env-paths: ^2.2.0
glob: ^7.1.4
graceful-fs: ^4.2.6
- make-fetch-happen: ^9.1.0
+ make-fetch-happen: ^10.0.3
nopt: ^5.0.0
npmlog: ^6.0.0
rimraf: ^3.0.2
@@ -14698,7 +13037,7 @@ dts-critic@latest:
which: ^2.0.2
bin:
node-gyp: bin/node-gyp.js
- checksum: 341710b5da39d3660e6a886b37e210d33f8282047405c2e62c277bcc744c7552c5b8b972ebc3a7d5c2813794e60cc48c3ebd142c46d6e0321db4db6c92dd0355
+ checksum: 1437fa4a879b5b9010604128e8da8609b57c66034262087539ee04a8b764b8436af2be01bab66f8fc729a3adba2dcc21b10a32b9f552696c3fa8cd657d134fc4
languageName: node
linkType: hard
@@ -14709,10 +13048,10 @@ dts-critic@latest:
languageName: node
linkType: hard
-"node-releases@npm:^2.0.3":
- version: 2.0.5
- resolution: "node-releases@npm:2.0.5"
- checksum: e85d949addd19f8827f32569d2be5751e7812ccf6cc47879d49f79b5234ff4982225e39a3929315f96370823b070640fb04d79fc0ddec8b515a969a03493a42f
+"node-releases@npm:^2.0.6":
+ version: 2.0.6
+ resolution: "node-releases@npm:2.0.6"
+ checksum: e86a926dc9fbb3b41b4c4a89d998afdf140e20a4e8dbe6c0a807f7b2948b42ea97d7fd3ad4868041487b6e9ee98409829c6e4d84a734a4215dff060a7fbeb4bf
languageName: node
linkType: hard
@@ -14821,14 +13160,14 @@ dts-critic@latest:
linkType: hard
"npmlog@npm:^6.0.0":
- version: 6.0.0
- resolution: "npmlog@npm:6.0.0"
+ version: 6.0.2
+ resolution: "npmlog@npm:6.0.2"
dependencies:
- are-we-there-yet: ^2.0.0
+ are-we-there-yet: ^3.0.0
console-control-strings: ^1.1.0
- gauge: ^4.0.0
+ gauge: ^4.0.3
set-blocking: ^2.0.0
- checksum: 33d8a7fe3d63bf83b16655b6588ae7ba10b5f37b067a661e7cab6508660d7c3204ae716ee2c5ce4eb9626fd1489cf2fa7645d789bc3b704f8c3ccb04a532a50b
+ checksum: ae238cd264a1c3f22091cdd9e2b106f684297d3c184f1146984ecbe18aaa86343953f26b9520dedd1b1372bc0316905b736c1932d778dbeb1fcf5a1001390e2a
languageName: node
linkType: hard
@@ -14871,21 +13210,14 @@ dts-critic@latest:
languageName: node
linkType: hard
-"object-inspect@npm:^1.11.0, object-inspect@npm:^1.9.0":
- version: 1.12.0
- resolution: "object-inspect@npm:1.12.0"
- checksum: 2b36d4001a9c921c6b342e2965734519c9c58c355822243c3207fbf0aac271f8d44d30d2d570d450b2cc6f0f00b72bcdba515c37827d2560e5f22b1899a31cf4
- languageName: node
- linkType: hard
-
-"object-inspect@npm:^1.12.0, object-inspect@npm:^1.12.2":
+"object-inspect@npm:^1.12.0, object-inspect@npm:^1.12.2, object-inspect@npm:^1.9.0":
version: 1.12.2
resolution: "object-inspect@npm:1.12.2"
checksum: a534fc1b8534284ed71f25ce3a496013b7ea030f3d1b77118f6b7b1713829262be9e6243acbcb3ef8c626e2b64186112cb7f6db74e37b2789b9c789ca23048b2
languageName: node
linkType: hard
-"object-keys@npm:^1.0.12, object-keys@npm:^1.1.1":
+"object-keys@npm:^1.1.1":
version: 1.1.1
resolution: "object-keys@npm:1.1.1"
checksum: b363c5e7644b1e1b04aa507e88dcb8e3a2f52b6ffd0ea801e4c7a62d5aa559affe21c55a07fd4b1fd55fc03a33c610d73426664b20032405d7b92a1414c34d6a
@@ -15374,14 +13706,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"pathe@npm:^0.3.0":
- version: 0.3.0
- resolution: "pathe@npm:0.3.0"
- checksum: 1da704da2b625b9062be4079b6f8d5609e053add991520fb6a43905b492ee48e5c61cc6fb87f7ae970df39d4b7be1e6840285f683d670f8b430481e46c81c863
- languageName: node
- linkType: hard
-
-"pathe@npm:^0.3.1, pathe@npm:^0.3.2":
+"pathe@npm:^0.3.0, pathe@npm:^0.3.2":
version: 0.3.2
resolution: "pathe@npm:0.3.2"
checksum: a3fdfe2875b074d5dd20f32d89d0d2ded2341423cdccfaec820bc994ea9d76badba2de6fd522fcf580dc5e5b3adb238d3b71855001d428c5554fb61223001eed
@@ -15451,14 +13776,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.2.3":
- version: 2.3.0
- resolution: "picomatch@npm:2.3.0"
- checksum: 16818720ea7c5872b6af110760dee856c8e4cd79aed1c7a006d076b1cc09eff3ae41ca5019966694c33fbd2e1cc6ea617ab10e4adac6df06556168f13be3fca2
- languageName: node
- linkType: hard
-
-"picomatch@npm:^2.2.2, picomatch@npm:^2.3.1":
+"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.2.2, picomatch@npm:^2.2.3, picomatch@npm:^2.3.1":
version: 2.3.1
resolution: "picomatch@npm:2.3.1"
checksum: 050c865ce81119c4822c45d3c84f1ced46f93a0126febae20737bd05ca20589c564d6e9226977df859ed5e03dc73f02584a2b0faad36e896936238238b0446cf
@@ -15602,46 +13920,22 @@ dts-critic@latest:
"pretty-bytes@npm:^6.0.0":
version: 6.0.0
resolution: "pretty-bytes@npm:6.0.0"
- checksum: 0bb9f95e617236404b29a8392c6efd82d65805f622f5e809ecd70068102be857d4e3276c86d2a32fa2ef851cc29472e380945dab7bec83ec79bd57a19a10faf7
- languageName: node
- linkType: hard
-
-"pretty-format@npm:^27.0.0, pretty-format@npm:^27.0.2, pretty-format@npm:^27.5.1":
- version: 27.5.1
- resolution: "pretty-format@npm:27.5.1"
- dependencies:
- ansi-regex: ^5.0.1
- ansi-styles: ^5.0.0
- react-is: ^17.0.1
- checksum: cf610cffcb793885d16f184a62162f2dd0df31642d9a18edf4ca298e909a8fe80bdbf556d5c9573992c102ce8bf948691da91bf9739bee0ffb6e79c8a8a6e088
+ checksum: 0bb9f95e617236404b29a8392c6efd82d65805f622f5e809ecd70068102be857d4e3276c86d2a32fa2ef851cc29472e380945dab7bec83ec79bd57a19a10faf7
languageName: node
linkType: hard
-"pretty-format@npm:^27.4.2":
- version: 27.4.2
- resolution: "pretty-format@npm:27.4.2"
+"pretty-format@npm:^27.0.2, pretty-format@npm:^27.5.1":
+ version: 27.5.1
+ resolution: "pretty-format@npm:27.5.1"
dependencies:
- "@jest/types": ^27.4.2
ansi-regex: ^5.0.1
ansi-styles: ^5.0.0
react-is: ^17.0.1
- checksum: 0daaf00c4dcb35493e57d30147e8045d0c45cb47fc4c94e3ab1892401abe939627c39975c77cc81eb2581aaa5b12bf23ef669fa550bec68b396fb79dd8c10afa
- languageName: node
- linkType: hard
-
-"pretty-format@npm:^28.0.0, pretty-format@npm:^28.1.1":
- version: 28.1.1
- resolution: "pretty-format@npm:28.1.1"
- dependencies:
- "@jest/schemas": ^28.0.2
- ansi-regex: ^5.0.1
- ansi-styles: ^5.0.0
- react-is: ^18.0.0
- checksum: 7fde4e2d6fd57cef8cf2fa9d5560cc62126de481f09c65dccfe89a3e6158a04355cff278853ace07fdf7f2f48c3d77877c00c47d7d3c1c028dcff5c322300d79
+ checksum: cf610cffcb793885d16f184a62162f2dd0df31642d9a18edf4ca298e909a8fe80bdbf556d5c9573992c102ce8bf948691da91bf9739bee0ffb6e79c8a8a6e088
languageName: node
linkType: hard
-"pretty-format@npm:^28.1.3":
+"pretty-format@npm:^28.0.0, pretty-format@npm:^28.1.3":
version: 28.1.3
resolution: "pretty-format@npm:28.1.3"
dependencies:
@@ -15785,9 +14079,9 @@ dts-critic@latest:
linkType: hard
"psl@npm:^1.1.28":
- version: 1.8.0
- resolution: "psl@npm:1.8.0"
- checksum: 6150048ed2da3f919478bee8a82f3828303bc0fc730fb015a48f83c9977682c7b28c60ab01425a72d82a2891a1681627aa530a991d50c086b48a3be27744bde7
+ version: 1.9.0
+ resolution: "psl@npm:1.9.0"
+ checksum: 20c4277f640c93d393130673f392618e9a8044c6c7bf61c53917a0fddb4952790f5f362c6c730a9c32b124813e173733f9895add8d26f566ed0ea0654b2e711d
languageName: node
linkType: hard
@@ -15836,7 +14130,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"qs@npm:6.10.3, qs@npm:^6.10.3":
+"qs@npm:6.10.3":
version: 6.10.3
resolution: "qs@npm:6.10.3"
dependencies:
@@ -15852,19 +14146,19 @@ dts-critic@latest:
languageName: node
linkType: hard
-"qs@npm:^6.4.0":
- version: 6.10.5
- resolution: "qs@npm:6.10.5"
+"qs@npm:^6.10.3, qs@npm:^6.4.0":
+ version: 6.11.0
+ resolution: "qs@npm:6.11.0"
dependencies:
side-channel: ^1.0.4
- checksum: b3873189a11bcf48445864b3ba66f7a76db0d9d874955d197779f561addfa604884f7b107971526ce1eca02c99bf7d1e47f28a3e7e6e29204d798fb279164226
+ checksum: 6e1f29dd5385f7488ec74ac7b6c92f4d09a90408882d0c208414a34dd33badc1a621019d4c799a3df15ab9b1d0292f97c1dd71dc7c045e69f81a8064e5af7297
languageName: node
linkType: hard
"qs@npm:~6.5.2":
- version: 6.5.2
- resolution: "qs@npm:6.5.2"
- checksum: 24af7b9928ba2141233fba2912876ff100403dba1b08b20c3b490da9ea6c636760445ea2211a079e7dfa882a5cf8f738337b3748c8bdd0f93358fa8881d2db8f
+ version: 6.5.3
+ resolution: "qs@npm:6.5.3"
+ checksum: 6f20bf08cabd90c458e50855559539a28d00b2f2e7dddcb66082b16a43188418cb3cb77cbd09268bcef6022935650f0534357b8af9eeb29bf0f27ccb17655692
languageName: node
linkType: hard
@@ -15944,9 +14238,9 @@ dts-critic@latest:
linkType: hard
"react-is@npm:^18.0.0":
- version: 18.1.0
- resolution: "react-is@npm:18.1.0"
- checksum: d206a0fe6790851bff168727bfb896de02c5591695afb0c441163e8630136a3e13ee1a7ddd59fdccddcc93968b4721ae112c10f790b194b03b35a3dc13a355ef
+ version: 18.2.0
+ resolution: "react-is@npm:18.2.0"
+ checksum: e72d0ba81b5922759e4aff17e0252bd29988f9642ed817f56b25a3e217e13eea8a7f2322af99a06edb779da12d5d636e9fda473d620df9a3da0df2a74141d53e
languageName: node
linkType: hard
@@ -16234,20 +14528,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"regexpu-core@npm:^5.0.1":
- version: 5.0.1
- resolution: "regexpu-core@npm:5.0.1"
- dependencies:
- regenerate: ^1.4.2
- regenerate-unicode-properties: ^10.0.1
- regjsgen: ^0.6.0
- regjsparser: ^0.8.2
- unicode-match-property-ecmascript: ^2.0.0
- unicode-match-property-value-ecmascript: ^2.0.0
- checksum: 6151a9700dad512fadb5564ad23246d54c880eb9417efa5e5c3658b910c1ff894d622dfd159af2ed527ffd44751bfe98682ae06c717155c254d8e2b4bab62785
- languageName: node
- linkType: hard
-
"regexpu-core@npm:^5.1.0":
version: 5.1.0
resolution: "regexpu-core@npm:5.1.0"
@@ -16468,7 +14748,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"resolve@npm:^1.1.6, resolve@npm:^1.17.0, resolve@npm:^1.19.0, resolve@npm:^1.22.1":
+"resolve@npm:^1.1.6, resolve@npm:^1.10.0, resolve@npm:^1.14.2, resolve@npm:^1.17.0, resolve@npm:^1.19.0, resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:^1.22.1, resolve@npm:^1.3.2":
version: 1.22.1
resolution: "resolve@npm:1.22.1"
dependencies:
@@ -16481,36 +14761,16 @@ dts-critic@latest:
languageName: node
linkType: hard
-"resolve@npm:^1.10.0, resolve@npm:^1.20.0, resolve@npm:^1.3.2":
- version: 1.20.0
- resolution: "resolve@npm:1.20.0"
- dependencies:
- is-core-module: ^2.2.0
- path-parse: ^1.0.6
- checksum: 40cf70b2cde00ef57f99daf2dc63c6a56d6c14a1b7fc51735d06a6f0a3b97cb67b4fb7ef6c747b4e13a7baba83b0ef625d7c4ce92a483cd5af923c3b65fd16fe
- languageName: node
- linkType: hard
-
-"resolve@npm:^1.14.2, resolve@npm:^1.22.0":
- version: 1.22.0
- resolution: "resolve@npm:1.22.0"
+"resolve@npm:^2.0.0-next.3":
+ version: 2.0.0-next.4
+ resolution: "resolve@npm:2.0.0-next.4"
dependencies:
- is-core-module: ^2.8.1
+ is-core-module: ^2.9.0
path-parse: ^1.0.7
supports-preserve-symlinks-flag: ^1.0.0
bin:
resolve: bin/resolve
- checksum: a2d14cc437b3a23996f8c7367eee5c7cf8149c586b07ca2ae00e96581ce59455555a1190be9aa92154785cf9f2042646c200d0e00e0bbd2b8a995a93a0ed3e4e
- languageName: node
- linkType: hard
-
-"resolve@npm:^2.0.0-next.3":
- version: 2.0.0-next.3
- resolution: "resolve@npm:2.0.0-next.3"
- dependencies:
- is-core-module: ^2.2.0
- path-parse: ^1.0.6
- checksum: f34b3b93ada77d64a6d590c06a83e198f3a827624c4ec972260905fa6c4d612164fbf0200d16d2beefea4ad1755b001f4a9a1293d8fc2322a8f7d6bf692c4ff5
+ checksum: c438ac9a650f2030fd074219d7f12ceb983b475da2d89ad3d6dd05fbf6b7a0a8cd37d4d10b43cb1f632bc19f22246ab7f36ebda54d84a29bfb2910a0680906d3
languageName: node
linkType: hard
@@ -16533,7 +14793,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"resolve@patch:resolve@^1.1.6#~builtin, resolve@patch:resolve@^1.17.0#~builtin, resolve@patch:resolve@^1.19.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin":
+"resolve@patch:resolve@^1.1.6#~builtin, resolve@patch:resolve@^1.10.0#~builtin, resolve@patch:resolve@^1.14.2#~builtin, resolve@patch:resolve@^1.17.0#~builtin, resolve@patch:resolve@^1.19.0#~builtin, resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin, resolve@patch:resolve@^1.3.2#~builtin":
version: 1.22.1
resolution: "resolve@patch:resolve@npm%3A1.22.1#~builtin::version=1.22.1&hash=07638b"
dependencies:
@@ -16546,36 +14806,16 @@ dts-critic@latest:
languageName: node
linkType: hard
-"resolve@patch:resolve@^1.10.0#~builtin, resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.3.2#~builtin":
- version: 1.20.0
- resolution: "resolve@patch:resolve@npm%3A1.20.0#~builtin::version=1.20.0&hash=07638b"
- dependencies:
- is-core-module: ^2.2.0
- path-parse: ^1.0.6
- checksum: a0dd7d16a8e47af23afa9386df2dff10e3e0debb2c7299a42e581d9d9b04d7ad5d2c53f24f1e043f7b3c250cbdc71150063e53d0b6559683d37f790b7c8c3cd5
- languageName: node
- linkType: hard
-
-"resolve@patch:resolve@^1.14.2#~builtin, resolve@patch:resolve@^1.22.0#~builtin":
- version: 1.22.0
- resolution: "resolve@patch:resolve@npm%3A1.22.0#~builtin::version=1.22.0&hash=07638b"
+"resolve@patch:resolve@^2.0.0-next.3#~builtin":
+ version: 2.0.0-next.4
+ resolution: "resolve@patch:resolve@npm%3A2.0.0-next.4#~builtin::version=2.0.0-next.4&hash=07638b"
dependencies:
- is-core-module: ^2.8.1
+ is-core-module: ^2.9.0
path-parse: ^1.0.7
supports-preserve-symlinks-flag: ^1.0.0
bin:
resolve: bin/resolve
- checksum: c79ecaea36c872ee4a79e3db0d3d4160b593f2ca16e031d8283735acd01715a203607e9ded3f91f68899c2937fa0d49390cddbe0fb2852629212f3cda283f4a7
- languageName: node
- linkType: hard
-
-"resolve@patch:resolve@^2.0.0-next.3#~builtin":
- version: 2.0.0-next.3
- resolution: "resolve@patch:resolve@npm%3A2.0.0-next.3#~builtin::version=2.0.0-next.3&hash=07638b"
- dependencies:
- is-core-module: ^2.2.0
- path-parse: ^1.0.6
- checksum: 21684b4d99a4877337cdbd5484311c811b3e8910edb5d868eec85c6e6550b0f570d911f9a384f9e176172d6713f2715bd0b0887fa512cb8c6aeece018de6a9f8
+ checksum: 4bf9f4f8a458607af90518ff73c67a4bc1a38b5a23fef2bb0ccbd45e8be89820a1639b637b0ba377eb2be9eedfb1739a84cde24fe4cd670c8207d8fea922b011
languageName: node
linkType: hard
@@ -16599,11 +14839,11 @@ dts-critic@latest:
linkType: hard
"responselike@npm:^2.0.0":
- version: 2.0.0
- resolution: "responselike@npm:2.0.0"
+ version: 2.0.1
+ resolution: "responselike@npm:2.0.1"
dependencies:
lowercase-keys: ^2.0.0
- checksum: 6a4d32c37d4e88678ae0a9d69fcc90aafa15b1a3eab455bd65c06af3c6c4976afc47d07a0e5a60d277ab041a465f43bf0a581e0d7ab33786e7a7741573f2e487
+ checksum: b122535466e9c97b55e69c7f18e2be0ce3823c5d47ee8de0d9c0b114aa55741c6db8bfbfce3766a94d1272e61bfb1ebf0a15e9310ac5629fbb7446a861b4fd3a
languageName: node
linkType: hard
@@ -16730,7 +14970,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"rollup-plugin-typescript2@npm:0.32.1":
+"rollup-plugin-typescript2@npm:0.32.1, rollup-plugin-typescript2@npm:^0.32.1":
version: 0.32.1
resolution: "rollup-plugin-typescript2@npm:0.32.1"
dependencies:
@@ -16771,21 +15011,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"rollup@npm:^2.74.1, rollup@npm:^2.75.6":
- version: 2.75.7
- resolution: "rollup@npm:2.75.7"
- dependencies:
- fsevents: ~2.3.2
- dependenciesMeta:
- fsevents:
- optional: true
- bin:
- rollup: dist/bin/rollup
- checksum: a6331d46b01062b184efdcb42ce12caf2e1575f989963944534b02f5855f6f3bc239ed0c1a18893572d7695af6d83166f3aef59dbd0365084e1531cb67824674
- languageName: node
- linkType: hard
-
-"rollup@npm:^2.77.0":
+"rollup@npm:^2.74.1, rollup@npm:^2.75.6, rollup@npm:^2.77.0":
version: 2.77.0
resolution: "rollup@npm:2.77.0"
dependencies:
@@ -16816,11 +15042,11 @@ dts-critic@latest:
linkType: hard
"rxjs@npm:^7.0.0, rxjs@npm:^7.5.1, rxjs@npm:^7.5.5":
- version: 7.5.5
- resolution: "rxjs@npm:7.5.5"
+ version: 7.5.6
+ resolution: "rxjs@npm:7.5.6"
dependencies:
tslib: ^2.1.0
- checksum: e034f60805210cce756dd2f49664a8108780b117cf5d0e2281506e9e6387f7b4f1532d974a8c8b09314fa7a16dd2f6cff3462072a5789672b5dcb45c4173f3c6
+ checksum: fc05f01364a74dac57490fb3e07ea63b422af04017fae1db641a009073f902ef69f285c5daac31359620dc8d9aee7d81e42b370ca2a8573d1feae0b04329383b
languageName: node
linkType: hard
@@ -16879,14 +15105,14 @@ dts-critic@latest:
languageName: node
linkType: hard
-"semver@npm:2 >=2.2.1 || 3.x || 4 || 5 || 7, semver@npm:^7.3.4, semver@npm:^7.3.5":
- version: 7.3.5
- resolution: "semver@npm:7.3.5"
+"semver@npm:2 >=2.2.1 || 3.x || 4 || 5 || 7, semver@npm:7.3.7, semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:~7.3.0":
+ version: 7.3.7
+ resolution: "semver@npm:7.3.7"
dependencies:
lru-cache: ^6.0.0
bin:
semver: bin/semver.js
- checksum: 5eafe6102bea2a7439897c1856362e31cc348ccf96efd455c8b5bc2c61e6f7e7b8250dc26b8828c1d76a56f818a7ee907a36ae9fb37a599d3d24609207001d60
+ checksum: 2fa3e877568cd6ce769c75c211beaed1f9fce80b28338cadd9d0b6c40f2e2862bafd62c19a6cff42f3d54292b7c623277bcab8816a2b5521cf15210d43e75232
languageName: node
linkType: hard
@@ -16908,17 +15134,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"semver@npm:7.3.7, semver@npm:^7.3.2, semver@npm:^7.3.7, semver@npm:~7.3.0":
- version: 7.3.7
- resolution: "semver@npm:7.3.7"
- dependencies:
- lru-cache: ^6.0.0
- bin:
- semver: bin/semver.js
- checksum: 2fa3e877568cd6ce769c75c211beaed1f9fce80b28338cadd9d0b6c40f2e2862bafd62c19a6cff42f3d54292b7c623277bcab8816a2b5521cf15210d43e75232
- languageName: node
- linkType: hard
-
"semver@npm:^6.0.0, semver@npm:^6.1.1, semver@npm:^6.1.2, semver@npm:^6.2.0, semver@npm:^6.3.0":
version: 6.3.0
resolution: "semver@npm:6.3.0"
@@ -17061,14 +15276,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3":
- version: 3.0.6
- resolution: "signal-exit@npm:3.0.6"
- checksum: b819ac81ba757af559dad0804233ae31bf6f054591cd8a671e9cbcf09f21c72ec3076fe87d1e04861f5b33b47d63f0694b568de99c99cd733ee2060515beb6d5
- languageName: node
- linkType: hard
-
-"signal-exit@npm:^3.0.7":
+"signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7":
version: 3.0.7
resolution: "signal-exit@npm:3.0.7"
checksum: a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318
@@ -17146,7 +15354,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"smart-buffer@npm:^4.1.0":
+"smart-buffer@npm:^4.2.0":
version: 4.2.0
resolution: "smart-buffer@npm:4.2.0"
checksum: b5167a7142c1da704c0e3af85c402002b597081dd9575031a90b4f229ca5678e9a36e8a374f1814c8156a725d17008ae3bde63b92f9cfd132526379e580bec8b
@@ -17190,23 +15398,34 @@ dts-critic@latest:
linkType: hard
"socks-proxy-agent@npm:^6.0.0":
- version: 6.1.1
- resolution: "socks-proxy-agent@npm:6.1.1"
+ version: 6.2.1
+ resolution: "socks-proxy-agent@npm:6.2.1"
dependencies:
agent-base: ^6.0.2
- debug: ^4.3.1
- socks: ^2.6.1
- checksum: 9a8a4f791bba0060315cf7291ca6f9db37d6fc280fd0860d73d8887d3efe4c22e823aa25a8d5375f6079279f8dc91b50c075345179bf832bfe3c7c26d3582e3c
+ debug: ^4.3.3
+ socks: ^2.6.2
+ checksum: 9ca089d489e5ee84af06741135c4b0d2022977dad27ac8d649478a114cdce87849e8d82b7c22b51501a4116e231241592946fc7fae0afc93b65030ee57084f58
languageName: node
linkType: hard
-"socks@npm:^2.6.1":
- version: 2.6.1
- resolution: "socks@npm:2.6.1"
+"socks-proxy-agent@npm:^7.0.0":
+ version: 7.0.0
+ resolution: "socks-proxy-agent@npm:7.0.0"
+ dependencies:
+ agent-base: ^6.0.2
+ debug: ^4.3.3
+ socks: ^2.6.2
+ checksum: 720554370154cbc979e2e9ce6a6ec6ced205d02757d8f5d93fe95adae454fc187a5cbfc6b022afab850a5ce9b4c7d73e0f98e381879cf45f66317a4895953846
+ languageName: node
+ linkType: hard
+
+"socks@npm:^2.6.2":
+ version: 2.7.0
+ resolution: "socks@npm:2.7.0"
dependencies:
- ip: ^1.1.5
- smart-buffer: ^4.1.0
- checksum: 2ca9d616e424f645838ebaabb04f85d94ea999e0f8393dc07f86c435af22ed88cb83958feeabd1bb7bc537c635ed47454255635502c6808a6df61af1f41af750
+ ip: ^2.0.0
+ smart-buffer: ^4.2.0
+ checksum: 0b5d94e2b3c11e7937b40fc5dac1e80d8b92a330e68c51f1d271ce6980c70adca42a3f8cd47c4a5769956bada074823b53374f2dc5f2ea5c2121b222dec6eadf
languageName: node
linkType: hard
@@ -17426,7 +15645,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"sshpk@npm:^1.14.1":
+"sshpk@npm:^1.14.1, sshpk@npm:^1.7.0":
version: 1.17.0
resolution: "sshpk@npm:1.17.0"
dependencies:
@@ -17447,27 +15666,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"sshpk@npm:^1.7.0":
- version: 1.16.1
- resolution: "sshpk@npm:1.16.1"
- dependencies:
- asn1: ~0.2.3
- assert-plus: ^1.0.0
- bcrypt-pbkdf: ^1.0.0
- dashdash: ^1.12.0
- ecc-jsbn: ~0.1.1
- getpass: ^0.1.1
- jsbn: ~0.1.0
- safer-buffer: ^2.0.2
- tweetnacl: ~0.14.0
- bin:
- sshpk-conv: bin/sshpk-conv
- sshpk-sign: bin/sshpk-sign
- sshpk-verify: bin/sshpk-verify
- checksum: 5e76afd1cedc780256f688b7c09327a8a650902d18e284dfeac97489a735299b03c3e72c6e8d22af03dbbe4d6f123fdfd5f3c4ed6bedbec72b9529a55051b857
- languageName: node
- linkType: hard
-
"ssri@npm:^8.0.0, ssri@npm:^8.0.1":
version: 8.0.1
resolution: "ssri@npm:8.0.1"
@@ -17477,6 +15675,15 @@ dts-critic@latest:
languageName: node
linkType: hard
+"ssri@npm:^9.0.0":
+ version: 9.0.1
+ resolution: "ssri@npm:9.0.1"
+ dependencies:
+ minipass: ^3.1.1
+ checksum: fb58f5e46b6923ae67b87ad5ef1c5ab6d427a17db0bead84570c2df3cd50b4ceb880ebdba2d60726588272890bae842a744e1ecce5bd2a2a582fccd5068309eb
+ languageName: node
+ linkType: hard
+
"stack-utils@npm:^2.0.3":
version: 2.0.5
resolution: "stack-utils@npm:2.0.5"
@@ -17608,16 +15815,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"string.prototype.trimend@npm:^1.0.4":
- version: 1.0.4
- resolution: "string.prototype.trimend@npm:1.0.4"
- dependencies:
- call-bind: ^1.0.2
- define-properties: ^1.1.3
- checksum: 17e5aa45c3983f582693161f972c1c1fa4bbbdf22e70e582b00c91b6575f01680dc34e83005b98e31abe4d5d29e0b21fcc24690239c106c7b2315aade6a898ac
- languageName: node
- linkType: hard
-
"string.prototype.trimend@npm:^1.0.5":
version: 1.0.5
resolution: "string.prototype.trimend@npm:1.0.5"
@@ -17629,16 +15826,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"string.prototype.trimstart@npm:^1.0.4":
- version: 1.0.4
- resolution: "string.prototype.trimstart@npm:1.0.4"
- dependencies:
- call-bind: ^1.0.2
- define-properties: ^1.1.3
- checksum: 3fb06818d3cccac5fa3f5f9873d984794ca0e9f6616fae6fcc745885d9efed4e17fe15f832515d9af5e16c279857fdbffdfc489ca4ed577811b017721b30302f
- languageName: node
- linkType: hard
-
"string.prototype.trimstart@npm:^1.0.5":
version: 1.0.5
resolution: "string.prototype.trimstart@npm:1.0.5"
@@ -17776,8 +15963,8 @@ dts-critic@latest:
linkType: hard
"sucrase@npm:^3.20.3":
- version: 3.21.0
- resolution: "sucrase@npm:3.21.0"
+ version: 3.24.0
+ resolution: "sucrase@npm:3.24.0"
dependencies:
commander: ^4.0.0
glob: 7.1.6
@@ -17788,7 +15975,7 @@ dts-critic@latest:
bin:
sucrase: bin/sucrase
sucrase-node: bin/sucrase-node
- checksum: d686f255af65bab2cb4e685287a7a4fe00f241a891a2ddea8c6218ff8f412780339d4d544e4a582e93e3994d1ebbe2fbce6a555474e80641958319a2b249e836
+ checksum: 143c8bee97f5645973a512fdec535e1759014a8599bbf5e4c1915dd2a5fdef517684a9495369a6fb5fbd04357bb2fef65cbe4266a1a30f3e58fc37ef75722215
languageName: node
linkType: hard
@@ -17954,18 +16141,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"tar@npm:^2.2.2":
- version: 2.2.2
- resolution: "tar@npm:2.2.2"
- dependencies:
- block-stream: "*"
- fstream: ^1.0.12
- inherits: 2
- checksum: c0c3727d529077423cf771f9f9c06edaaff82034d05d685806d3cee69d334ee8e6f394ee8d02dbd294cdecb95bb22625703279caff24bdb90b17e59de03a4733
- languageName: node
- linkType: hard
-
-"tar@npm:^6.0.2, tar@npm:^6.1.2":
+"tar@npm:^6.0.2, tar@npm:^6.1.11, tar@npm:^6.1.2":
version: 6.1.11
resolution: "tar@npm:6.1.11"
dependencies:
@@ -18164,13 +16340,20 @@ dts-critic@latest:
languageName: node
linkType: hard
-"tinypool@npm:^0.2.4":
+"tinypool@npm:^0.2.1, tinypool@npm:^0.2.4":
version: 0.2.4
resolution: "tinypool@npm:0.2.4"
checksum: f050bd36c89529a2a0d3f9c1fdbba3f317114e3ee6eb5d5ba72c51e887d45ef3ef8d8533fb2ca2eba7189d19d2231712b81b3a75e099248532f5563369929c33
languageName: node
linkType: hard
+"tinyspy@npm:^0.3.3":
+ version: 0.3.3
+ resolution: "tinyspy@npm:0.3.3"
+ checksum: 1beb8f04c100d9ac769ff85266594f07d6f08f41cfb95c4bef9da3e59988b42e8d4e66c2ec455d3ecad80027347920e87d7a7098c5a2a28637f9fee25e11a8f1
+ languageName: node
+ linkType: hard
+
"tinyspy@npm:^1.0.0":
version: 1.0.0
resolution: "tinyspy@npm:1.0.0"
@@ -18344,9 +16527,9 @@ dts-critic@latest:
languageName: node
linkType: hard
-"ts-node@npm:^10.8.0":
- version: 10.8.1
- resolution: "ts-node@npm:10.8.1"
+"ts-node@npm:^10.8.1":
+ version: 10.9.1
+ resolution: "ts-node@npm:10.9.1"
dependencies:
"@cspotcode/source-map-support": ^0.8.0
"@tsconfig/node10": ^1.0.7
@@ -18378,7 +16561,7 @@ dts-critic@latest:
ts-node-script: dist/bin-script.js
ts-node-transpile-only: dist/bin-transpile.js
ts-script: dist/bin-script-deprecated.js
- checksum: 7d1aa7aa3ae1c0459c4922ed0dbfbade442cfe0c25aebaf620cdf1774f112c8d7a9b14934cb6719274917f35b2c503ba87bcaf5e16a0d39ba0f68ce3e7728363
+ checksum: 090adff1302ab20bd3486e6b4799e90f97726ed39e02b39e566f8ab674fd5bd5f727f43615debbfc580d33c6d9d1c6b1b3ce7d8e3cca3e20530a145ffa232c35
languageName: node
linkType: hard
@@ -18664,17 +16847,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"typescript@npm:^4.6.4":
- version: 4.7.3
- resolution: "typescript@npm:4.7.3"
- bin:
- tsc: bin/tsc
- tsserver: bin/tsserver
- checksum: fd13a1ce53790a36bb8350e1f5e5e384b5f6cb9b0635114a6d01d49cb99916abdcfbc13c7521cdae2f2d3f6d8bc4a8ae7625edf645a04ee940588cd5e7597b2f
- languageName: node
- linkType: hard
-
-"typescript@npm:^4.7.4":
+"typescript@npm:^4.6.4, typescript@npm:^4.7.4":
version: 4.7.4
resolution: "typescript@npm:4.7.4"
bin:
@@ -18685,12 +16858,12 @@ dts-critic@latest:
linkType: hard
"typescript@npm:next":
- version: 4.8.0-dev.20220720
- resolution: "typescript@npm:4.8.0-dev.20220720"
+ version: 4.8.0-dev.20220722
+ resolution: "typescript@npm:4.8.0-dev.20220722"
bin:
tsc: bin/tsc
tsserver: bin/tsserver
- checksum: d744e9da9f0fe0fa45cc4b1bc893f3a38913b86474f1cf7723d0e7ffeb3c792c3e70773c52fc8720c3f3f21f91d5d424e37c735111ef2c758a2a4f0fb3ff981e
+ checksum: 2c6a40519b994ac9a4c865e031f67df83f5d6031aa2c170dbb0a970bada9f0aff4b2811d2b346601748ff532de4121238cf355793e04017cb1c3085c96940384
languageName: node
linkType: hard
@@ -18704,17 +16877,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"typescript@patch:typescript@^4.6.4#~builtin":
- version: 4.7.3
- resolution: "typescript@patch:typescript@npm%3A4.7.3#~builtin::version=4.7.3&hash=7ad353"
- bin:
- tsc: bin/tsc
- tsserver: bin/tsserver
- checksum: 137d18a77f52254a284960b16ab53d0619f57b69b5d585804b8413f798a1175ce3e774fb95e6a101868577aafe357d8fcfc9171f0dc9fc0c210e9ae59d107cc0
- languageName: node
- linkType: hard
-
-"typescript@patch:typescript@^4.7.4#~builtin":
+"typescript@patch:typescript@^4.6.4#~builtin, typescript@patch:typescript@^4.7.4#~builtin":
version: 4.7.4
resolution: "typescript@patch:typescript@npm%3A4.7.4#~builtin::version=4.7.4&hash=7ad353"
bin:
@@ -18725,12 +16888,12 @@ dts-critic@latest:
linkType: hard
"typescript@patch:typescript@next#~builtin":
- version: 4.8.0-dev.20220720
- resolution: "typescript@patch:typescript@npm%3A4.8.0-dev.20220720#~builtin::version=4.8.0-dev.20220720&hash=7ad353"
+ version: 4.8.0-dev.20220722
+ resolution: "typescript@patch:typescript@npm%3A4.8.0-dev.20220722#~builtin::version=4.8.0-dev.20220722&hash=7ad353"
bin:
tsc: bin/tsc
tsserver: bin/tsserver
- checksum: 6f021e33a28776a935ced736bf3643633aa52168918f902b908d684578b456be349a102ac3f6a0b86dedf08b8ea6b8c3fd4dd2831e15c7001a3788effff1c083
+ checksum: e49f213f63c079b864ce4682f99489841cab7475c9952478861a621a0c118505c19b81cb9b0a34844d0db878668c8d34285578eb5bb77b9c1d8f6c6779b7b705
languageName: node
linkType: hard
@@ -18773,30 +16936,18 @@ dts-critic@latest:
linkType: hard
"ufo@npm:^0.8.4":
- version: 0.8.4
- resolution: "ufo@npm:0.8.4"
- checksum: a2ebef6f64b9cc4114fc65405837eeb83eb8975edd6d54c7f37abb6905da6fd1f63524e4a02c8b087e7b0b3db6e6f4f798a3d86a96500410ff590b405f807dc9
+ version: 0.8.5
+ resolution: "ufo@npm:0.8.5"
+ checksum: 4dcf657a906550112ab1eb045110ebb768a914fb653373a2c363776a1f6ba25ea9d20bd5ed7f4bb44fb72bd4421b37d62991cd5ce4e3a2aef7e3eae450bb9508
languageName: node
linkType: hard
"uglify-js@npm:^3.1.4":
- version: 3.14.5
- resolution: "uglify-js@npm:3.14.5"
+ version: 3.16.2
+ resolution: "uglify-js@npm:3.16.2"
bin:
uglifyjs: bin/uglifyjs
- checksum: 0330eb11a36f4181b6d9a00336355989bfad9dd2203049fc63a59454b0d12337612272ad011bc571b9a382bf74d829ca20409ebfe089e38edb26cfc06bfa2cc9
- languageName: node
- linkType: hard
-
-"unbox-primitive@npm:^1.0.1":
- version: 1.0.1
- resolution: "unbox-primitive@npm:1.0.1"
- dependencies:
- function-bind: ^1.1.1
- has-bigints: ^1.0.1
- has-symbols: ^1.0.2
- which-boxed-primitive: ^1.0.2
- checksum: 89d950e18fb45672bc6b3c961f1e72c07beb9640c7ceed847b571ba6f7d2af570ae1a2584cfee268b9d9ea1e3293f7e33e0bc29eaeb9f8e8a0bab057ff9e6bba
+ checksum: 5b62e748b7fa1d982f0949ed1876b9367dcde4782f74159f4ea0b3d130835336eb0245e090456ec057468d937eb016114677bb38a7a4fdc7f68c3d002ca760ee
languageName: node
linkType: hard
@@ -18850,13 +17001,13 @@ dts-critic@latest:
linkType: hard
"unconfig@npm:^0.3.4":
- version: 0.3.4
- resolution: "unconfig@npm:0.3.4"
+ version: 0.3.5
+ resolution: "unconfig@npm:0.3.5"
dependencies:
- "@antfu/utils": ^0.5.1
+ "@antfu/utils": ^0.5.2
defu: ^6.0.0
- jiti: ^1.13.0
- checksum: 77e9d172a7a8aade3c3dd9177a0d6ae058cd1df2feef0323abbb71f67758dbd0ec022b0d9a66d592926cdcb7c1784979485c631e802d8c431e4a4dfe67ec79da
+ jiti: ^1.14.0
+ checksum: 3a685ef473598e8367bfb8e954708667a98d3d4ed3d0752ed2063d256062e69090681cf25a7f81695e6d014cd8828d789aa8c0c84fe3b4684b1488307689eb59
languageName: node
linkType: hard
@@ -18867,14 +17018,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"undici@npm:^5.2.0":
- version: 5.4.0
- resolution: "undici@npm:5.4.0"
- checksum: 2852397ee1dbb2b3ad58166520ec30f4f0143895f6e7b157dbedfac4e43b522a710a3927be61a67b2ae791190973f206d30785564ece7675e08133427cebaaa1
- languageName: node
- linkType: hard
-
-"undici@npm:^5.8.0":
+"undici@npm:^5.2.0, undici@npm:^5.8.0":
version: 5.8.0
resolution: "undici@npm:5.8.0"
checksum: 7b486ad064da00628d3906e140b86223023cd3494c811da8d7aa1375c2392fe6a6ac421af236c056fd3d3136bba3a91b99e0505dde071dd946070946eb0718b8
@@ -19017,16 +17161,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"unist-util-visit-parents@npm:^4.0.0":
- version: 4.1.1
- resolution: "unist-util-visit-parents@npm:4.1.1"
- dependencies:
- "@types/unist": ^2.0.0
- unist-util-is: ^5.0.0
- checksum: 49d78984a6dd858a989f849d2b4330c8a04d1ee99c0e9920a5e37668cf847dab95db77a3bf0c8aaeb3e66abeae12e2d454949ec401614efef377d8f82d215662
- languageName: node
- linkType: hard
-
"unist-util-visit-parents@npm:^5.0.0":
version: 5.1.0
resolution: "unist-util-visit-parents@npm:5.1.0"
@@ -19037,17 +17171,6 @@ dts-critic@latest:
languageName: node
linkType: hard
-"unist-util-visit@npm:^3.0.0":
- version: 3.1.0
- resolution: "unist-util-visit@npm:3.1.0"
- dependencies:
- "@types/unist": ^2.0.0
- unist-util-is: ^5.0.0
- unist-util-visit-parents: ^4.0.0
- checksum: c37dbc0c5509f85f3abdf46d927b3dd11e6c419159771b1f1a5ce446d36ac993d04b087e28bc6173a172e0fbe9d77e997f120029b2b449766ebe55b6f6e0cc2c
- languageName: node
- linkType: hard
-
"unist-util-visit@npm:^4.0.0":
version: 4.1.0
resolution: "unist-util-visit@npm:4.1.0"
@@ -19137,6 +17260,20 @@ dts-critic@latest:
languageName: node
linkType: hard
+"update-browserslist-db@npm:^1.0.4":
+ version: 1.0.5
+ resolution: "update-browserslist-db@npm:1.0.5"
+ dependencies:
+ escalade: ^3.1.1
+ picocolors: ^1.0.0
+ peerDependencies:
+ browserslist: ">= 4.21.0"
+ bin:
+ browserslist-lint: cli.js
+ checksum: 7e425fe5dbbebdccf72a84ce70ec47fc74dce561d28f47bc2b84a1c2b84179a862c2261b18ab66a5e73e261c7e2ef9e11c6129112989d4d52e8f75a56bb923f8
+ languageName: node
+ linkType: hard
+
"uri-js@npm:^4.2.2":
version: 4.4.1
resolution: "uri-js@npm:4.4.1"
@@ -19207,8 +17344,8 @@ dts-critic@latest:
linkType: hard
"uvu@npm:^0.5.0":
- version: 0.5.3
- resolution: "uvu@npm:0.5.3"
+ version: 0.5.6
+ resolution: "uvu@npm:0.5.6"
dependencies:
dequal: ^2.0.0
diff: ^5.0.0
@@ -19216,7 +17353,7 @@ dts-critic@latest:
sade: ^1.7.3
bin:
uvu: bin.js
- checksum: 0cf8e9e6ec79199dacc64fe0e9f82b5bf1d2308f3c54ec1aba5d1ca0a4beff4f173cae0f87bc52d35121565fd232b969fbf52cca3707e20517e62645e19b898e
+ checksum: 09460a37975627de9fcad396e5078fb844d01aaf64a6399ebfcfd9e55f1c2037539b47611e8631f89be07656962af0cf48c334993db82b9ae9c3d25ce3862168
languageName: node
linkType: hard
@@ -19234,18 +17371,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"v8-to-istanbul@npm:^9.0.0":
- version: 9.0.0
- resolution: "v8-to-istanbul@npm:9.0.0"
- dependencies:
- "@jridgewell/trace-mapping": ^0.3.7
- "@types/istanbul-lib-coverage": ^2.0.1
- convert-source-map: ^1.6.0
- checksum: d8ed2c39ba657dfd851a3c7b3f2b87e5b96c9face806ecfe5b627abe53b0c86f264f51425c591e451405b739e3f8a6728da59670f081790990710e813d8d3440
- languageName: node
- linkType: hard
-
-"v8-to-istanbul@npm:^9.0.1":
+"v8-to-istanbul@npm:^9.0.0, v8-to-istanbul@npm:^9.0.1":
version: 9.0.1
resolution: "v8-to-istanbul@npm:9.0.1"
dependencies:
@@ -19321,20 +17447,20 @@ dts-critic@latest:
linkType: hard
"vfile@npm:^5.0.0":
- version: 5.3.2
- resolution: "vfile@npm:5.3.2"
+ version: 5.3.4
+ resolution: "vfile@npm:5.3.4"
dependencies:
"@types/unist": ^2.0.0
is-buffer: ^2.0.0
unist-util-stringify-position: ^3.0.0
vfile-message: ^3.0.0
- checksum: c352a76974c4ce0a0177e157335c95a647dae9e510ed4fad9b328479eb46230dc9ade8793d4c8b7f78263314797fc5026ff14da086e3805d530645e7d8057dcb
+ checksum: 2382edc7c6e3502bca72bc95bc1ff0fe1852482e8a0ac257615f9ab12f32564d6f6a55da8756b74a900d26a247da5ca23a92ca7c9a18dbda2b0f87504ef0611f
languageName: node
linkType: hard
"vite@npm:^2.9.12 || ^3.0.0-0":
- version: 3.0.0-beta.5
- resolution: "vite@npm:3.0.0-beta.5"
+ version: 3.0.2
+ resolution: "vite@npm:3.0.2"
dependencies:
esbuild: ^0.14.47
fsevents: ~2.3.2
@@ -19360,7 +17486,43 @@ dts-critic@latest:
optional: true
bin:
vite: bin/vite.js
- checksum: 93a19bae089007236813e2ee95f9fdf342b8abc76a3c39ef2fd08f2bdbe2801bfb3473c7c1812253aad04fd2bda198b5e77bf24b4fb525d72b0003ee15fb4d42
+ checksum: 10aebec0df89bbdba9a0c72dc35ec3ec5be0b50216fc7a1e04b5da11de244033b1cbe83a95b1af67be176fc09e05698387d3cc9dcbee64e009dd43811f8717e9
+ languageName: node
+ linkType: hard
+
+"vitest@npm:^0.17.0":
+ version: 0.17.1
+ resolution: "vitest@npm:0.17.1"
+ dependencies:
+ "@types/chai": ^4.3.1
+ "@types/chai-subset": ^1.3.3
+ "@types/node": "*"
+ chai: ^4.3.6
+ debug: ^4.3.4
+ local-pkg: ^0.4.1
+ tinypool: ^0.2.1
+ tinyspy: ^0.3.3
+ vite: ^2.9.12 || ^3.0.0-0
+ peerDependencies:
+ "@edge-runtime/vm": "*"
+ "@vitest/ui": "*"
+ c8: "*"
+ happy-dom: "*"
+ jsdom: "*"
+ peerDependenciesMeta:
+ "@edge-runtime/vm":
+ optional: true
+ "@vitest/ui":
+ optional: true
+ c8:
+ optional: true
+ happy-dom:
+ optional: true
+ jsdom:
+ optional: true
+ bin:
+ vitest: vitest.mjs
+ checksum: eae2d024d97a46ba08f3cc7e0703a330c92dc0a6f4c7a9bc20ec8a5129bf787d8ebabd14bf31ae810897c1813e29178af59f63ec8b24b5944cfa62e225cd207c
languageName: node
linkType: hard
@@ -19401,9 +17563,9 @@ dts-critic@latest:
linkType: hard
"vscode-oniguruma@npm:^1.6.1":
- version: 1.6.1
- resolution: "vscode-oniguruma@npm:1.6.1"
- checksum: b019563a0d48b08c26b66c9f8729ed4ca2620b3b09c6957d5e622f0f104574bec48c7ba575bd157da40fb9a03c03495704894e3ed2d799d80a7180e3051b1f10
+ version: 1.6.2
+ resolution: "vscode-oniguruma@npm:1.6.2"
+ checksum: 6b754acdafd5b68242ea5938bb00a32effc16c77f471d4f0f337d879d0e8e592622998e2441f42d9a7ff799c1593f31c11f26ca8d9bf9917e3ca881d3c1f3e19
languageName: node
linkType: hard
@@ -19569,7 +17731,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"wide-align@npm:^1.1.0, wide-align@npm:^1.1.2":
+"wide-align@npm:^1.1.0, wide-align@npm:^1.1.5":
version: 1.1.5
resolution: "wide-align@npm:1.1.5"
dependencies:
@@ -19653,8 +17815,8 @@ dts-critic@latest:
linkType: hard
"ws@npm:^7.4.5":
- version: 7.5.8
- resolution: "ws@npm:7.5.8"
+ version: 7.5.9
+ resolution: "ws@npm:7.5.9"
peerDependencies:
bufferutil: ^4.0.1
utf-8-validate: ^5.0.2
@@ -19663,11 +17825,11 @@ dts-critic@latest:
optional: true
utf-8-validate:
optional: true
- checksum: 49479ccf3ddab6500c5906fbcc316e9c8cd44b0ffb3903a6c1caf9b38cb9e06691685722a4c642cfa7d4c6eb390424fc3142cd4f8b940cfc7a9ce9761b1cd65b
+ checksum: c3c100a181b731f40b7f2fddf004aa023f79d64f489706a28bc23ff88e87f6a64b3c6651fbec3a84a53960b75159574d7a7385709847a62ddb7ad6af76f49138
languageName: node
linkType: hard
-"ws@npm:^8.8.1":
+"ws@npm:^8.8.0, ws@npm:^8.8.1":
version: 8.8.1
resolution: "ws@npm:8.8.1"
peerDependencies:
@@ -19782,9 +17944,9 @@ dts-critic@latest:
linkType: hard
"yargs-parser@npm:^21.0.0":
- version: 21.0.0
- resolution: "yargs-parser@npm:21.0.0"
- checksum: 1e205fca1cb7a36a1585e2b94a64e641c12741b53627d338e12747f4dca3c3610cdd9bb235040621120548dd74c3ef03a8168d52a1eabfedccbe4a62462b6731
+ version: 21.0.1
+ resolution: "yargs-parser@npm:21.0.1"
+ checksum: c3ea2ed12cad0377ce3096b3f138df8267edf7b1aa7d710cd502fe16af417bafe4443dd71b28158c22fcd1be5dfd0e86319597e47badf42ff83815485887323a
languageName: node
linkType: hard
@@ -19822,22 +17984,7 @@ dts-critic@latest:
languageName: node
linkType: hard
-"yargs@npm:^17.0.0":
- version: 17.3.1
- resolution: "yargs@npm:17.3.1"
- dependencies:
- cliui: ^7.0.2
- escalade: ^3.1.1
- get-caller-file: ^2.0.5
- require-directory: ^2.1.1
- string-width: ^4.2.3
- y18n: ^5.0.5
- yargs-parser: ^21.0.0
- checksum: 64fc2e32c56739f1d14d2d24acd17a6944c3c8e3e3558f09fc1953ac112e868cc16013d282886b9d5be22187f8b9ed4f60741a6b1011f595ce2718805a656852
- languageName: node
- linkType: hard
-
-"yargs@npm:^17.3.1":
+"yargs@npm:^17.0.0, yargs@npm:^17.3.1":
version: 17.5.1
resolution: "yargs@npm:17.5.1"
dependencies:
@@ -19893,6 +18040,16 @@ dts-critic@latest:
languageName: node
linkType: hard
+"zlib-sync@npm:^0.1.7":
+ version: 0.1.7
+ resolution: "zlib-sync@npm:0.1.7"
+ dependencies:
+ nan: ^2.14.0
+ node-gyp: latest
+ checksum: 8f6ef7bf5726b41fefffa4509f5679872b425ef47227a59d8c787b32518db6220961262f78b0f6eb1dcd9b52cd71bc8213d4f061b8b56a9b7e82c345a548e6f4
+ languageName: node
+ linkType: hard
+
"zwitch@npm:^2.0.0":
version: 2.0.2
resolution: "zwitch@npm:2.0.2"