@wppconnect/server 2.10.1 → 2.10.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,21 @@
1
+ ## [2.10.3](https://github.com/wppconnect-team/wppconnect-server/compare/v2.10.2...v2.10.3) (2026-08-11)
2
+
3
+
4
+ ### Features
5
+
6
+ * **docker:** publish and document official image ([#2544](https://github.com/wppconnect-team/wppconnect-server/issues/2544)) ([f17f869](https://github.com/wppconnect-team/wppconnect-server/commit/f17f86992b6180053cae02f63f460e4590ef184b))
7
+
8
+ ## [2.10.2](https://github.com/wppconnect-team/wppconnect-server/compare/v2.10.1...v2.10.2) (2026-08-11)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * **ci:** release automatically from main ([d663e5f](https://github.com/wppconnect-team/wppconnect-server/commit/d663e5fd9ad199ac711d919076da93fee2ac9fb8))
14
+ * **deps:** remove critical transitive vulnerabilities ([#2532](https://github.com/wppconnect-team/wppconnect-server/issues/2532)) ([df3b301](https://github.com/wppconnect-team/wppconnect-server/commit/df3b301bc769c8e6c4fa1717742a637e9f97c9ac))
15
+ * **deps:** upgrade multer to patched v2 ([#2540](https://github.com/wppconnect-team/wppconnect-server/issues/2540)) ([0cdf1ab](https://github.com/wppconnect-team/wppconnect-server/commit/0cdf1ab146d6ffd20e1faf9994cfc14f13723238))
16
+ * **security:** consume WPPConnect 2.2.7 ([#2542](https://github.com/wppconnect-team/wppconnect-server/issues/2542)) ([79cfb80](https://github.com/wppconnect-team/wppconnect-server/commit/79cfb8057c7a3d2fcf5694ad7fedc2076c1d72b8))
17
+ * **security:** resolve current dependency advisories ([#2541](https://github.com/wppconnect-team/wppconnect-server/issues/2541)) ([fff8f68](https://github.com/wppconnect-team/wppconnect-server/commit/fff8f68ceed32ea40188e5d134fa180829baaab8))
18
+
1
19
  ## 2.10.1 (2026-07-30)
2
20
 
3
21
 
package/README.md CHANGED
@@ -6,6 +6,8 @@
6
6
 
7
7
  [![npm version](https://img.shields.io/npm/v/@wppconnect/server.svg?color=green)](https://www.npmjs.com/package/@wppconnect/server)
8
8
  [![Downloads](https://img.shields.io/npm/dm/@wppconnect/server.svg)](https://www.npmjs.com/package/@wppconnect/server)
9
+ [![Docker Pulls](https://img.shields.io/docker/pulls/wppconnect/wppconnect-server?logo=docker)](https://hub.docker.com/r/wppconnect/wppconnect-server)
10
+ [![Docker Image Version](https://img.shields.io/docker/v/wppconnect/wppconnect-server?sort=semver&logo=docker)](https://hub.docker.com/r/wppconnect/wppconnect-server/tags)
9
11
  [![Average time to resolve an issue](https://isitmaintained.com/badge/resolution/wppconnect-team/wppconnect-server.svg)](https://isitmaintained.com/project/wppconnect-team/wppconnect-server 'Average time to resolve an issue')
10
12
  [![Percentage of issues still open](https://isitmaintained.com/badge/open/wppconnect-team/wppconnect-server.svg)](https://isitmaintained.com/badge/open/wppconnect-team/wppconnect-server.svg 'Percentage of issues still open')
11
13
  [![Build Status](https://img.shields.io/github/actions/workflow/status/wppconnect-team/wppconnect-server/build.yml)](https://github.com/wppconnect-team/wppconnect-server/actions)
@@ -62,7 +64,56 @@ Detailed documentation and guides are available for your convenience:
62
64
  - SocketIO
63
65
  - S3
64
66
 
65
- ## Installation
67
+ ## Docker (recommended)
68
+
69
+ The official image is available on
70
+ [Docker Hub](https://hub.docker.com/r/wppconnect/wppconnect-server). It includes
71
+ Node.js, Chromium, and the native dependencies required by WPPConnect.
72
+
73
+ ```sh
74
+ docker run -d \
75
+ --name wppconnect-server \
76
+ --restart unless-stopped \
77
+ -p 21465:21465 \
78
+ -e SECRET_KEY=change-me \
79
+ -v wppconnect_tokens:/usr/src/wpp-server/tokens \
80
+ -v wppconnect_user_data:/usr/src/wpp-server/userDataDir \
81
+ wppconnect/wppconnect-server:latest
82
+ ```
83
+
84
+ For Docker Compose, clone the repository and run:
85
+
86
+ ```sh
87
+ SECRET_KEY=change-me docker compose up -d
88
+ docker compose ps
89
+ curl http://localhost:21465/healthz
90
+ ```
91
+
92
+ Set `WPP_SERVER_TAG` to pin a release instead of following `latest`:
93
+
94
+ ```sh
95
+ WPP_SERVER_TAG=2.10 SECRET_KEY=change-me docker compose up -d
96
+ ```
97
+
98
+ Release tags follow the GitHub and npm version: `vX.Y.Z`, `X.Y.Z`, `X.Y`,
99
+ `X`, and `latest`. The `main`, `develop`, and immutable `sha-*` tags are also
100
+ available. See all tags on
101
+ [Docker Hub](https://hub.docker.com/r/wppconnect/wppconnect-server/tags).
102
+
103
+ The container accepts `PORT`, `HOST`, `SECRET_KEY`, `WEBHOOK_URL`,
104
+ `TOKEN_STORE_TYPE`, `CUSTOM_USER_DATA_DIR`, `MAX_LISTENERS`, and the Redis and
105
+ MongoDB variables listed in the [Configuration](#configuration) section. The
106
+ Compose setup persists tokens, Chromium session data, uploads, received images,
107
+ and logs in named volumes. Change the default secret before exposing the API.
108
+
109
+ To upgrade the Compose deployment:
110
+
111
+ ```sh
112
+ docker compose pull
113
+ docker compose up -d
114
+ ```
115
+
116
+ ## Installation from source
66
117
 
67
118
  Install the dependencies and start the server.
68
119
 
package/dist/config.js CHANGED
@@ -1,17 +1,27 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0;var _default = exports.default =
1
+ "use strict";Object.defineProperty(exports, "__esModule", { value: true });exports.default = void 0;
2
+
3
+ const env = process.env;
4
+
5
+ function envNumber(name, fallback) {
6
+ const value = env[name];
7
+ if (!value) return fallback;
8
+
9
+ const parsed = Number(value);
10
+ return Number.isFinite(parsed) ? parsed : fallback;
11
+ }var _default = exports.default =
2
12
 
3
13
  {
4
- secretKey: 'THISISMYSECURETOKEN',
5
- host: 'http://localhost',
6
- port: '21465',
14
+ secretKey: env.SECRET_KEY || 'THISISMYSECURETOKEN',
15
+ host: env.HOST || 'http://localhost',
16
+ port: env.PORT || '21465',
7
17
  deviceName: 'WppConnect',
8
18
  poweredBy: 'WPPConnect-Server',
9
19
  startAllSession: true,
10
- tokenStoreType: 'file',
11
- maxListeners: 15,
12
- customUserDataDir: './userDataDir/',
20
+ tokenStoreType: env.TOKEN_STORE_TYPE || 'file',
21
+ maxListeners: envNumber('MAX_LISTENERS', 15),
22
+ customUserDataDir: env.CUSTOM_USER_DATA_DIR || './userDataDir/',
13
23
  webhook: {
14
- url: null,
24
+ url: env.WEBHOOK_URL || null,
15
25
  autoDownload: true,
16
26
  uploadS3: false,
17
27
  readMessage: true,
@@ -89,19 +99,19 @@
89
99
  prefix: 'tagone-'
90
100
  },
91
101
  db: {
92
- mongodbDatabase: 'tokens',
93
- mongodbCollection: '',
94
- mongodbUser: '',
95
- mongodbPassword: '',
96
- mongodbHost: '',
102
+ mongodbDatabase: env.MONGODB_DATABASE || 'tokens',
103
+ mongodbCollection: env.MONGODB_COLLECTION || '',
104
+ mongodbUser: env.MONGODB_USER || '',
105
+ mongodbPassword: env.MONGODB_PASSWORD || '',
106
+ mongodbHost: env.MONGODB_HOST || '',
97
107
  mongoIsRemote: true,
98
- mongoURLRemote: '',
99
- mongodbPort: 27017,
100
- redisHost: 'localhost',
101
- redisPort: 6379,
102
- redisPassword: '',
103
- redisDb: 0,
104
- redisPrefix: 'docker'
108
+ mongoURLRemote: env.MONGO_URL_REMOTE || '',
109
+ mongodbPort: envNumber('MONGODB_PORT', 27017),
110
+ redisHost: env.REDIS_HOST || 'localhost',
111
+ redisPort: envNumber('REDIS_PORT', 6379),
112
+ redisPassword: env.REDIS_PASSWORD || '',
113
+ redisDb: envNumber('REDIS_DB', 0),
114
+ redisPrefix: env.REDIS_PREFIX || 'docker'
105
115
  },
106
116
  aws_s3: {
107
117
  region: 'sa-east-1',
@@ -112,4 +122,4 @@
112
122
  forcePathStyle: null
113
123
  }
114
124
  };
115
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJzZWNyZXRLZXkiLCJob3N0IiwicG9ydCIsImRldmljZU5hbWUiLCJwb3dlcmVkQnkiLCJzdGFydEFsbFNlc3Npb24iLCJ0b2tlblN0b3JlVHlwZSIsIm1heExpc3RlbmVycyIsImN1c3RvbVVzZXJEYXRhRGlyIiwid2ViaG9vayIsInVybCIsImF1dG9Eb3dubG9hZCIsInVwbG9hZFMzIiwicmVhZE1lc3NhZ2UiLCJhbGxVbnJlYWRPblN0YXJ0IiwibGlzdGVuQWNrcyIsIm9uUHJlc2VuY2VDaGFuZ2VkIiwib25QYXJ0aWNpcGFudHNDaGFuZ2VkIiwib25SZWFjdGlvbk1lc3NhZ2UiLCJvblBvbGxSZXNwb25zZSIsIm9uUmV2b2tlZE1lc3NhZ2UiLCJvbkxhYmVsVXBkYXRlZCIsIm9uU2VsZk1lc3NhZ2UiLCJpZ25vcmUiLCJ3ZWJzb2NrZXQiLCJjaGF0d29vdCIsInNlbmRRckNvZGUiLCJzZW5kU3RhdHVzIiwiYXJjaGl2ZSIsImVuYWJsZSIsIndhaXRUaW1lIiwiZGF5c1RvQXJjaGl2ZSIsImxvZyIsImxldmVsIiwibG9nZ2VyIiwiY3JlYXRlT3B0aW9ucyIsImJyb3dzZXJBcmdzIiwibGlua1ByZXZpZXdBcGlTZXJ2ZXJzIiwibWFwcGVyIiwicHJlZml4IiwiZGIiLCJtb25nb2RiRGF0YWJhc2UiLCJtb25nb2RiQ29sbGVjdGlvbiIsIm1vbmdvZGJVc2VyIiwibW9uZ29kYlBhc3N3b3JkIiwibW9uZ29kYkhvc3QiLCJtb25nb0lzUmVtb3RlIiwibW9uZ29VUkxSZW1vdGUiLCJtb25nb2RiUG9ydCIsInJlZGlzSG9zdCIsInJlZGlzUG9ydCIsInJlZGlzUGFzc3dvcmQiLCJyZWRpc0RiIiwicmVkaXNQcmVmaXgiLCJhd3NfczMiLCJyZWdpb24iLCJhY2Nlc3Nfa2V5X2lkIiwic2VjcmV0X2tleSIsImRlZmF1bHRCdWNrZXROYW1lIiwiZW5kcG9pbnQiLCJmb3JjZVBhdGhTdHlsZSJdLCJzb3VyY2VzIjpbIi4uL3NyYy9jb25maWcudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VydmVyT3B0aW9ucyB9IGZyb20gJy4vdHlwZXMvU2VydmVyT3B0aW9ucyc7XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgc2VjcmV0S2V5OiAnVEhJU0lTTVlTRUNVUkVUT0tFTicsXG4gIGhvc3Q6ICdodHRwOi8vbG9jYWxob3N0JyxcbiAgcG9ydDogJzIxNDY1JyxcbiAgZGV2aWNlTmFtZTogJ1dwcENvbm5lY3QnLFxuICBwb3dlcmVkQnk6ICdXUFBDb25uZWN0LVNlcnZlcicsXG4gIHN0YXJ0QWxsU2Vzc2lvbjogdHJ1ZSxcbiAgdG9rZW5TdG9yZVR5cGU6ICdmaWxlJyxcbiAgbWF4TGlzdGVuZXJzOiAxNSxcbiAgY3VzdG9tVXNlckRhdGFEaXI6ICcuL3VzZXJEYXRhRGlyLycsXG4gIHdlYmhvb2s6IHtcbiAgICB1cmw6IG51bGwsXG4gICAgYXV0b0Rvd25sb2FkOiB0cnVlLFxuICAgIHVwbG9hZFMzOiBmYWxzZSxcbiAgICByZWFkTWVzc2FnZTogdHJ1ZSxcbiAgICBhbGxVbnJlYWRPblN0YXJ0OiBmYWxzZSxcbiAgICBsaXN0ZW5BY2tzOiB0cnVlLFxuICAgIG9uUHJlc2VuY2VDaGFuZ2VkOiB0cnVlLFxuICAgIG9uUGFydGljaXBhbnRzQ2hhbmdlZDogdHJ1ZSxcbiAgICBvblJlYWN0aW9uTWVzc2FnZTogdHJ1ZSxcbiAgICBvblBvbGxSZXNwb25zZTogdHJ1ZSxcbiAgICBvblJldm9rZWRNZXNzYWdlOiB0cnVlLFxuICAgIG9uTGFiZWxVcGRhdGVkOiB0cnVlLFxuICAgIG9uU2VsZk1lc3NhZ2U6IGZhbHNlLFxuICAgIGlnbm9yZTogWydzdGF0dXNAYnJvYWRjYXN0J10sXG4gIH0sXG4gIHdlYnNvY2tldDoge1xuICAgIGF1dG9Eb3dubG9hZDogZmFsc2UsXG4gICAgdXBsb2FkUzM6IGZhbHNlLFxuICB9LFxuICBjaGF0d29vdDoge1xuICAgIHNlbmRRckNvZGU6IHRydWUsXG4gICAgc2VuZFN0YXR1czogdHJ1ZSxcbiAgfSxcbiAgYXJjaGl2ZToge1xuICAgIGVuYWJsZTogZmFsc2UsXG4gICAgd2FpdFRpbWU6IDEwLFxuICAgIGRheXNUb0FyY2hpdmU6IDQ1LFxuICB9LFxuICBsb2c6IHtcbiAgICBsZXZlbDogJ3NpbGx5JywgLy8gQmVmb3JlIG9wZW4gYSBpc3N1ZSwgY2hhbmdlIGxldmVsIHRvIHNpbGx5IGFuZCByZXRyeSBhIGFjdGlvblxuICAgIGxvZ2dlcjogWydjb25zb2xlJywgJ2ZpbGUnXSxcbiAgfSxcbiAgY3JlYXRlT3B0aW9uczoge1xuICAgIGJyb3dzZXJBcmdzOiBbXG4gICAgICAnLS1kaXNhYmxlLXdlYi1zZWN1cml0eScsXG4gICAgICAnLS1uby1zYW5kYm94JyxcbiAgICAgICctLWRpc2FibGUtd2ViLXNlY3VyaXR5JyxcbiAgICAgICctLWFnZ3Jlc3NpdmUtY2FjaGUtZGlzY2FyZCcsXG4gICAgICAnLS1kaXNhYmxlLWNhY2hlJyxcbiAgICAgICctLWRpc2FibGUtYXBwbGljYXRpb24tY2FjaGUnLFxuICAgICAgJy0tZGlzYWJsZS1vZmZsaW5lLWxvYWQtc3RhbGUtY2FjaGUnLFxuICAgICAgJy0tZGlzay1jYWNoZS1zaXplPTAnLFxuICAgICAgJy0tZGlzYWJsZS1iYWNrZ3JvdW5kLW5ldHdvcmtpbmcnLFxuICAgICAgJy0tZGlzYWJsZS1kZWZhdWx0LWFwcHMnLFxuICAgICAgJy0tZGlzYWJsZS1leHRlbnNpb25zJyxcbiAgICAgICctLWRpc2FibGUtc3luYycsXG4gICAgICAnLS1kaXNhYmxlLWRldi1zaG0tdXNhZ2UnLFxuICAgICAgJy0tZGlzYWJsZS1ncHUnLFxuICAgICAgJy0tZGlzYWJsZS10cmFuc2xhdGUnLFxuICAgICAgJy0taGlkZS1zY3JvbGxiYXJzJyxcbiAgICAgICctLW1ldHJpY3MtcmVjb3JkaW5nLW9ubHknLFxuICAgICAgJy0tbXV0ZS1hdWRpbycsXG4gICAgICAnLS1uby1maXJzdC1ydW4nLFxuICAgICAgJy0tc2FmZWJyb3dzaW5nLWRpc2FibGUtYXV0by11cGRhdGUnLFxuICAgICAgJy0taWdub3JlLWNlcnRpZmljYXRlLWVycm9ycycsXG4gICAgICAnLS1pZ25vcmUtc3NsLWVycm9ycycsXG4gICAgICAnLS1pZ25vcmUtY2VydGlmaWNhdGUtZXJyb3JzLXNwa2ktbGlzdCcsXG4gICAgXSxcbiAgICAvKipcbiAgICAgKiBFeGFtcGxlIG9mIGNvbmZpZ3VyaW5nIHRoZSBsaW5rUHJldmlldyBnZW5lcmF0b3JcbiAgICAgKiBJZiB5b3Ugc2V0IHRoaXMgdG8gJ251bGwnLCBpdCB3aWxsIHVzZSBnbG9iYWwgc2VydmVyczsgaG93ZXZlciwgeW91IGhhdmUgdGhlIG9wdGlvbiB0byBkZWZpbmUgeW91ciBvd24gc2VydmVyXG4gICAgICogQ2xvbmUgdGhlIHJlcG9zaXRvcnkgaHR0cHM6Ly9naXRodWIuY29tL3dwcGNvbm5lY3QtdGVhbS93YS1qcy1hcGktc2VydmVyIGFuZCBob3N0IGl0IG9uIHlvdXIgc2VydmVyIHdpdGggc3NsXG4gICAgICpcbiAgICAgKiBDb25maWd1cmUgdGhlIGF0dHJpYnV0ZSBhcyBmb2xsb3dzOlxuICAgICAqIGxpbmtQcmV2aWV3QXBpU2VydmVyczogWyAnaHR0cHM6Ly93d3cueW91cnNlcnZlci5jb20vd2EtanMtYXBpLXNlcnZlcicgXVxuICAgICAqL1xuICAgIGxpbmtQcmV2aWV3QXBpU2VydmVyczogbnVsbCxcblxuICAgIC8qKlxuICAgICAqIFNldCBzcGVjaWZpYyB3aGF0c2FwcCB2ZXJzaW9uXG4gICAgICovXG4gICAgLy8gd2hhdHNhcHBWZXJzaW9uOiAnMi54eHh4eCcsXG4gIH0sXG4gIG1hcHBlcjoge1xuICAgIGVuYWJsZTogZmFsc2UsXG4gICAgcHJlZml4OiAndGFnb25lLScsXG4gIH0sXG4gIGRiOiB7XG4gICAgbW9uZ29kYkRhdGFiYXNlOiAndG9rZW5zJyxcbiAgICBtb25nb2RiQ29sbGVjdGlvbjogJycsXG4gICAgbW9uZ29kYlVzZXI6ICcnLFxuICAgIG1vbmdvZGJQYXNzd29yZDogJycsXG4gICAgbW9uZ29kYkhvc3Q6ICcnLFxuICAgIG1vbmdvSXNSZW1vdGU6IHRydWUsXG4gICAgbW9uZ29VUkxSZW1vdGU6ICcnLFxuICAgIG1vbmdvZGJQb3J0OiAyNzAxNyxcbiAgICByZWRpc0hvc3Q6ICdsb2NhbGhvc3QnLFxuICAgIHJlZGlzUG9ydDogNjM3OSxcbiAgICByZWRpc1Bhc3N3b3JkOiAnJyxcbiAgICByZWRpc0RiOiAwLFxuICAgIHJlZGlzUHJlZml4OiAnZG9ja2VyJyxcbiAgfSxcbiAgYXdzX3MzOiB7XG4gICAgcmVnaW9uOiAnc2EtZWFzdC0xJyBhcyBhbnksXG4gICAgYWNjZXNzX2tleV9pZDogbnVsbCxcbiAgICBzZWNyZXRfa2V5OiBudWxsLFxuICAgIGRlZmF1bHRCdWNrZXROYW1lOiBudWxsLFxuICAgIGVuZHBvaW50OiBudWxsLFxuICAgIGZvcmNlUGF0aFN0eWxlOiBudWxsLFxuICB9LFxufSBhcyB1bmtub3duIGFzIFNlcnZlck9wdGlvbnM7XG4iXSwibWFwcGluZ3MiOiI7O0FBRWU7RUFDYkEsU0FBUyxFQUFFLHFCQUFxQjtFQUNoQ0MsSUFBSSxFQUFFLGtCQUFrQjtFQUN4QkMsSUFBSSxFQUFFLE9BQU87RUFDYkMsVUFBVSxFQUFFLFlBQVk7RUFDeEJDLFNBQVMsRUFBRSxtQkFBbUI7RUFDOUJDLGVBQWUsRUFBRSxJQUFJO0VBQ3JCQyxjQUFjLEVBQUUsTUFBTTtFQUN0QkMsWUFBWSxFQUFFLEVBQUU7RUFDaEJDLGlCQUFpQixFQUFFLGdCQUFnQjtFQUNuQ0MsT0FBTyxFQUFFO0lBQ1BDLEdBQUcsRUFBRSxJQUFJO0lBQ1RDLFlBQVksRUFBRSxJQUFJO0lBQ2xCQyxRQUFRLEVBQUUsS0FBSztJQUNmQyxXQUFXLEVBQUUsSUFBSTtJQUNqQkMsZ0JBQWdCLEVBQUUsS0FBSztJQUN2QkMsVUFBVSxFQUFFLElBQUk7SUFDaEJDLGlCQUFpQixFQUFFLElBQUk7SUFDdkJDLHFCQUFxQixFQUFFLElBQUk7SUFDM0JDLGlCQUFpQixFQUFFLElBQUk7SUFDdkJDLGNBQWMsRUFBRSxJQUFJO0lBQ3BCQyxnQkFBZ0IsRUFBRSxJQUFJO0lBQ3RCQyxjQUFjLEVBQUUsSUFBSTtJQUNwQkMsYUFBYSxFQUFFLEtBQUs7SUFDcEJDLE1BQU0sRUFBRSxDQUFDLGtCQUFrQjtFQUM3QixDQUFDO0VBQ0RDLFNBQVMsRUFBRTtJQUNUYixZQUFZLEVBQUUsS0FBSztJQUNuQkMsUUFBUSxFQUFFO0VBQ1osQ0FBQztFQUNEYSxRQUFRLEVBQUU7SUFDUkMsVUFBVSxFQUFFLElBQUk7SUFDaEJDLFVBQVUsRUFBRTtFQUNkLENBQUM7RUFDREMsT0FBTyxFQUFFO0lBQ1BDLE1BQU0sRUFBRSxLQUFLO0lBQ2JDLFFBQVEsRUFBRSxFQUFFO0lBQ1pDLGFBQWEsRUFBRTtFQUNqQixDQUFDO0VBQ0RDLEdBQUcsRUFBRTtJQUNIQyxLQUFLLEVBQUUsT0FBTyxFQUFFO0lBQ2hCQyxNQUFNLEVBQUUsQ0FBQyxTQUFTLEVBQUUsTUFBTTtFQUM1QixDQUFDO0VBQ0RDLGFBQWEsRUFBRTtJQUNiQyxXQUFXLEVBQUU7SUFDWCx3QkFBd0I7SUFDeEIsY0FBYztJQUNkLHdCQUF3QjtJQUN4Qiw0QkFBNEI7SUFDNUIsaUJBQWlCO0lBQ2pCLDZCQUE2QjtJQUM3QixvQ0FBb0M7SUFDcEMscUJBQXFCO0lBQ3JCLGlDQUFpQztJQUNqQyx3QkFBd0I7SUFDeEIsc0JBQXNCO0lBQ3RCLGdCQUFnQjtJQUNoQix5QkFBeUI7SUFDekIsZUFBZTtJQUNmLHFCQUFxQjtJQUNyQixtQkFBbUI7SUFDbkIsMEJBQTBCO0lBQzFCLGNBQWM7SUFDZCxnQkFBZ0I7SUFDaEIsb0NBQW9DO0lBQ3BDLDZCQUE2QjtJQUM3QixxQkFBcUI7SUFDckIsdUNBQXVDLENBQ3hDOztJQUNEO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7SUFDSUMscUJBQXFCLEVBQUU7O0lBRXZCO0FBQ0o7QUFDQTtJQUNJO0VBQ0YsQ0FBQztFQUNEQyxNQUFNLEVBQUU7SUFDTlQsTUFBTSxFQUFFLEtBQUs7SUFDYlUsTUFBTSxFQUFFO0VBQ1YsQ0FBQztFQUNEQyxFQUFFLEVBQUU7SUFDRkMsZUFBZSxFQUFFLFFBQVE7SUFDekJDLGlCQUFpQixFQUFFLEVBQUU7SUFDckJDLFdBQVcsRUFBRSxFQUFFO0lBQ2ZDLGVBQWUsRUFBRSxFQUFFO0lBQ25CQyxXQUFXLEVBQUUsRUFBRTtJQUNmQyxhQUFhLEVBQUUsSUFBSTtJQUNuQkMsY0FBYyxFQUFFLEVBQUU7SUFDbEJDLFdBQVcsRUFBRSxLQUFLO0lBQ2xCQyxTQUFTLEVBQUUsV0FBVztJQUN0QkMsU0FBUyxFQUFFLElBQUk7SUFDZkMsYUFBYSxFQUFFLEVBQUU7SUFDakJDLE9BQU8sRUFBRSxDQUFDO0lBQ1ZDLFdBQVcsRUFBRTtFQUNmLENBQUM7RUFDREMsTUFBTSxFQUFFO0lBQ05DLE1BQU0sRUFBRSxXQUFrQjtJQUMxQkMsYUFBYSxFQUFFLElBQUk7SUFDbkJDLFVBQVUsRUFBRSxJQUFJO0lBQ2hCQyxpQkFBaUIsRUFBRSxJQUFJO0lBQ3ZCQyxRQUFRLEVBQUUsSUFBSTtJQUNkQyxjQUFjLEVBQUU7RUFDbEI7QUFDRixDQUFDIiwiaWdub3JlTGlzdCI6W119
125
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJlbnYiLCJwcm9jZXNzIiwiZW52TnVtYmVyIiwibmFtZSIsImZhbGxiYWNrIiwidmFsdWUiLCJwYXJzZWQiLCJOdW1iZXIiLCJpc0Zpbml0ZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsImRlZmF1bHQiLCJzZWNyZXRLZXkiLCJTRUNSRVRfS0VZIiwiaG9zdCIsIkhPU1QiLCJwb3J0IiwiUE9SVCIsImRldmljZU5hbWUiLCJwb3dlcmVkQnkiLCJzdGFydEFsbFNlc3Npb24iLCJ0b2tlblN0b3JlVHlwZSIsIlRPS0VOX1NUT1JFX1RZUEUiLCJtYXhMaXN0ZW5lcnMiLCJjdXN0b21Vc2VyRGF0YURpciIsIkNVU1RPTV9VU0VSX0RBVEFfRElSIiwid2ViaG9vayIsInVybCIsIldFQkhPT0tfVVJMIiwiYXV0b0Rvd25sb2FkIiwidXBsb2FkUzMiLCJyZWFkTWVzc2FnZSIsImFsbFVucmVhZE9uU3RhcnQiLCJsaXN0ZW5BY2tzIiwib25QcmVzZW5jZUNoYW5nZWQiLCJvblBhcnRpY2lwYW50c0NoYW5nZWQiLCJvblJlYWN0aW9uTWVzc2FnZSIsIm9uUG9sbFJlc3BvbnNlIiwib25SZXZva2VkTWVzc2FnZSIsIm9uTGFiZWxVcGRhdGVkIiwib25TZWxmTWVzc2FnZSIsImlnbm9yZSIsIndlYnNvY2tldCIsImNoYXR3b290Iiwic2VuZFFyQ29kZSIsInNlbmRTdGF0dXMiLCJhcmNoaXZlIiwiZW5hYmxlIiwid2FpdFRpbWUiLCJkYXlzVG9BcmNoaXZlIiwibG9nIiwibGV2ZWwiLCJsb2dnZXIiLCJjcmVhdGVPcHRpb25zIiwiYnJvd3NlckFyZ3MiLCJsaW5rUHJldmlld0FwaVNlcnZlcnMiLCJtYXBwZXIiLCJwcmVmaXgiLCJkYiIsIm1vbmdvZGJEYXRhYmFzZSIsIk1PTkdPREJfREFUQUJBU0UiLCJtb25nb2RiQ29sbGVjdGlvbiIsIk1PTkdPREJfQ09MTEVDVElPTiIsIm1vbmdvZGJVc2VyIiwiTU9OR09EQl9VU0VSIiwibW9uZ29kYlBhc3N3b3JkIiwiTU9OR09EQl9QQVNTV09SRCIsIm1vbmdvZGJIb3N0IiwiTU9OR09EQl9IT1NUIiwibW9uZ29Jc1JlbW90ZSIsIm1vbmdvVVJMUmVtb3RlIiwiTU9OR09fVVJMX1JFTU9URSIsIm1vbmdvZGJQb3J0IiwicmVkaXNIb3N0IiwiUkVESVNfSE9TVCIsInJlZGlzUG9ydCIsInJlZGlzUGFzc3dvcmQiLCJSRURJU19QQVNTV09SRCIsInJlZGlzRGIiLCJyZWRpc1ByZWZpeCIsIlJFRElTX1BSRUZJWCIsImF3c19zMyIsInJlZ2lvbiIsImFjY2Vzc19rZXlfaWQiLCJzZWNyZXRfa2V5IiwiZGVmYXVsdEJ1Y2tldE5hbWUiLCJlbmRwb2ludCIsImZvcmNlUGF0aFN0eWxlIl0sInNvdXJjZXMiOlsiLi4vc3JjL2NvbmZpZy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2ZXJPcHRpb25zIH0gZnJvbSAnLi90eXBlcy9TZXJ2ZXJPcHRpb25zJztcblxuY29uc3QgZW52ID0gcHJvY2Vzcy5lbnY7XG5cbmZ1bmN0aW9uIGVudk51bWJlcihuYW1lOiBzdHJpbmcsIGZhbGxiYWNrOiBudW1iZXIpOiBudW1iZXIge1xuICBjb25zdCB2YWx1ZSA9IGVudltuYW1lXTtcbiAgaWYgKCF2YWx1ZSkgcmV0dXJuIGZhbGxiYWNrO1xuXG4gIGNvbnN0IHBhcnNlZCA9IE51bWJlcih2YWx1ZSk7XG4gIHJldHVybiBOdW1iZXIuaXNGaW5pdGUocGFyc2VkKSA/IHBhcnNlZCA6IGZhbGxiYWNrO1xufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIHNlY3JldEtleTogZW52LlNFQ1JFVF9LRVkgfHwgJ1RISVNJU01ZU0VDVVJFVE9LRU4nLFxuICBob3N0OiBlbnYuSE9TVCB8fCAnaHR0cDovL2xvY2FsaG9zdCcsXG4gIHBvcnQ6IGVudi5QT1JUIHx8ICcyMTQ2NScsXG4gIGRldmljZU5hbWU6ICdXcHBDb25uZWN0JyxcbiAgcG93ZXJlZEJ5OiAnV1BQQ29ubmVjdC1TZXJ2ZXInLFxuICBzdGFydEFsbFNlc3Npb246IHRydWUsXG4gIHRva2VuU3RvcmVUeXBlOiBlbnYuVE9LRU5fU1RPUkVfVFlQRSB8fCAnZmlsZScsXG4gIG1heExpc3RlbmVyczogZW52TnVtYmVyKCdNQVhfTElTVEVORVJTJywgMTUpLFxuICBjdXN0b21Vc2VyRGF0YURpcjogZW52LkNVU1RPTV9VU0VSX0RBVEFfRElSIHx8ICcuL3VzZXJEYXRhRGlyLycsXG4gIHdlYmhvb2s6IHtcbiAgICB1cmw6IGVudi5XRUJIT09LX1VSTCB8fCBudWxsLFxuICAgIGF1dG9Eb3dubG9hZDogdHJ1ZSxcbiAgICB1cGxvYWRTMzogZmFsc2UsXG4gICAgcmVhZE1lc3NhZ2U6IHRydWUsXG4gICAgYWxsVW5yZWFkT25TdGFydDogZmFsc2UsXG4gICAgbGlzdGVuQWNrczogdHJ1ZSxcbiAgICBvblByZXNlbmNlQ2hhbmdlZDogdHJ1ZSxcbiAgICBvblBhcnRpY2lwYW50c0NoYW5nZWQ6IHRydWUsXG4gICAgb25SZWFjdGlvbk1lc3NhZ2U6IHRydWUsXG4gICAgb25Qb2xsUmVzcG9uc2U6IHRydWUsXG4gICAgb25SZXZva2VkTWVzc2FnZTogdHJ1ZSxcbiAgICBvbkxhYmVsVXBkYXRlZDogdHJ1ZSxcbiAgICBvblNlbGZNZXNzYWdlOiBmYWxzZSxcbiAgICBpZ25vcmU6IFsnc3RhdHVzQGJyb2FkY2FzdCddLFxuICB9LFxuICB3ZWJzb2NrZXQ6IHtcbiAgICBhdXRvRG93bmxvYWQ6IGZhbHNlLFxuICAgIHVwbG9hZFMzOiBmYWxzZSxcbiAgfSxcbiAgY2hhdHdvb3Q6IHtcbiAgICBzZW5kUXJDb2RlOiB0cnVlLFxuICAgIHNlbmRTdGF0dXM6IHRydWUsXG4gIH0sXG4gIGFyY2hpdmU6IHtcbiAgICBlbmFibGU6IGZhbHNlLFxuICAgIHdhaXRUaW1lOiAxMCxcbiAgICBkYXlzVG9BcmNoaXZlOiA0NSxcbiAgfSxcbiAgbG9nOiB7XG4gICAgbGV2ZWw6ICdzaWxseScsIC8vIEJlZm9yZSBvcGVuIGEgaXNzdWUsIGNoYW5nZSBsZXZlbCB0byBzaWxseSBhbmQgcmV0cnkgYSBhY3Rpb25cbiAgICBsb2dnZXI6IFsnY29uc29sZScsICdmaWxlJ10sXG4gIH0sXG4gIGNyZWF0ZU9wdGlvbnM6IHtcbiAgICBicm93c2VyQXJnczogW1xuICAgICAgJy0tZGlzYWJsZS13ZWItc2VjdXJpdHknLFxuICAgICAgJy0tbm8tc2FuZGJveCcsXG4gICAgICAnLS1kaXNhYmxlLXdlYi1zZWN1cml0eScsXG4gICAgICAnLS1hZ2dyZXNzaXZlLWNhY2hlLWRpc2NhcmQnLFxuICAgICAgJy0tZGlzYWJsZS1jYWNoZScsXG4gICAgICAnLS1kaXNhYmxlLWFwcGxpY2F0aW9uLWNhY2hlJyxcbiAgICAgICctLWRpc2FibGUtb2ZmbGluZS1sb2FkLXN0YWxlLWNhY2hlJyxcbiAgICAgICctLWRpc2stY2FjaGUtc2l6ZT0wJyxcbiAgICAgICctLWRpc2FibGUtYmFja2dyb3VuZC1uZXR3b3JraW5nJyxcbiAgICAgICctLWRpc2FibGUtZGVmYXVsdC1hcHBzJyxcbiAgICAgICctLWRpc2FibGUtZXh0ZW5zaW9ucycsXG4gICAgICAnLS1kaXNhYmxlLXN5bmMnLFxuICAgICAgJy0tZGlzYWJsZS1kZXYtc2htLXVzYWdlJyxcbiAgICAgICctLWRpc2FibGUtZ3B1JyxcbiAgICAgICctLWRpc2FibGUtdHJhbnNsYXRlJyxcbiAgICAgICctLWhpZGUtc2Nyb2xsYmFycycsXG4gICAgICAnLS1tZXRyaWNzLXJlY29yZGluZy1vbmx5JyxcbiAgICAgICctLW11dGUtYXVkaW8nLFxuICAgICAgJy0tbm8tZmlyc3QtcnVuJyxcbiAgICAgICctLXNhZmVicm93c2luZy1kaXNhYmxlLWF1dG8tdXBkYXRlJyxcbiAgICAgICctLWlnbm9yZS1jZXJ0aWZpY2F0ZS1lcnJvcnMnLFxuICAgICAgJy0taWdub3JlLXNzbC1lcnJvcnMnLFxuICAgICAgJy0taWdub3JlLWNlcnRpZmljYXRlLWVycm9ycy1zcGtpLWxpc3QnLFxuICAgIF0sXG4gICAgLyoqXG4gICAgICogRXhhbXBsZSBvZiBjb25maWd1cmluZyB0aGUgbGlua1ByZXZpZXcgZ2VuZXJhdG9yXG4gICAgICogSWYgeW91IHNldCB0aGlzIHRvICdudWxsJywgaXQgd2lsbCB1c2UgZ2xvYmFsIHNlcnZlcnM7IGhvd2V2ZXIsIHlvdSBoYXZlIHRoZSBvcHRpb24gdG8gZGVmaW5lIHlvdXIgb3duIHNlcnZlclxuICAgICAqIENsb25lIHRoZSByZXBvc2l0b3J5IGh0dHBzOi8vZ2l0aHViLmNvbS93cHBjb25uZWN0LXRlYW0vd2EtanMtYXBpLXNlcnZlciBhbmQgaG9zdCBpdCBvbiB5b3VyIHNlcnZlciB3aXRoIHNzbFxuICAgICAqXG4gICAgICogQ29uZmlndXJlIHRoZSBhdHRyaWJ1dGUgYXMgZm9sbG93czpcbiAgICAgKiBsaW5rUHJldmlld0FwaVNlcnZlcnM6IFsgJ2h0dHBzOi8vd3d3LnlvdXJzZXJ2ZXIuY29tL3dhLWpzLWFwaS1zZXJ2ZXInIF1cbiAgICAgKi9cbiAgICBsaW5rUHJldmlld0FwaVNlcnZlcnM6IG51bGwsXG5cbiAgICAvKipcbiAgICAgKiBTZXQgc3BlY2lmaWMgd2hhdHNhcHAgdmVyc2lvblxuICAgICAqL1xuICAgIC8vIHdoYXRzYXBwVmVyc2lvbjogJzIueHh4eHgnLFxuICB9LFxuICBtYXBwZXI6IHtcbiAgICBlbmFibGU6IGZhbHNlLFxuICAgIHByZWZpeDogJ3RhZ29uZS0nLFxuICB9LFxuICBkYjoge1xuICAgIG1vbmdvZGJEYXRhYmFzZTogZW52Lk1PTkdPREJfREFUQUJBU0UgfHwgJ3Rva2VucycsXG4gICAgbW9uZ29kYkNvbGxlY3Rpb246IGVudi5NT05HT0RCX0NPTExFQ1RJT04gfHwgJycsXG4gICAgbW9uZ29kYlVzZXI6IGVudi5NT05HT0RCX1VTRVIgfHwgJycsXG4gICAgbW9uZ29kYlBhc3N3b3JkOiBlbnYuTU9OR09EQl9QQVNTV09SRCB8fCAnJyxcbiAgICBtb25nb2RiSG9zdDogZW52Lk1PTkdPREJfSE9TVCB8fCAnJyxcbiAgICBtb25nb0lzUmVtb3RlOiB0cnVlLFxuICAgIG1vbmdvVVJMUmVtb3RlOiBlbnYuTU9OR09fVVJMX1JFTU9URSB8fCAnJyxcbiAgICBtb25nb2RiUG9ydDogZW52TnVtYmVyKCdNT05HT0RCX1BPUlQnLCAyNzAxNyksXG4gICAgcmVkaXNIb3N0OiBlbnYuUkVESVNfSE9TVCB8fCAnbG9jYWxob3N0JyxcbiAgICByZWRpc1BvcnQ6IGVudk51bWJlcignUkVESVNfUE9SVCcsIDYzNzkpLFxuICAgIHJlZGlzUGFzc3dvcmQ6IGVudi5SRURJU19QQVNTV09SRCB8fCAnJyxcbiAgICByZWRpc0RiOiBlbnZOdW1iZXIoJ1JFRElTX0RCJywgMCksXG4gICAgcmVkaXNQcmVmaXg6IGVudi5SRURJU19QUkVGSVggfHwgJ2RvY2tlcicsXG4gIH0sXG4gIGF3c19zMzoge1xuICAgIHJlZ2lvbjogJ3NhLWVhc3QtMScgYXMgYW55LFxuICAgIGFjY2Vzc19rZXlfaWQ6IG51bGwsXG4gICAgc2VjcmV0X2tleTogbnVsbCxcbiAgICBkZWZhdWx0QnVja2V0TmFtZTogbnVsbCxcbiAgICBlbmRwb2ludDogbnVsbCxcbiAgICBmb3JjZVBhdGhTdHlsZTogbnVsbCxcbiAgfSxcbn0gYXMgdW5rbm93biBhcyBTZXJ2ZXJPcHRpb25zO1xuIl0sIm1hcHBpbmdzIjoiOztBQUVBLE1BQU1BLEdBQUcsR0FBR0MsT0FBTyxDQUFDRCxHQUFHOztBQUV2QixTQUFTRSxTQUFTQSxDQUFDQyxJQUFZLEVBQUVDLFFBQWdCLEVBQVU7RUFDekQsTUFBTUMsS0FBSyxHQUFHTCxHQUFHLENBQUNHLElBQUksQ0FBQztFQUN2QixJQUFJLENBQUNFLEtBQUssRUFBRSxPQUFPRCxRQUFROztFQUUzQixNQUFNRSxNQUFNLEdBQUdDLE1BQU0sQ0FBQ0YsS0FBSyxDQUFDO0VBQzVCLE9BQU9FLE1BQU0sQ0FBQ0MsUUFBUSxDQUFDRixNQUFNLENBQUMsR0FBR0EsTUFBTSxHQUFHRixRQUFRO0FBQ3BELENBQUMsSUFBQUssUUFBQSxHQUFBQyxPQUFBLENBQUFDLE9BQUE7O0FBRWM7RUFDYkMsU0FBUyxFQUFFWixHQUFHLENBQUNhLFVBQVUsSUFBSSxxQkFBcUI7RUFD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
@@ -1,16 +1,33 @@
1
- version: "3"
2
-
3
1
  services:
4
2
  wppconnect:
5
3
  container_name: wpp-server
4
+ image: wppconnect/wppconnect-server:${WPP_SERVER_TAG:-latest}
6
5
  restart: unless-stopped
7
- build:
8
- context: .
6
+ environment:
7
+ PORT: "21465"
8
+ HOST: "http://localhost"
9
+ SECRET_KEY: "${SECRET_KEY:-THISISMYSECURETOKEN}"
10
+ WEBHOOK_URL: "${WEBHOOK_URL:-}"
11
+ TOKEN_STORE_TYPE: "${TOKEN_STORE_TYPE:-file}"
12
+ CUSTOM_USER_DATA_DIR: "/usr/src/wpp-server/userDataDir/"
9
13
  volumes:
10
- - ./config.ts:/usr/src/wpp-server/config.ts
11
- - ./wppconnect_tokens:/usr/src/wpp-server/tokens
14
+ - wppconnect_tokens:/usr/src/wpp-server/tokens
15
+ - wppconnect_user_data:/usr/src/wpp-server/userDataDir
16
+ - wppconnect_uploads:/usr/src/wpp-server/uploads
17
+ - wppconnect_images:/usr/src/wpp-server/WhatsAppImages
18
+ - wppconnect_logs:/usr/src/wpp-server/log
12
19
  ports:
13
20
  - "21465:21465"
21
+ healthcheck:
22
+ test: ["CMD-SHELL", "wget -q --spider http://127.0.0.1:$${PORT:-21465}/healthz || exit 1"]
23
+ interval: 30s
24
+ timeout: 10s
25
+ retries: 5
26
+ start_period: 30s
14
27
 
15
28
  volumes:
16
- wppconnect_tokens: {}
29
+ wppconnect_tokens: {}
30
+ wppconnect_user_data: {}
31
+ wppconnect_uploads: {}
32
+ wppconnect_images: {}
33
+ wppconnect_logs: {}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wppconnect/server",
3
- "version": "2.10.1",
3
+ "version": "2.10.3",
4
4
  "description": "Projeto feito para autenticar a automomacao do WhatsappWeb com multi-clientes de forma dinamica. Backend feito em Nodejs(express, socketio), FrontEnd (ReactJS)",
5
5
  "main": "dist/index.js",
6
6
  "author": "kingaspx",
@@ -37,7 +37,7 @@
37
37
  "packageManager": "yarn@4.14.1",
38
38
  "dependencies": {
39
39
  "@aws-sdk/client-s3": "^3.1019.0",
40
- "@wppconnect-team/wppconnect": "^2.2.6",
40
+ "@wppconnect-team/wppconnect": "^2.2.7",
41
41
  "archiver": "^7.0.1",
42
42
  "axios": "^1.14.0",
43
43
  "bcrypt": "^6.0.0",
@@ -51,9 +51,9 @@
51
51
  "json-mapper-json": "^1.3.3",
52
52
  "merge-deep": "^3.0.3",
53
53
  "moment": "^2.30.1",
54
- "multer": "^1.4.5-lts.2",
54
+ "multer": "^2.2.0",
55
55
  "qrcode": "^1.5.4",
56
- "sharp": "^0.34.5",
56
+ "sharp": "^0.35.0",
57
57
  "socket.io": "^4.8.3",
58
58
  "swagger-autogen": "^2.23.7",
59
59
  "swagger-ui-express": "^5.0.1",
@@ -80,7 +80,7 @@
80
80
  "@types/jest": "^29.5.14",
81
81
  "@types/merge-deep": "^3.0.3",
82
82
  "@types/mime-types": "^3.0.1",
83
- "@types/multer": "^1.4.13",
83
+ "@types/multer": "^2.2.0",
84
84
  "@types/node": "^22.19.15",
85
85
  "@types/qrcode": "^1.5.6",
86
86
  "@types/swagger-ui-express": "^4.1.8",
@@ -117,6 +117,49 @@
117
117
  "typescript": "^5.9.3",
118
118
  "webpack-cli": "^6.0.1"
119
119
  },
120
+ "resolutions": {
121
+ "@babel/plugin-transform-modules-systemjs": "7.29.8",
122
+ "@conventional-changelog/git-client": "2.7.0",
123
+ "@isaacs/brace-expansion": "5.0.1",
124
+ "@ungap/structured-clone": "1.3.3",
125
+ "ajv@npm:^6.12.4": "6.14.0",
126
+ "ajv@npm:^8.11.0": "8.18.0",
127
+ "basic-ftp": "5.3.1",
128
+ "brace-expansion@npm:^2.0.1": "2.1.4",
129
+ "brace-expansion@npm:^5.0.2": "5.0.9",
130
+ "defu": "6.1.7",
131
+ "fast-xml-parser@npm:5.5.8": "5.10.1",
132
+ "flatted": "3.4.2",
133
+ "got@npm:^9.6.0": "11.8.5",
134
+ "handlebars": "4.7.9",
135
+ "js-yaml@npm:^3.13.1": "3.15.1",
136
+ "js-yaml@npm:^4.1.0": "4.3.1",
137
+ "lodash": "4.18.1",
138
+ "minimatch@npm:^3.0.4": "3.1.5",
139
+ "minimatch@npm:^3.0.5": "3.1.5",
140
+ "minimatch@npm:^3.1.1": "3.1.5",
141
+ "minimatch@npm:^3.1.2": "3.1.5",
142
+ "minimatch@npm:^5.1.0": "5.1.8",
143
+ "minimatch@npm:^9.0.4": "9.0.9",
144
+ "minimatch@npm:*": "10.2.6",
145
+ "minimatch@npm:^10.1.1": "10.2.6",
146
+ "minimatch@npm:^10.2.1": "10.2.6",
147
+ "minimatch@npm:^10.2.2": "10.2.6",
148
+ "path-to-regexp@npm:~0.1.12": "0.1.13",
149
+ "picomatch@npm:^2.0.4": "2.3.2",
150
+ "picomatch@npm:^2.2.1": "2.3.2",
151
+ "picomatch@npm:^2.2.3": "2.3.2",
152
+ "picomatch@npm:^2.3.1": "2.3.2",
153
+ "picomatch@npm:^4.0.2": "4.0.4",
154
+ "picomatch@npm:^4.0.3": "4.0.4",
155
+ "qs@npm:~6.14.0": "6.15.3",
156
+ "qs@npm:~6.15.1": "6.15.3",
157
+ "sharp@npm:0.34.5": "0.35.0",
158
+ "tar": "7.5.22",
159
+ "tmp@npm:^0.0.33": "0.2.7",
160
+ "undici@npm:6.23.0": "6.28.0",
161
+ "ws@npm:~8.17.1": "8.21.3"
162
+ },
120
163
  "peerDependencies": {
121
164
  "crypto-js": "^4.2.0",
122
165
  "mongoose": "^8.23.0",