├── .env.example
├── .gitattributes
├── src
├── shared
│ ├── constants.ts
│ └── tsconfig.json
├── server
│ ├── setup.ts
│ ├── @types
│ │ └── index.d.ts
│ ├── tsconfig.json
│ └── index.ts
└── client
│ ├── @types
│ └── index.d.ts
│ ├── tsconfig.json
│ └── index.ts
├── .editorconfig
├── conf.json
├── LICENSE
├── tsconfig.base.json
├── package.json
├── .gitignore
├── README.md
├── scripts
└── rollup.config.js
└── pnpm-lock.yaml
/.env.example:
--------------------------------------------------------------------------------
1 | PRODUCTION_MODE=false
2 | COMPILER_USE_SWC=true
3 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | * text=auto
2 | * text eol=lf
3 | *.png binary
4 |
--------------------------------------------------------------------------------
/src/shared/constants.ts:
--------------------------------------------------------------------------------
1 | export const SHARED_CONSTANTS = {
2 | HELLO_WORLD: 'HELLO WORLD!'
3 | };
4 |
--------------------------------------------------------------------------------
/src/shared/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.base.json",
3 | "include": ["./**/*.ts"]
4 | }
5 |
--------------------------------------------------------------------------------
/src/server/setup.ts:
--------------------------------------------------------------------------------
1 | import path from 'path';
2 | import { config } from 'dotenv';
3 |
4 | config({
5 | path: path.resolve('.env')
6 | });
7 |
--------------------------------------------------------------------------------
/src/client/@types/index.d.ts:
--------------------------------------------------------------------------------
1 | declare global {
2 | interface PlayerMp {
3 | customProperty: number;
4 |
5 | customMethod(): void;
6 | }
7 | }
8 |
9 | export {};
10 |
--------------------------------------------------------------------------------
/src/server/@types/index.d.ts:
--------------------------------------------------------------------------------
1 | declare global {
2 | interface PlayerMp {
3 | customProperty: number;
4 |
5 | customMethod(): void;
6 | }
7 | }
8 |
9 | export {};
10 |
--------------------------------------------------------------------------------
/src/client/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.base.json",
3 | "compilerOptions": {
4 | "types": ["../../node_modules/@ragempcommunity/types-client", "./@types"],
5 | "baseUrl": "./",
6 | "paths": {
7 | "@shared/*": ["../shared/*"],
8 | "@/*": ["./*"]
9 | }
10 | },
11 | "include": ["./**/*.ts", "../shared/**/*.ts"],
12 | "exclude": ["../shared/**/*.d.ts"]
13 | }
14 |
--------------------------------------------------------------------------------
/src/server/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "../../tsconfig.base.json",
3 | "compilerOptions": {
4 | "types": ["../../node_modules/@ragempcommunity/types-server", "./@types"],
5 | "baseUrl": "./",
6 | "paths": {
7 | "@shared/*": ["../shared/*"],
8 | "@/*": ["./*"]
9 | }
10 | },
11 | "include": ["./**/*.ts", "../shared/**/*.ts"],
12 | "exclude": ["../shared/**/*.d.ts"]
13 | }
14 |
--------------------------------------------------------------------------------
/src/server/index.ts:
--------------------------------------------------------------------------------
1 | import './setup';
2 |
3 | import { SHARED_CONSTANTS } from '@shared/constants';
4 |
5 | mp.events.add('playerReady', (player) => {
6 | console.log(`${player.name} is ready!`);
7 |
8 | player.customProperty = 1;
9 |
10 | player.customMethod = () => {
11 | console.log('customMethod called.');
12 | };
13 |
14 | player.customMethod();
15 | });
16 |
17 | console.log(SHARED_CONSTANTS.HELLO_WORLD);
18 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | end_of_line = lf
6 | insert_final_newline = true
7 | trim_trailing_whitespace = true
8 |
9 | [*.{js,ts}]
10 | indent_size = 4
11 | indent_style = tab
12 | block_comment_start = /*
13 | block_comment = *
14 | block_comment_end = */
15 |
16 | [*.{yml,yaml}]
17 | indent_size = 2
18 | indent_style = space
19 |
20 | [*.{md,rmd,mkd,mkdn,mdwn,mdown,markdown,litcoffee}]
21 | tab_width = 4
22 | trim_trailing_whitespace = false
23 |
--------------------------------------------------------------------------------
/conf.json:
--------------------------------------------------------------------------------
1 | {
2 | "maxplayers": 1000,
3 | "name": "RAGEMP Typescript",
4 | "gamemode": "RP",
5 | "stream-distance": 500.0,
6 | "announce": false,
7 | "csharp": "disabled",
8 | "bind": "127.0.0.1",
9 | "port": 22005,
10 | "encryption": false,
11 | "url": "https://rage.mp",
12 | "language": "en",
13 | "allow-cef-debugging": true,
14 | "enable-http-security": false,
15 | "voice-chat": true,
16 | "voice-chat-sample-rate": 24000,
17 | "resources-compression-level": 0
18 | }
19 |
--------------------------------------------------------------------------------
/src/client/index.ts:
--------------------------------------------------------------------------------
1 | import { SHARED_CONSTANTS } from '@shared/constants';
2 |
3 | mp.events.add('playerReady', () => {
4 | mp.console.logInfo(`${mp.players.local.name} is ready!`);
5 | mp.console.logInfo(SHARED_CONSTANTS.HELLO_WORLD);
6 |
7 | mp.players.local.customProperty = 1;
8 | mp.console.logInfo(`customProperty: ${mp.players.local.customProperty}`);
9 |
10 | mp.players.local.customMethod = () => {
11 | mp.console.logInfo(`customMethod called.`);
12 | };
13 |
14 | mp.players.local.customMethod();
15 | });
16 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2021 Narcis B.
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/tsconfig.base.json:
--------------------------------------------------------------------------------
1 | {
2 | "exclude": ["node_modules", "dist"],
3 | "compileOnSave": true,
4 | "compilerOptions": {
5 | "skipLibCheck": false,
6 | "target": "esnext",
7 | "module": "esnext",
8 | "moduleResolution": "node",
9 | "lib": ["es6", "esnext", "DOM"],
10 | "rootDir": ".",
11 | "outDir": "dist",
12 | "strict": true,
13 | "removeComments": false,
14 | "noUnusedLocals": true,
15 | "noUnusedParameters": true,
16 | "noImplicitReturns": true,
17 | "noFallthroughCasesInSwitch": true,
18 | "allowSyntheticDefaultImports": true,
19 | "importHelpers": true,
20 | "esModuleInterop": true,
21 | "resolveJsonModule": true,
22 | "forceConsistentCasingInFileNames": true,
23 | "emitDecoratorMetadata": true,
24 | "experimentalDecorators": true,
25 | "allowJs": true,
26 | "declaration": false,
27 | "declarationMap": false,
28 | "sourceMap": false,
29 | "alwaysStrict": true,
30 | "importsNotUsedAsValues": "remove",
31 | "incremental": true,
32 | "newLine": "lf",
33 | "noEmitHelpers": true,
34 | "preserveConstEnums": true,
35 | "pretty": true,
36 | "useDefineForClassFields": true,
37 | "baseUrl": "./"
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "ragemp-typescript",
3 | "version": "2.2.1",
4 | "scripts": {
5 | "format": "prettier --write {src,scripts}/**/*.ts",
6 | "build:production": "rollup -c ./scripts/rollup.config.js --environment NODE_ENV:production",
7 | "build": "rollup -c ./scripts/rollup.config.js",
8 | "watch": "rollup -w -c ./scripts/rollup.config.js"
9 | },
10 | "repository": {
11 | "type": "git",
12 | "url": "git+https://github.com/LeonardSSH/ragemp-typescript.git"
13 | },
14 | "license": "MIT",
15 | "bugs": {
16 | "url": "https://github.com/LeonardSSH/ragemp-typescript/issues"
17 | },
18 | "homepage": "https://github.com/LeonardSSH/ragemp-typescript#readme",
19 | "devDependencies": {
20 | "@ragempcommunity/types-client": "^2.0.2",
21 | "@ragempcommunity/types-server": "^2.0.2",
22 | "@rollup/plugin-commonjs": "^21.0.1",
23 | "@rollup/plugin-json": "^4.1.0",
24 | "@rollup/plugin-node-resolve": "^13.0.6",
25 | "@rollup/plugin-replace": "^4.0.0",
26 | "@swc/core": "^1.2.118",
27 | "@swc/helpers": "^0.3.2",
28 | "@types/node": "^17.0.23",
29 | "builtin-modules": "^3.2.0",
30 | "fs-jetpack": "^4.2.0",
31 | "prettier": "^2.5.0",
32 | "rollup": "^2.60.1",
33 | "rollup-plugin-swc3": "^0.1.4",
34 | "rollup-plugin-terser": "^7.0.2",
35 | "rollup-plugin-tsconfig-paths": "^1.0.15",
36 | "rollup-plugin-typescript2": "^0.31.1",
37 | "typescript": "^4.5.2"
38 | },
39 | "dependencies": {
40 | "colorette": "^2.0.16",
41 | "dotenv": "^16.0.0"
42 | },
43 | "prettier": {
44 | "$schema": "http://json.schemastore.org/prettierrc",
45 | "endOfLine": "lf",
46 | "printWidth": 150,
47 | "quoteProps": "as-needed",
48 | "semi": true,
49 | "singleQuote": true,
50 | "tabWidth": 4,
51 | "trailingComma": "none",
52 | "useTabs": true,
53 | "overrides": [
54 | {
55 | "files": "*.yml",
56 | "options": {
57 | "tabWidth": 2,
58 | "useTabs": false
59 | }
60 | }
61 | ]
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | lerna-debug.log*
8 |
9 | # Diagnostic reports (https://nodejs.org/api/report.html)
10 | report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
11 |
12 | # Runtime data
13 | pids
14 | *.pid
15 | *.seed
16 | *.pid.lock
17 |
18 | # Directory for instrumented libs generated by jscoverage/JSCover
19 | lib-cov
20 |
21 | # Coverage directory used by tools like istanbul
22 | coverage
23 | *.lcov
24 |
25 | # nyc test coverage
26 | .nyc_output
27 |
28 | # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
29 | .grunt
30 |
31 | # Bower dependency directory (https://bower.io/)
32 | bower_components
33 |
34 | # node-waf configuration
35 | .lock-wscript
36 |
37 | # Compiled binary addons (https://nodejs.org/api/addons.html)
38 | build/Release
39 |
40 | # Dependency directories
41 | node_modules/
42 | jspm_packages/
43 |
44 | # TypeScript v1 declaration files
45 | typings/
46 |
47 | # TypeScript cache
48 | *.tsbuildinfo
49 |
50 | # Optional npm cache directory
51 | .npm
52 |
53 | # Optional eslint cache
54 | .eslintcache
55 |
56 | # Microbundle cache
57 | .rpt2_cache/
58 | .rts2_cache_cjs/
59 | .rts2_cache_es/
60 | .rts2_cache_umd/
61 |
62 | # Optional REPL history
63 | .node_repl_history
64 |
65 | # Output of 'npm pack'
66 | *.tgz
67 |
68 | # Yarn Integrity file
69 | .yarn-integrity
70 |
71 | # dotenv environment variables file
72 | .env
73 | .env.test
74 |
75 | # parcel-bundler cache (https://parceljs.org/)
76 | .cache
77 |
78 | # Next.js build output
79 | .next
80 |
81 | # Nuxt.js build / generate output
82 | .nuxt
83 | dist
84 |
85 | # Gatsby files
86 | .cache/
87 | # Comment in the public line in if your project uses Gatsby and *not* Next.js
88 | # https://nextjs.org/blog/next-9-1#public-directory-support
89 | # public
90 |
91 | # vuepress build output
92 | .vuepress/dist
93 |
94 | # Serverless directories
95 | .serverless/
96 |
97 | # FuseBox cache
98 | .fusebox/
99 |
100 | # DynamoDB Local files
101 | .dynamodb/
102 |
103 | # TernJS port file
104 | .tern-port
105 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 | A Typescript Boilerplate for RAGE:MP with simple setup and usage.
3 |
4 |
5 |
6 |
7 | Remember to 🌟 this Github if you 💖 it.
8 |
9 | > For Javascript Edition, see: [ragemp-javascript](https://github.com/leonardssh/ragemp-javascript)
10 |
11 | ## 📌 Features
12 |
13 | - Full RAGE:MP Type Support for VSCode
14 | - Built in rollup config for transpile and auto-copy (incredibly fast using the [SWC](https://github.com/swc-project/swc))
15 | - Prettier Configuration for code formatting.
16 |
17 | ## 📥 Installation
18 |
19 | ### Prerequisites
20 |
21 | - [Install NodeJS 16+](https://nodejs.org/en/download/current/)
22 | - [Install GIT](https://git-scm.com/downloads)
23 |
24 | ### Clone the Repository
25 |
26 | Use the command below in any terminal, command prompt, etc.
27 |
28 | ```sh
29 | git clone https://github.com/leonardssh/ragemp-typescript.git
30 | ```
31 |
32 | ### Install the necessary modules
33 |
34 | Use the command below in any terminal, command prompt, etc.
35 |
36 | ```sh
37 | cd ragemp-typescript
38 | npm install
39 | ```
40 |
41 | ### Rename the `.env.example` file to `.env`
42 |
43 | Without it, rollup will not be able to copy the files properly
44 |
45 | ### Compiler Configuration
46 |
47 | The boilerplate comes with 2 compilers:
48 |
49 | 1. [SWC](https://swc.rs/) - ⚡ultra fast (no support for const enums)
50 | 2. [Typescript](https://www.npmjs.com/package/rollup-plugin-typescript2) - 🐢 very slow (support for const enums)
51 |
52 | > To use SWC, set `COMPILER_USE_SWC` to true, and for `TYPESCRIPT` to false
53 |
54 | ```bash
55 | PRODUCTION_MODE=false
56 | COMPILER_USE_SWC=true // <--- CHANGE THE COMPILER BETWEEN SWC & TYPESCRIPT
57 | ```
58 |
59 | ### Build the server
60 |
61 | Use the command below in any terminal, command prompt, etc. This will transpile and copy the files to the `dist` folder. Folder which is used for production.
62 |
63 | ```sh
64 | npm run build
65 | ```
66 |
67 | 
68 |
69 | ### Get Server Files
70 |
71 | Grab the server files from `RAGEMP/server-files` and drop them in the `dist` folder.
72 |
73 | ### Start the Server
74 |
75 | ```sh
76 | cd ./dist
77 | ./ragemp-server.exe
78 | ```
79 |
80 | ## 👨💻 Contributing
81 |
82 | To contribute to this repository, feel free to create a new fork of the repository and submit a pull request.
83 |
84 | 1. Fork / Clone and select the `main` branch.
85 | 2. Create a new branch in your fork.
86 | 3. Make your changes.
87 | 4. Commit your changes, and push them.
88 | 5. Submit a Pull Request [here](https://github.com/LeonardSSH/ragemp-typescript/pulls)!
89 |
90 | ## 📋 License
91 |
92 | This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
93 |
--------------------------------------------------------------------------------
/scripts/rollup.config.js:
--------------------------------------------------------------------------------
1 | import jetpack from 'fs-jetpack';
2 | import path from 'path';
3 | import { config } from 'dotenv';
4 | import nodeResolvePlugin from '@rollup/plugin-node-resolve';
5 | import { swc } from 'rollup-plugin-swc3';
6 | import jsonPlugin from '@rollup/plugin-json';
7 | import { blueBright, greenBright, redBright } from 'colorette';
8 | import builtinModules from 'builtin-modules';
9 | import commonjsPlugin from '@rollup/plugin-commonjs';
10 | import tsPaths from 'rollup-plugin-tsconfig-paths';
11 | import typescriptPlugin from 'rollup-plugin-typescript2';
12 | import { terser } from 'rollup-plugin-terser';
13 |
14 | config({
15 | path: path.resolve('.env')
16 | });
17 |
18 | const buildOutput = 'dist';
19 | const isProduction = process.env.PRODUCTION_MODE === 'true';
20 | const useSWC = process.env.COMPILER_USE_SWC === 'true';
21 | const sourcePath = path.resolve('src');
22 | const pkgJson = jetpack.read('package.json', 'json');
23 | const localInstalledPackages = [...Object.keys(pkgJson.dependencies)];
24 |
25 | /**
26 | * Resolve given path by fs-jetpack
27 | */
28 | function resolvePath(pathParts) {
29 | return jetpack.path(...pathParts);
30 | }
31 |
32 | /**
33 | * Generate success console message
34 | */
35 | function successMessage(message, type = 'Success') {
36 | console.log(`[${greenBright(type)}] ${message}`);
37 | }
38 |
39 | /**
40 | * Generate error console message
41 | */
42 | function errorMessage(message, type = 'Error') {
43 | console.log(`[${redBright(type)}] ${message}`);
44 | }
45 |
46 | /**
47 | * Copy given source to destination
48 | */
49 | function copy(source, destination, options = { overwrite: true }) {
50 | return jetpack.copy(source, destination, options);
51 | }
52 |
53 | /**
54 | * CleanUp the build output
55 | */
56 | function cleanUp() {
57 | if (!jetpack.exists(buildOutput)) {
58 | return;
59 | }
60 |
61 | const preserved = [
62 | 'node_modules/**/*',
63 | 'ragemp-server*',
64 | '.env',
65 | 'BugTrap-x64.dll',
66 | 'bin/**/*',
67 | 'dotnet/**/*',
68 | 'maps/**/*',
69 | 'plugins/**/*',
70 | 'client_packages/game_resources/dlcpacks/**/*',
71 | 'pnpm-lock.yaml',
72 | 'package-lock.json',
73 | 'yarn.lock'
74 | ];
75 |
76 | const removeablePaths = jetpack.find('dist', {
77 | matching: preserved.map((path) => `!${path}`),
78 | directories: false
79 | });
80 |
81 | removeablePaths.forEach((path) => {
82 | jetpack.remove(path);
83 | errorMessage(path, 'Removed');
84 | });
85 | }
86 |
87 | /**
88 | * Copy all static files they needed
89 | */
90 | function copyFiles() {
91 | const prepareForCopy = [];
92 |
93 | prepareForCopy.push(
94 | {
95 | from: jetpack.path('package.json'),
96 | to: jetpack.path(buildOutput, 'package.json')
97 | },
98 | {
99 | from: jetpack.path('.env'),
100 | to: jetpack.path(buildOutput, '.env')
101 | },
102 | {
103 | from: jetpack.path('conf.json'),
104 | to: jetpack.path(buildOutput, 'conf.json')
105 | }
106 | );
107 |
108 | prepareForCopy.forEach((item) => {
109 | copy(item.from, item.to);
110 | successMessage(blueBright(`${item.from} -> ${item.to}`), 'Copied');
111 | });
112 | }
113 |
114 | cleanUp();
115 | copyFiles();
116 |
117 | // use terser only if it is the typescript compiler in use
118 | const terserMinify =
119 | isProduction && !useSWC
120 | ? terser({
121 | keep_classnames: true,
122 | keep_fnames: true,
123 | output: {
124 | comments: false
125 | }
126 | })
127 | : [];
128 |
129 | const generateConfig = (options = {}) => {
130 | const { isServer } = options;
131 |
132 | const outputFile = isServer
133 | ? resolvePath([buildOutput, 'packages', 'core', 'index.js'])
134 | : resolvePath([buildOutput, 'client_packages', 'index.js']);
135 |
136 | const serverPlugins = [];
137 | const plugins = [terserMinify];
138 |
139 | const external = [...builtinModules, ...localInstalledPackages];
140 | const tsConfigPath = resolvePath([sourcePath, isServer ? 'server' : 'client', 'tsconfig.json']);
141 |
142 | return {
143 | input: resolvePath([sourcePath, isServer ? 'server' : 'client', 'index.ts']),
144 | output: {
145 | file: outputFile,
146 | format: 'cjs'
147 | },
148 | plugins: [
149 | tsPaths({ tsConfigPath }),
150 | nodeResolvePlugin(),
151 | jsonPlugin(),
152 | commonjsPlugin(),
153 | useSWC
154 | ? swc({
155 | tsconfig: tsConfigPath,
156 | minify: isProduction,
157 | jsc: {
158 | target: 'es2020',
159 | parser: {
160 | syntax: 'typescript',
161 | dynamicImport: true,
162 | decorators: true
163 | },
164 | transform: {
165 | legacyDecorator: true,
166 | decoratorMetadata: true
167 | },
168 | externalHelpers: true,
169 | keepClassNames: true,
170 | loose: true
171 | }
172 | })
173 | : typescriptPlugin({
174 | check: false,
175 | tsconfig: tsConfigPath
176 | }),
177 | isServer ? [...serverPlugins] : null,
178 | ...plugins
179 | ],
180 | external: isServer ? [...external] : null,
181 | inlineDynamicImports: true
182 | };
183 | };
184 |
185 | export default [generateConfig({ isServer: true }), generateConfig({ isServer: false })];
186 |
--------------------------------------------------------------------------------
/pnpm-lock.yaml:
--------------------------------------------------------------------------------
1 | lockfileVersion: 5.3
2 |
3 | specifiers:
4 | '@ragempcommunity/types-client': ^2.0.2
5 | '@ragempcommunity/types-server': ^2.0.2
6 | '@rollup/plugin-commonjs': ^21.0.1
7 | '@rollup/plugin-json': ^4.1.0
8 | '@rollup/plugin-node-resolve': ^13.0.6
9 | '@rollup/plugin-replace': ^4.0.0
10 | '@swc/core': ^1.2.118
11 | '@swc/helpers': ^0.3.2
12 | '@types/node': ^17.0.23
13 | builtin-modules: ^3.2.0
14 | colorette: ^2.0.16
15 | dotenv: ^16.0.0
16 | fs-jetpack: ^4.2.0
17 | prettier: ^2.5.0
18 | rollup: ^2.60.1
19 | rollup-plugin-swc3: ^0.1.4
20 | rollup-plugin-terser: ^7.0.2
21 | rollup-plugin-tsconfig-paths: ^1.0.15
22 | rollup-plugin-typescript2: ^0.31.1
23 | typescript: ^4.5.2
24 |
25 | dependencies:
26 | colorette: 2.0.16
27 | dotenv: 16.0.0
28 |
29 | devDependencies:
30 | '@ragempcommunity/types-client': 2.0.2
31 | '@ragempcommunity/types-server': 2.0.2
32 | '@rollup/plugin-commonjs': 21.0.3_rollup@2.70.1
33 | '@rollup/plugin-json': 4.1.0_rollup@2.70.1
34 | '@rollup/plugin-node-resolve': 13.1.3_rollup@2.70.1
35 | '@rollup/plugin-replace': 4.0.0_rollup@2.70.1
36 | '@swc/core': 1.2.162
37 | '@swc/helpers': 0.3.8
38 | '@types/node': 17.0.23
39 | builtin-modules: 3.2.0
40 | fs-jetpack: 4.3.1
41 | prettier: 2.6.1
42 | rollup: 2.70.1
43 | rollup-plugin-swc3: 0.1.4_@swc+core@1.2.162+rollup@2.70.1
44 | rollup-plugin-terser: 7.0.2_rollup@2.70.1
45 | rollup-plugin-tsconfig-paths: 1.1.6_rollup@2.70.1+typescript@4.6.3
46 | rollup-plugin-typescript2: 0.31.2_6ec1f5fc5b13027c350d7531c17255fe
47 | typescript: 4.6.3
48 |
49 | packages:
50 |
51 | /@babel/code-frame/7.16.7:
52 | resolution: {integrity: sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==}
53 | engines: {node: '>=6.9.0'}
54 | dependencies:
55 | '@babel/highlight': 7.16.10
56 | dev: true
57 |
58 | /@babel/helper-validator-identifier/7.16.7:
59 | resolution: {integrity: sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==}
60 | engines: {node: '>=6.9.0'}
61 | dev: true
62 |
63 | /@babel/highlight/7.16.10:
64 | resolution: {integrity: sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw==}
65 | engines: {node: '>=6.9.0'}
66 | dependencies:
67 | '@babel/helper-validator-identifier': 7.16.7
68 | chalk: 2.4.2
69 | js-tokens: 4.0.0
70 | dev: true
71 |
72 | /@ragempcommunity/types-client/2.0.2:
73 | resolution: {integrity: sha512-0Ca5F3So10V3hD6dJtv08vYda2IletKpvOFXFfvYQvcK9aFghkHjtU4bnpHqAUFIvEms9CxgTSZFGJq8DTJTBg==}
74 | dev: true
75 |
76 | /@ragempcommunity/types-server/2.0.2:
77 | resolution: {integrity: sha512-nlicSskEN9htdpuybcLyCoOeWmk2JcDg80a3xZm3mE2iuMBYqRbYvi6+Zsnk7KocRjUkOLdXtidlX9RfyUWFOg==}
78 | dev: true
79 |
80 | /@rollup/plugin-commonjs/21.0.3_rollup@2.70.1:
81 | resolution: {integrity: sha512-ThGfwyvcLc6cfP/MWxA5ACF+LZCvsuhUq7V5134Az1oQWsiC7lNpLT4mJI86WQunK7BYmpUiHmMk2Op6OAHs0g==}
82 | engines: {node: '>= 8.0.0'}
83 | peerDependencies:
84 | rollup: ^2.38.3
85 | dependencies:
86 | '@rollup/pluginutils': 3.1.0_rollup@2.70.1
87 | commondir: 1.0.1
88 | estree-walker: 2.0.2
89 | glob: 7.2.0
90 | is-reference: 1.2.1
91 | magic-string: 0.25.9
92 | resolve: 1.22.0
93 | rollup: 2.70.1
94 | dev: true
95 |
96 | /@rollup/plugin-json/4.1.0_rollup@2.70.1:
97 | resolution: {integrity: sha512-yfLbTdNS6amI/2OpmbiBoW12vngr5NW2jCJVZSBEz+H5KfUJZ2M7sDjk0U6GOOdCWFVScShte29o9NezJ53TPw==}
98 | peerDependencies:
99 | rollup: ^1.20.0 || ^2.0.0
100 | dependencies:
101 | '@rollup/pluginutils': 3.1.0_rollup@2.70.1
102 | rollup: 2.70.1
103 | dev: true
104 |
105 | /@rollup/plugin-node-resolve/13.1.3_rollup@2.70.1:
106 | resolution: {integrity: sha512-BdxNk+LtmElRo5d06MGY4zoepyrXX1tkzX2hrnPEZ53k78GuOMWLqmJDGIIOPwVRIFZrLQOo+Yr6KtCuLIA0AQ==}
107 | engines: {node: '>= 10.0.0'}
108 | peerDependencies:
109 | rollup: ^2.42.0
110 | dependencies:
111 | '@rollup/pluginutils': 3.1.0_rollup@2.70.1
112 | '@types/resolve': 1.17.1
113 | builtin-modules: 3.2.0
114 | deepmerge: 4.2.2
115 | is-module: 1.0.0
116 | resolve: 1.22.0
117 | rollup: 2.70.1
118 | dev: true
119 |
120 | /@rollup/plugin-replace/4.0.0_rollup@2.70.1:
121 | resolution: {integrity: sha512-+rumQFiaNac9y64OHtkHGmdjm7us9bo1PlbgQfdihQtuNxzjpaB064HbRnewUOggLQxVCCyINfStkgmBeQpv1g==}
122 | peerDependencies:
123 | rollup: ^1.20.0 || ^2.0.0
124 | dependencies:
125 | '@rollup/pluginutils': 3.1.0_rollup@2.70.1
126 | magic-string: 0.25.9
127 | rollup: 2.70.1
128 | dev: true
129 |
130 | /@rollup/pluginutils/3.1.0_rollup@2.70.1:
131 | resolution: {integrity: sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==}
132 | engines: {node: '>= 8.0.0'}
133 | peerDependencies:
134 | rollup: ^1.20.0||^2.0.0
135 | dependencies:
136 | '@types/estree': 0.0.39
137 | estree-walker: 1.0.1
138 | picomatch: 2.3.1
139 | rollup: 2.70.1
140 | dev: true
141 |
142 | /@rollup/pluginutils/4.2.0:
143 | resolution: {integrity: sha512-2WUyJNRkyH5p487pGnn4tWAsxhEFKN/pT8CMgHshd5H+IXkOnKvKZwsz5ZWz+YCXkleZRAU5kwbfgF8CPfDRqA==}
144 | engines: {node: '>= 8.0.0'}
145 | dependencies:
146 | estree-walker: 2.0.2
147 | picomatch: 2.3.1
148 | dev: true
149 |
150 | /@swc/core-android-arm-eabi/1.2.162:
151 | resolution: {integrity: sha512-mQSuLspB1qBAYXyDP0Da60tPumhwD0CIm7tMjAFiOplEJN+9YKBlZ3EV9Xc1wF5bdWzJpmzmqEdN9FEfOQqlwQ==}
152 | engines: {node: '>=10'}
153 | cpu: [arm]
154 | os: [android]
155 | requiresBuild: true
156 | dev: true
157 | optional: true
158 |
159 | /@swc/core-android-arm64/1.2.162:
160 | resolution: {integrity: sha512-9TuuTrsrxbw1W1xUfcmRuEIKImJC725S/4McSFpoylYRIoHzD1DPpgP4fquU0/fzq7rldVD1tu4tg3xvEL8auw==}
161 | engines: {node: '>=10'}
162 | cpu: [arm64]
163 | os: [android]
164 | requiresBuild: true
165 | dev: true
166 | optional: true
167 |
168 | /@swc/core-darwin-arm64/1.2.162:
169 | resolution: {integrity: sha512-gWJjD7NqKVxGFSJ4BeTXfBpRRRkxaQcWmmkwoXDQ1tmLRUX6K3V8MXp41mTdg7jJWDyKq4VTN6D8zLQcCUEhmQ==}
170 | engines: {node: '>=10'}
171 | cpu: [arm64]
172 | os: [darwin]
173 | requiresBuild: true
174 | dev: true
175 | optional: true
176 |
177 | /@swc/core-darwin-x64/1.2.162:
178 | resolution: {integrity: sha512-+3foKCmxiMuPp1UCIPUg3N8CuzFRDPoPEQagz3TKT8W7Bkv9SXeIL8LPuwfH970rIcx1Ie/Q2UWXJwbckVmMHQ==}
179 | engines: {node: '>=10'}
180 | cpu: [x64]
181 | os: [darwin]
182 | requiresBuild: true
183 | dev: true
184 | optional: true
185 |
186 | /@swc/core-freebsd-x64/1.2.162:
187 | resolution: {integrity: sha512-YdfQgALPwJ6ZCvfqLlytCvZG/r/ZgBlOa0gaZvMGl6WMpnWgoVPA5OYBA5qzstg/OEWjMu6fldi+lElsvq8v2Q==}
188 | engines: {node: '>=10'}
189 | cpu: [x64]
190 | os: [freebsd]
191 | requiresBuild: true
192 | dev: true
193 | optional: true
194 |
195 | /@swc/core-linux-arm-gnueabihf/1.2.162:
196 | resolution: {integrity: sha512-4elULEP2JWvSpEEI7JmhoI25cRQ2/ffBtf3+4vLlcAgJCdCrkYvHJO2fbWlN1fpydj34QabMsOROYS4ff4p0Og==}
197 | engines: {node: '>=10'}
198 | cpu: [arm]
199 | os: [linux]
200 | requiresBuild: true
201 | dev: true
202 | optional: true
203 |
204 | /@swc/core-linux-arm64-gnu/1.2.162:
205 | resolution: {integrity: sha512-ZgR1J8H4qI7EuADgHEeDBtiiF8yt6vrznVtaBvEInDPdV9W10QNKsTqhuFkTfOqaHAO2u1+MkZRuvALGahdDaQ==}
206 | engines: {node: '>=10'}
207 | cpu: [arm64]
208 | os: [linux]
209 | requiresBuild: true
210 | dev: true
211 | optional: true
212 |
213 | /@swc/core-linux-arm64-musl/1.2.162:
214 | resolution: {integrity: sha512-1Egev+v8wlr7zPaS715sG7flzbGE0OLtcCR7p7oUqD/NbKwlA6czMch5JwNWvdRMjLThTYEeJ/ID+/xG8BqXUg==}
215 | engines: {node: '>=10'}
216 | cpu: [arm64]
217 | os: [linux]
218 | requiresBuild: true
219 | dev: true
220 | optional: true
221 |
222 | /@swc/core-linux-x64-gnu/1.2.162:
223 | resolution: {integrity: sha512-LFWV+8h6S3KmzVgHXRYpGYsaytGt+Vrbm8554ugUdzk465JnHyKzw3e6VRcJTxAGgXa+o1qUEkeBg7Wc/WWkmQ==}
224 | engines: {node: '>=10'}
225 | cpu: [x64]
226 | os: [linux]
227 | requiresBuild: true
228 | dev: true
229 | optional: true
230 |
231 | /@swc/core-linux-x64-musl/1.2.162:
232 | resolution: {integrity: sha512-q5insucuYBVCjpDp8/EG3dbt2PFwGAo2vFzofr/lOlOo9p90jCzFRL0+eXg4Ar1YG6BL+T9o5LhFRggY+YHIBg==}
233 | engines: {node: '>=10'}
234 | cpu: [x64]
235 | os: [linux]
236 | requiresBuild: true
237 | dev: true
238 | optional: true
239 |
240 | /@swc/core-win32-arm64-msvc/1.2.162:
241 | resolution: {integrity: sha512-xzksaPOqB3a8gxLoE0ZMi5w2NX9zzYDylmM3qbCVqft6IZid2XFG2lPFIwxJV1xfW68xMgAe0IECnjp/nQsS8g==}
242 | engines: {node: '>=10'}
243 | cpu: [arm64]
244 | os: [win32]
245 | requiresBuild: true
246 | dev: true
247 | optional: true
248 |
249 | /@swc/core-win32-ia32-msvc/1.2.162:
250 | resolution: {integrity: sha512-hUvS7UaSW+h16SSH7GwH571L2GnqWHPsiSKIDUvv1b/lca7dLcCY8RzsKafB/GLU+5EBQIN3nab3nH0vOWRkvw==}
251 | engines: {node: '>=10'}
252 | cpu: [ia32]
253 | os: [win32]
254 | requiresBuild: true
255 | dev: true
256 | optional: true
257 |
258 | /@swc/core-win32-x64-msvc/1.2.162:
259 | resolution: {integrity: sha512-Eb0SehVYWO5TpYeaPAD3T3iIPpgJa1q/rmvgMDvL0hi4UnOJlvj43kC4Dhuor6opLd6fJkCS7gBq9SxtGtb8bQ==}
260 | engines: {node: '>=10'}
261 | cpu: [x64]
262 | os: [win32]
263 | requiresBuild: true
264 | dev: true
265 | optional: true
266 |
267 | /@swc/core/1.2.162:
268 | resolution: {integrity: sha512-MFBmoV2qgGvi5bPX1tH3NLtWV4exa5jTCkC/30mdP5PTwEsxKJ5u+m1fuYOlgzDiBlytx8AihVZy2TmXhWZByw==}
269 | engines: {node: '>=10'}
270 | hasBin: true
271 | optionalDependencies:
272 | '@swc/core-android-arm-eabi': 1.2.162
273 | '@swc/core-android-arm64': 1.2.162
274 | '@swc/core-darwin-arm64': 1.2.162
275 | '@swc/core-darwin-x64': 1.2.162
276 | '@swc/core-freebsd-x64': 1.2.162
277 | '@swc/core-linux-arm-gnueabihf': 1.2.162
278 | '@swc/core-linux-arm64-gnu': 1.2.162
279 | '@swc/core-linux-arm64-musl': 1.2.162
280 | '@swc/core-linux-x64-gnu': 1.2.162
281 | '@swc/core-linux-x64-musl': 1.2.162
282 | '@swc/core-win32-arm64-msvc': 1.2.162
283 | '@swc/core-win32-ia32-msvc': 1.2.162
284 | '@swc/core-win32-x64-msvc': 1.2.162
285 | dev: true
286 |
287 | /@swc/helpers/0.3.8:
288 | resolution: {integrity: sha512-aWItSZvJj4+GI6FWkjZR13xPNPctq2RRakzo+O6vN7bC2yjwdg5EFpgaSAUn95b7BGSgcflvzVDPoKmJv24IOg==}
289 | dev: true
290 |
291 | /@types/estree/0.0.39:
292 | resolution: {integrity: sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==}
293 | dev: true
294 |
295 | /@types/estree/0.0.51:
296 | resolution: {integrity: sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==}
297 | dev: true
298 |
299 | /@types/node/17.0.23:
300 | resolution: {integrity: sha512-UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==}
301 | dev: true
302 |
303 | /@types/resolve/1.17.1:
304 | resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==}
305 | dependencies:
306 | '@types/node': 17.0.23
307 | dev: true
308 |
309 | /@yarn-tool/resolve-package/1.0.46_@types+node@17.0.23:
310 | resolution: {integrity: sha512-RJcBGTVywUqYGRtGkPSgJC/ozf0wK/xjUy66tXkbpL35U0o1oef4S0v23euxA/CiukqBWr2fRGtGY6FidESdTg==}
311 | dependencies:
312 | pkg-dir: 5.0.0
313 | tslib: 2.3.1
314 | upath2: 3.1.12_@types+node@17.0.23
315 | transitivePeerDependencies:
316 | - '@types/node'
317 | dev: true
318 |
319 | /acorn/8.7.0:
320 | resolution: {integrity: sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ==}
321 | engines: {node: '>=0.4.0'}
322 | hasBin: true
323 | dev: true
324 |
325 | /ansi-styles/3.2.1:
326 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
327 | engines: {node: '>=4'}
328 | dependencies:
329 | color-convert: 1.9.3
330 | dev: true
331 |
332 | /balanced-match/1.0.2:
333 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
334 | dev: true
335 |
336 | /brace-expansion/1.1.11:
337 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==}
338 | dependencies:
339 | balanced-match: 1.0.2
340 | concat-map: 0.0.1
341 | dev: true
342 |
343 | /buffer-from/1.1.2:
344 | resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
345 | dev: true
346 |
347 | /builtin-modules/3.2.0:
348 | resolution: {integrity: sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA==}
349 | engines: {node: '>=6'}
350 | dev: true
351 |
352 | /chalk/2.4.2:
353 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
354 | engines: {node: '>=4'}
355 | dependencies:
356 | ansi-styles: 3.2.1
357 | escape-string-regexp: 1.0.5
358 | supports-color: 5.5.0
359 | dev: true
360 |
361 | /color-convert/1.9.3:
362 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
363 | dependencies:
364 | color-name: 1.1.3
365 | dev: true
366 |
367 | /color-name/1.1.3:
368 | resolution: {integrity: sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=}
369 | dev: true
370 |
371 | /colorette/2.0.16:
372 | resolution: {integrity: sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g==}
373 | dev: false
374 |
375 | /commander/2.20.3:
376 | resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
377 | dev: true
378 |
379 | /commondir/1.0.1:
380 | resolution: {integrity: sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=}
381 | dev: true
382 |
383 | /concat-map/0.0.1:
384 | resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=}
385 | dev: true
386 |
387 | /deepmerge/4.2.2:
388 | resolution: {integrity: sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==}
389 | engines: {node: '>=0.10.0'}
390 | dev: true
391 |
392 | /dotenv/16.0.0:
393 | resolution: {integrity: sha512-qD9WU0MPM4SWLPJy/r2Be+2WgQj8plChsyrCNQzW/0WjvcJQiKQJ9mH3ZgB3fxbUUxgc/11ZJ0Fi5KiimWGz2Q==}
394 | engines: {node: '>=12'}
395 | dev: false
396 |
397 | /escape-string-regexp/1.0.5:
398 | resolution: {integrity: sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=}
399 | engines: {node: '>=0.8.0'}
400 | dev: true
401 |
402 | /estree-walker/1.0.1:
403 | resolution: {integrity: sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==}
404 | dev: true
405 |
406 | /estree-walker/2.0.2:
407 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
408 | dev: true
409 |
410 | /find-cache-dir/3.3.2:
411 | resolution: {integrity: sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==}
412 | engines: {node: '>=8'}
413 | dependencies:
414 | commondir: 1.0.1
415 | make-dir: 3.1.0
416 | pkg-dir: 4.2.0
417 | dev: true
418 |
419 | /find-up/4.1.0:
420 | resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
421 | engines: {node: '>=8'}
422 | dependencies:
423 | locate-path: 5.0.0
424 | path-exists: 4.0.0
425 | dev: true
426 |
427 | /find-up/5.0.0:
428 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
429 | engines: {node: '>=10'}
430 | dependencies:
431 | locate-path: 6.0.0
432 | path-exists: 4.0.0
433 | dev: true
434 |
435 | /fs-extra/10.0.1:
436 | resolution: {integrity: sha512-NbdoVMZso2Lsrn/QwLXOy6rm0ufY2zEOKCDzJR/0kBsb0E6qed0P3iYK+Ath3BfvXEeu4JhEtXLgILx5psUfag==}
437 | engines: {node: '>=12'}
438 | dependencies:
439 | graceful-fs: 4.2.9
440 | jsonfile: 6.1.0
441 | universalify: 2.0.0
442 | dev: true
443 |
444 | /fs-jetpack/4.3.1:
445 | resolution: {integrity: sha512-dbeOK84F6BiQzk2yqqCVwCPWTxAvVGJ3fMQc6E2wuEohS28mR6yHngbrKuVCK1KHRx/ccByDylqu4H5PCP2urQ==}
446 | dependencies:
447 | minimatch: 3.1.2
448 | rimraf: 2.7.1
449 | dev: true
450 |
451 | /fs.realpath/1.0.0:
452 | resolution: {integrity: sha1-FQStJSMVjKpA20onh8sBQRmU6k8=}
453 | dev: true
454 |
455 | /fsevents/2.3.2:
456 | resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
457 | engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
458 | os: [darwin]
459 | requiresBuild: true
460 | dev: true
461 | optional: true
462 |
463 | /function-bind/1.1.1:
464 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==}
465 | dev: true
466 |
467 | /glob/7.2.0:
468 | resolution: {integrity: sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==}
469 | dependencies:
470 | fs.realpath: 1.0.0
471 | inflight: 1.0.6
472 | inherits: 2.0.4
473 | minimatch: 3.1.2
474 | once: 1.4.0
475 | path-is-absolute: 1.0.1
476 | dev: true
477 |
478 | /graceful-fs/4.2.9:
479 | resolution: {integrity: sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==}
480 | dev: true
481 |
482 | /has-flag/3.0.0:
483 | resolution: {integrity: sha1-tdRU3CGZriJWmfNGfloH87lVuv0=}
484 | engines: {node: '>=4'}
485 | dev: true
486 |
487 | /has-flag/4.0.0:
488 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
489 | engines: {node: '>=8'}
490 | dev: true
491 |
492 | /has/1.0.3:
493 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==}
494 | engines: {node: '>= 0.4.0'}
495 | dependencies:
496 | function-bind: 1.1.1
497 | dev: true
498 |
499 | /inflight/1.0.6:
500 | resolution: {integrity: sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=}
501 | dependencies:
502 | once: 1.4.0
503 | wrappy: 1.0.2
504 | dev: true
505 |
506 | /inherits/2.0.4:
507 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
508 | dev: true
509 |
510 | /is-core-module/2.8.1:
511 | resolution: {integrity: sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==}
512 | dependencies:
513 | has: 1.0.3
514 | dev: true
515 |
516 | /is-module/1.0.0:
517 | resolution: {integrity: sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=}
518 | dev: true
519 |
520 | /is-reference/1.2.1:
521 | resolution: {integrity: sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==}
522 | dependencies:
523 | '@types/estree': 0.0.51
524 | dev: true
525 |
526 | /jest-worker/26.6.2:
527 | resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==}
528 | engines: {node: '>= 10.13.0'}
529 | dependencies:
530 | '@types/node': 17.0.23
531 | merge-stream: 2.0.0
532 | supports-color: 7.2.0
533 | dev: true
534 |
535 | /joycon/3.1.1:
536 | resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==}
537 | engines: {node: '>=10'}
538 | dev: true
539 |
540 | /js-tokens/4.0.0:
541 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
542 | dev: true
543 |
544 | /jsonc-parser/3.0.0:
545 | resolution: {integrity: sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==}
546 | dev: true
547 |
548 | /jsonfile/6.1.0:
549 | resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==}
550 | dependencies:
551 | universalify: 2.0.0
552 | optionalDependencies:
553 | graceful-fs: 4.2.9
554 | dev: true
555 |
556 | /locate-path/5.0.0:
557 | resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
558 | engines: {node: '>=8'}
559 | dependencies:
560 | p-locate: 4.1.0
561 | dev: true
562 |
563 | /locate-path/6.0.0:
564 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
565 | engines: {node: '>=10'}
566 | dependencies:
567 | p-locate: 5.0.0
568 | dev: true
569 |
570 | /magic-string/0.25.9:
571 | resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==}
572 | dependencies:
573 | sourcemap-codec: 1.4.8
574 | dev: true
575 |
576 | /make-dir/3.1.0:
577 | resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==}
578 | engines: {node: '>=8'}
579 | dependencies:
580 | semver: 6.3.0
581 | dev: true
582 |
583 | /merge-stream/2.0.0:
584 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==}
585 | dev: true
586 |
587 | /minimatch/3.1.2:
588 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==}
589 | dependencies:
590 | brace-expansion: 1.1.11
591 | dev: true
592 |
593 | /once/1.4.0:
594 | resolution: {integrity: sha1-WDsap3WWHUsROsF9nFC6753Xa9E=}
595 | dependencies:
596 | wrappy: 1.0.2
597 | dev: true
598 |
599 | /p-limit/2.3.0:
600 | resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
601 | engines: {node: '>=6'}
602 | dependencies:
603 | p-try: 2.2.0
604 | dev: true
605 |
606 | /p-limit/3.1.0:
607 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
608 | engines: {node: '>=10'}
609 | dependencies:
610 | yocto-queue: 0.1.0
611 | dev: true
612 |
613 | /p-locate/4.1.0:
614 | resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
615 | engines: {node: '>=8'}
616 | dependencies:
617 | p-limit: 2.3.0
618 | dev: true
619 |
620 | /p-locate/5.0.0:
621 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
622 | engines: {node: '>=10'}
623 | dependencies:
624 | p-limit: 3.1.0
625 | dev: true
626 |
627 | /p-try/2.2.0:
628 | resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
629 | engines: {node: '>=6'}
630 | dev: true
631 |
632 | /path-exists/4.0.0:
633 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
634 | engines: {node: '>=8'}
635 | dev: true
636 |
637 | /path-is-absolute/1.0.1:
638 | resolution: {integrity: sha1-F0uSaHNVNP+8es5r9TpanhtcX18=}
639 | engines: {node: '>=0.10.0'}
640 | dev: true
641 |
642 | /path-is-network-drive/1.0.13:
643 | resolution: {integrity: sha512-Hg74mRN6mmXV+gTm3INjFK40ncAmC/Lo4qoQaSZ+GT3hZzlKdWQSqAjqyPeW0SvObP2W073WyYEBWY9d3wOm3A==}
644 | dependencies:
645 | tslib: 2.3.1
646 | dev: true
647 |
648 | /path-parse/1.0.7:
649 | resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
650 | dev: true
651 |
652 | /path-strip-sep/1.0.10:
653 | resolution: {integrity: sha512-JpCy+8LAJQQTO1bQsb/84s1g+/Stm3h39aOpPRBQ/paMUGVPPZChLTOTKHoaCkc/6sKuF7yVsnq5Pe1S6xQGcA==}
654 | dependencies:
655 | tslib: 2.3.1
656 | dev: true
657 |
658 | /picomatch/2.3.1:
659 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==}
660 | engines: {node: '>=8.6'}
661 | dev: true
662 |
663 | /pkg-dir/4.2.0:
664 | resolution: {integrity: sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==}
665 | engines: {node: '>=8'}
666 | dependencies:
667 | find-up: 4.1.0
668 | dev: true
669 |
670 | /pkg-dir/5.0.0:
671 | resolution: {integrity: sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==}
672 | engines: {node: '>=10'}
673 | dependencies:
674 | find-up: 5.0.0
675 | dev: true
676 |
677 | /prettier/2.6.1:
678 | resolution: {integrity: sha512-8UVbTBYGwN37Bs9LERmxCPjdvPxlEowx2urIL6urHzdb3SDq4B/Z6xLFCblrSnE4iKWcS6ziJ3aOYrc1kz/E2A==}
679 | engines: {node: '>=10.13.0'}
680 | hasBin: true
681 | dev: true
682 |
683 | /randombytes/2.1.0:
684 | resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
685 | dependencies:
686 | safe-buffer: 5.2.1
687 | dev: true
688 |
689 | /resolve/1.22.0:
690 | resolution: {integrity: sha512-Hhtrw0nLeSrFQ7phPp4OOcVjLPIeMnRlr5mcnVuMe7M/7eBn98A3hmFRLoFo3DLZkivSYwhRUJTyPyWAk56WLw==}
691 | hasBin: true
692 | dependencies:
693 | is-core-module: 2.8.1
694 | path-parse: 1.0.7
695 | supports-preserve-symlinks-flag: 1.0.0
696 | dev: true
697 |
698 | /rimraf/2.7.1:
699 | resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==}
700 | hasBin: true
701 | dependencies:
702 | glob: 7.2.0
703 | dev: true
704 |
705 | /rollup-plugin-swc3/0.1.4_@swc+core@1.2.162+rollup@2.70.1:
706 | resolution: {integrity: sha512-zvGzDScF2CQC+riaAsoOpkvszWzg29SyqkcZ/88Cg+9gVznzHLe+zaVwecieGm7qEucJB7Lol4oCEBy40tih7A==}
707 | engines: {node: '>=12'}
708 | peerDependencies:
709 | '@swc/core': '>=1.2.111'
710 | rollup: ^2.0.0
711 | dependencies:
712 | '@rollup/pluginutils': 4.2.0
713 | '@swc/core': 1.2.162
714 | deepmerge: 4.2.2
715 | joycon: 3.1.1
716 | jsonc-parser: 3.0.0
717 | rollup: 2.70.1
718 | dev: true
719 |
720 | /rollup-plugin-terser/7.0.2_rollup@2.70.1:
721 | resolution: {integrity: sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==}
722 | peerDependencies:
723 | rollup: ^2.0.0
724 | dependencies:
725 | '@babel/code-frame': 7.16.7
726 | jest-worker: 26.6.2
727 | rollup: 2.70.1
728 | serialize-javascript: 4.0.0
729 | terser: 5.12.1
730 | dev: true
731 |
732 | /rollup-plugin-tsconfig-paths/1.1.6_rollup@2.70.1+typescript@4.6.3:
733 | resolution: {integrity: sha512-g+SOMt2jfjgUekeCqLDuw9HQhxogzp9pU8Hccb8bR7o+ebNLKkuIeGHnbdva2XN4a7JnMKpKqKwtlZzPTM5rDQ==}
734 | peerDependencies:
735 | rollup: ^2
736 | dependencies:
737 | rollup: 2.70.1
738 | typescript-paths: 1.3.1_typescript@4.6.3
739 | transitivePeerDependencies:
740 | - typescript
741 | dev: true
742 |
743 | /rollup-plugin-typescript2/0.31.2_6ec1f5fc5b13027c350d7531c17255fe:
744 | resolution: {integrity: sha512-hRwEYR1C8xDGVVMFJQdEVnNAeWRvpaY97g5mp3IeLnzhNXzSVq78Ye/BJ9PAaUfN4DXa/uDnqerifMOaMFY54Q==}
745 | peerDependencies:
746 | rollup: '>=1.26.3'
747 | typescript: '>=2.4.0'
748 | dependencies:
749 | '@rollup/pluginutils': 4.2.0
750 | '@yarn-tool/resolve-package': 1.0.46_@types+node@17.0.23
751 | find-cache-dir: 3.3.2
752 | fs-extra: 10.0.1
753 | resolve: 1.22.0
754 | rollup: 2.70.1
755 | tslib: 2.3.1
756 | typescript: 4.6.3
757 | transitivePeerDependencies:
758 | - '@types/node'
759 | dev: true
760 |
761 | /rollup/2.70.1:
762 | resolution: {integrity: sha512-CRYsI5EuzLbXdxC6RnYhOuRdtz4bhejPMSWjsFLfVM/7w/85n2szZv6yExqUXsBdz5KT8eoubeyDUDjhLHEslA==}
763 | engines: {node: '>=10.0.0'}
764 | hasBin: true
765 | optionalDependencies:
766 | fsevents: 2.3.2
767 | dev: true
768 |
769 | /safe-buffer/5.2.1:
770 | resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
771 | dev: true
772 |
773 | /semver/6.3.0:
774 | resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==}
775 | hasBin: true
776 | dev: true
777 |
778 | /serialize-javascript/4.0.0:
779 | resolution: {integrity: sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==}
780 | dependencies:
781 | randombytes: 2.1.0
782 | dev: true
783 |
784 | /source-map-support/0.5.21:
785 | resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==}
786 | dependencies:
787 | buffer-from: 1.1.2
788 | source-map: 0.6.1
789 | dev: true
790 |
791 | /source-map/0.6.1:
792 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
793 | engines: {node: '>=0.10.0'}
794 | dev: true
795 |
796 | /source-map/0.7.3:
797 | resolution: {integrity: sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==}
798 | engines: {node: '>= 8'}
799 | dev: true
800 |
801 | /sourcemap-codec/1.4.8:
802 | resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==}
803 | dev: true
804 |
805 | /supports-color/5.5.0:
806 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
807 | engines: {node: '>=4'}
808 | dependencies:
809 | has-flag: 3.0.0
810 | dev: true
811 |
812 | /supports-color/7.2.0:
813 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
814 | engines: {node: '>=8'}
815 | dependencies:
816 | has-flag: 4.0.0
817 | dev: true
818 |
819 | /supports-preserve-symlinks-flag/1.0.0:
820 | resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
821 | engines: {node: '>= 0.4'}
822 | dev: true
823 |
824 | /terser/5.12.1:
825 | resolution: {integrity: sha512-NXbs+7nisos5E+yXwAD+y7zrcTkMqb0dEJxIGtSKPdCBzopf7ni4odPul2aechpV7EXNvOudYOX2bb5tln1jbQ==}
826 | engines: {node: '>=10'}
827 | hasBin: true
828 | dependencies:
829 | acorn: 8.7.0
830 | commander: 2.20.3
831 | source-map: 0.7.3
832 | source-map-support: 0.5.21
833 | dev: true
834 |
835 | /tslib/2.3.1:
836 | resolution: {integrity: sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==}
837 | dev: true
838 |
839 | /typescript-paths/1.3.1_typescript@4.6.3:
840 | resolution: {integrity: sha512-K/idYNIohZAaQTd5hIlVNJnRc2g65mgAno4kfz5VXHTFHh34Ai6Q4Jf2u8B+QkRSJWzNSprOGXnmb6yaYKzOyg==}
841 | peerDependencies:
842 | typescript: ^4.1.2
843 | dependencies:
844 | typescript: 4.6.3
845 | dev: true
846 |
847 | /typescript/4.6.3:
848 | resolution: {integrity: sha512-yNIatDa5iaofVozS/uQJEl3JRWLKKGJKh6Yaiv0GLGSuhpFJe7P3SbHZ8/yjAHRQwKRoA6YZqlfjXWmVzoVSMw==}
849 | engines: {node: '>=4.2.0'}
850 | hasBin: true
851 | dev: true
852 |
853 | /universalify/2.0.0:
854 | resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==}
855 | engines: {node: '>= 10.0.0'}
856 | dev: true
857 |
858 | /upath2/3.1.12_@types+node@17.0.23:
859 | resolution: {integrity: sha512-yC3eZeCyCXFWjy7Nu4pgjLhXNYjuzuUmJiRgSSw6TJp8Emc+E4951HGPJf+bldFC5SL7oBLeNbtm1fGzXn2gxw==}
860 | peerDependencies:
861 | '@types/node': '*'
862 | dependencies:
863 | '@types/node': 17.0.23
864 | path-is-network-drive: 1.0.13
865 | path-strip-sep: 1.0.10
866 | tslib: 2.3.1
867 | dev: true
868 |
869 | /wrappy/1.0.2:
870 | resolution: {integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=}
871 | dev: true
872 |
873 | /yocto-queue/0.1.0:
874 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
875 | engines: {node: '>=10'}
876 | dev: true
877 |
--------------------------------------------------------------------------------