s3db.js 13.6.1 → 14.0.2

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.
Files changed (189) hide show
  1. package/README.md +56 -15
  2. package/dist/s3db.cjs +72446 -39022
  3. package/dist/s3db.cjs.map +1 -1
  4. package/dist/s3db.es.js +72172 -38790
  5. package/dist/s3db.es.js.map +1 -1
  6. package/mcp/lib/base-handler.js +157 -0
  7. package/mcp/lib/handlers/connection-handler.js +280 -0
  8. package/mcp/lib/handlers/query-handler.js +533 -0
  9. package/mcp/lib/handlers/resource-handler.js +428 -0
  10. package/mcp/lib/tool-registry.js +336 -0
  11. package/mcp/lib/tools/connection-tools.js +161 -0
  12. package/mcp/lib/tools/query-tools.js +267 -0
  13. package/mcp/lib/tools/resource-tools.js +404 -0
  14. package/package.json +85 -50
  15. package/src/clients/memory-client.class.js +346 -191
  16. package/src/clients/memory-storage.class.js +300 -84
  17. package/src/clients/s3-client.class.js +7 -6
  18. package/src/concerns/geo-encoding.js +19 -2
  19. package/src/concerns/ip.js +59 -9
  20. package/src/concerns/money.js +8 -1
  21. package/src/concerns/password-hashing.js +49 -8
  22. package/src/concerns/plugin-storage.js +186 -18
  23. package/src/concerns/storage-drivers/filesystem-driver.js +284 -0
  24. package/src/database.class.js +139 -29
  25. package/src/errors.js +332 -42
  26. package/src/plugins/api/auth/oidc-auth.js +66 -17
  27. package/src/plugins/api/auth/strategies/base-strategy.class.js +74 -0
  28. package/src/plugins/api/auth/strategies/factory.class.js +63 -0
  29. package/src/plugins/api/auth/strategies/global-strategy.class.js +44 -0
  30. package/src/plugins/api/auth/strategies/path-based-strategy.class.js +83 -0
  31. package/src/plugins/api/auth/strategies/path-rules-strategy.class.js +118 -0
  32. package/src/plugins/api/concerns/failban-manager.js +106 -57
  33. package/src/plugins/api/concerns/route-context.js +601 -0
  34. package/src/plugins/api/index.js +168 -40
  35. package/src/plugins/api/routes/auth-routes.js +198 -30
  36. package/src/plugins/api/routes/resource-routes.js +19 -4
  37. package/src/plugins/api/server/health-manager.class.js +163 -0
  38. package/src/plugins/api/server/middleware-chain.class.js +310 -0
  39. package/src/plugins/api/server/router.class.js +472 -0
  40. package/src/plugins/api/server.js +280 -1303
  41. package/src/plugins/api/utils/custom-routes.js +17 -5
  42. package/src/plugins/api/utils/guards.js +76 -17
  43. package/src/plugins/api/utils/openapi-generator-cached.class.js +133 -0
  44. package/src/plugins/api/utils/openapi-generator.js +7 -6
  45. package/src/plugins/audit.plugin.js +30 -8
  46. package/src/plugins/backup.plugin.js +110 -14
  47. package/src/plugins/cache/cache.class.js +22 -5
  48. package/src/plugins/cache/filesystem-cache.class.js +116 -19
  49. package/src/plugins/cache/memory-cache.class.js +211 -57
  50. package/src/plugins/cache/multi-tier-cache.class.js +371 -0
  51. package/src/plugins/cache/partition-aware-filesystem-cache.class.js +168 -47
  52. package/src/plugins/cache/redis-cache.class.js +552 -0
  53. package/src/plugins/cache/s3-cache.class.js +17 -8
  54. package/src/plugins/cache.plugin.js +176 -61
  55. package/src/plugins/cloud-inventory/drivers/alibaba-driver.js +8 -1
  56. package/src/plugins/cloud-inventory/drivers/aws-driver.js +60 -29
  57. package/src/plugins/cloud-inventory/drivers/azure-driver.js +8 -1
  58. package/src/plugins/cloud-inventory/drivers/base-driver.js +16 -2
  59. package/src/plugins/cloud-inventory/drivers/cloudflare-driver.js +8 -1
  60. package/src/plugins/cloud-inventory/drivers/digitalocean-driver.js +8 -1
  61. package/src/plugins/cloud-inventory/drivers/hetzner-driver.js +8 -1
  62. package/src/plugins/cloud-inventory/drivers/linode-driver.js +8 -1
  63. package/src/plugins/cloud-inventory/drivers/mongodb-atlas-driver.js +8 -1
  64. package/src/plugins/cloud-inventory/drivers/vultr-driver.js +8 -1
  65. package/src/plugins/cloud-inventory/index.js +29 -8
  66. package/src/plugins/cloud-inventory/registry.js +64 -42
  67. package/src/plugins/cloud-inventory.plugin.js +240 -138
  68. package/src/plugins/concerns/plugin-dependencies.js +54 -0
  69. package/src/plugins/concerns/resource-names.js +100 -0
  70. package/src/plugins/consumers/index.js +10 -2
  71. package/src/plugins/consumers/sqs-consumer.js +12 -2
  72. package/src/plugins/cookie-farm-suite.plugin.js +278 -0
  73. package/src/plugins/cookie-farm.errors.js +73 -0
  74. package/src/plugins/cookie-farm.plugin.js +869 -0
  75. package/src/plugins/costs.plugin.js +7 -1
  76. package/src/plugins/eventual-consistency/analytics.js +94 -19
  77. package/src/plugins/eventual-consistency/config.js +15 -7
  78. package/src/plugins/eventual-consistency/consolidation.js +29 -11
  79. package/src/plugins/eventual-consistency/garbage-collection.js +3 -1
  80. package/src/plugins/eventual-consistency/helpers.js +39 -14
  81. package/src/plugins/eventual-consistency/install.js +21 -2
  82. package/src/plugins/eventual-consistency/utils.js +32 -10
  83. package/src/plugins/fulltext.plugin.js +38 -11
  84. package/src/plugins/geo.plugin.js +61 -9
  85. package/src/plugins/identity/concerns/config.js +61 -0
  86. package/src/plugins/identity/concerns/mfa-manager.js +15 -2
  87. package/src/plugins/identity/concerns/rate-limit.js +124 -0
  88. package/src/plugins/identity/concerns/resource-schemas.js +9 -1
  89. package/src/plugins/identity/concerns/token-generator.js +29 -4
  90. package/src/plugins/identity/drivers/auth-driver.interface.js +76 -0
  91. package/src/plugins/identity/drivers/client-credentials-driver.js +127 -0
  92. package/src/plugins/identity/drivers/index.js +18 -0
  93. package/src/plugins/identity/drivers/password-driver.js +122 -0
  94. package/src/plugins/identity/email-service.js +17 -2
  95. package/src/plugins/identity/index.js +413 -69
  96. package/src/plugins/identity/oauth2-server.js +413 -30
  97. package/src/plugins/identity/oidc-discovery.js +16 -8
  98. package/src/plugins/identity/rsa-keys.js +115 -35
  99. package/src/plugins/identity/server.js +166 -45
  100. package/src/plugins/identity/session-manager.js +53 -7
  101. package/src/plugins/identity/ui/pages/mfa-verification.js +17 -15
  102. package/src/plugins/identity/ui/routes.js +363 -255
  103. package/src/plugins/importer/index.js +153 -20
  104. package/src/plugins/index.js +9 -2
  105. package/src/plugins/kubernetes-inventory/index.js +6 -0
  106. package/src/plugins/kubernetes-inventory/k8s-driver.js +867 -0
  107. package/src/plugins/kubernetes-inventory/resource-types.js +274 -0
  108. package/src/plugins/kubernetes-inventory.plugin.js +980 -0
  109. package/src/plugins/metrics.plugin.js +64 -16
  110. package/src/plugins/ml/base-model.class.js +25 -15
  111. package/src/plugins/ml/regression-model.class.js +1 -1
  112. package/src/plugins/ml.errors.js +57 -25
  113. package/src/plugins/ml.plugin.js +28 -4
  114. package/src/plugins/namespace.js +210 -0
  115. package/src/plugins/plugin.class.js +180 -8
  116. package/src/plugins/puppeteer/console-monitor.js +729 -0
  117. package/src/plugins/puppeteer/cookie-manager.js +492 -0
  118. package/src/plugins/puppeteer/network-monitor.js +816 -0
  119. package/src/plugins/puppeteer/performance-manager.js +746 -0
  120. package/src/plugins/puppeteer/proxy-manager.js +478 -0
  121. package/src/plugins/puppeteer/stealth-manager.js +556 -0
  122. package/src/plugins/puppeteer.errors.js +81 -0
  123. package/src/plugins/puppeteer.plugin.js +1327 -0
  124. package/src/plugins/queue-consumer.plugin.js +69 -14
  125. package/src/plugins/recon/behaviors/uptime-behavior.js +691 -0
  126. package/src/plugins/recon/concerns/command-runner.js +148 -0
  127. package/src/plugins/recon/concerns/diff-detector.js +372 -0
  128. package/src/plugins/recon/concerns/fingerprint-builder.js +307 -0
  129. package/src/plugins/recon/concerns/process-manager.js +338 -0
  130. package/src/plugins/recon/concerns/report-generator.js +478 -0
  131. package/src/plugins/recon/concerns/security-analyzer.js +571 -0
  132. package/src/plugins/recon/concerns/target-normalizer.js +68 -0
  133. package/src/plugins/recon/config/defaults.js +321 -0
  134. package/src/plugins/recon/config/resources.js +370 -0
  135. package/src/plugins/recon/index.js +778 -0
  136. package/src/plugins/recon/managers/dependency-manager.js +174 -0
  137. package/src/plugins/recon/managers/scheduler-manager.js +179 -0
  138. package/src/plugins/recon/managers/storage-manager.js +745 -0
  139. package/src/plugins/recon/managers/target-manager.js +274 -0
  140. package/src/plugins/recon/stages/asn-stage.js +314 -0
  141. package/src/plugins/recon/stages/certificate-stage.js +84 -0
  142. package/src/plugins/recon/stages/dns-stage.js +107 -0
  143. package/src/plugins/recon/stages/dnsdumpster-stage.js +362 -0
  144. package/src/plugins/recon/stages/fingerprint-stage.js +71 -0
  145. package/src/plugins/recon/stages/google-dorks-stage.js +440 -0
  146. package/src/plugins/recon/stages/http-stage.js +89 -0
  147. package/src/plugins/recon/stages/latency-stage.js +148 -0
  148. package/src/plugins/recon/stages/massdns-stage.js +302 -0
  149. package/src/plugins/recon/stages/osint-stage.js +1373 -0
  150. package/src/plugins/recon/stages/ports-stage.js +169 -0
  151. package/src/plugins/recon/stages/screenshot-stage.js +94 -0
  152. package/src/plugins/recon/stages/secrets-stage.js +514 -0
  153. package/src/plugins/recon/stages/subdomains-stage.js +295 -0
  154. package/src/plugins/recon/stages/tls-audit-stage.js +78 -0
  155. package/src/plugins/recon/stages/vulnerability-stage.js +78 -0
  156. package/src/plugins/recon/stages/web-discovery-stage.js +113 -0
  157. package/src/plugins/recon/stages/whois-stage.js +349 -0
  158. package/src/plugins/recon.plugin.js +75 -0
  159. package/src/plugins/recon.plugin.js.backup +2635 -0
  160. package/src/plugins/relation.errors.js +87 -14
  161. package/src/plugins/replicator.plugin.js +514 -137
  162. package/src/plugins/replicators/base-replicator.class.js +89 -1
  163. package/src/plugins/replicators/bigquery-replicator.class.js +66 -22
  164. package/src/plugins/replicators/dynamodb-replicator.class.js +22 -15
  165. package/src/plugins/replicators/mongodb-replicator.class.js +22 -15
  166. package/src/plugins/replicators/mysql-replicator.class.js +52 -17
  167. package/src/plugins/replicators/planetscale-replicator.class.js +30 -4
  168. package/src/plugins/replicators/postgres-replicator.class.js +62 -27
  169. package/src/plugins/replicators/s3db-replicator.class.js +25 -18
  170. package/src/plugins/replicators/schema-sync.helper.js +3 -3
  171. package/src/plugins/replicators/sqs-replicator.class.js +8 -2
  172. package/src/plugins/replicators/turso-replicator.class.js +23 -3
  173. package/src/plugins/replicators/webhook-replicator.class.js +42 -4
  174. package/src/plugins/s3-queue.plugin.js +464 -65
  175. package/src/plugins/scheduler.plugin.js +20 -6
  176. package/src/plugins/state-machine.plugin.js +40 -9
  177. package/src/plugins/tfstate/base-driver.js +28 -4
  178. package/src/plugins/tfstate/errors.js +65 -10
  179. package/src/plugins/tfstate/filesystem-driver.js +52 -8
  180. package/src/plugins/tfstate/index.js +163 -90
  181. package/src/plugins/tfstate/s3-driver.js +64 -6
  182. package/src/plugins/ttl.plugin.js +72 -17
  183. package/src/plugins/vector/distances.js +18 -12
  184. package/src/plugins/vector/kmeans.js +26 -4
  185. package/src/resource.class.js +115 -19
  186. package/src/testing/factory.class.js +20 -3
  187. package/src/testing/seeder.class.js +7 -1
  188. package/src/clients/memory-client.md +0 -917
  189. package/src/plugins/cloud-inventory/drivers/mock-drivers.js +0 -449
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "s3db.js",
3
- "version": "13.6.1",
3
+ "version": "14.0.2",
4
4
  "description": "Use AWS S3, the world's most reliable document storage, as a database with this ORM.",
5
5
  "main": "dist/s3db.cjs",
6
6
  "module": "dist/s3db.es.js",
@@ -74,11 +74,11 @@
74
74
  "UNLICENSE"
75
75
  ],
76
76
  "dependencies": {
77
- "@aws-sdk/client-s3": "^3.920.0",
78
- "@aws-sdk/credential-providers": "^3.920.0",
79
- "@aws-sdk/s3-request-presigner": "^3.920.0",
77
+ "@aws-sdk/client-s3": "^3.922.0",
78
+ "@aws-sdk/credential-providers": "^3.922.0",
79
+ "@aws-sdk/s3-request-presigner": "^3.922.0",
80
80
  "@modelcontextprotocol/sdk": "^1.20.2",
81
- "@smithy/node-http-handler": "^4.4.3",
81
+ "@smithy/node-http-handler": "^4.4.4",
82
82
  "@supercharge/promise-pool": "^3.2.0",
83
83
  "dotenv": "^17.2.3",
84
84
  "fastest-validator": "^1.19.1",
@@ -124,7 +124,6 @@
124
124
  "@aws-sdk/client-waf": "^3.0.0",
125
125
  "@aws-sdk/client-wafv2": "^3.0.0",
126
126
  "@google-cloud/bigquery": "^7.0.0",
127
- "google-auth-library": "^9.0.0 || ^10.0.0",
128
127
  "@hono/node-server": "^1.0.0",
129
128
  "@hono/swagger-ui": "^0.5.2",
130
129
  "@libsql/client": "^0.14.0",
@@ -134,12 +133,20 @@
134
133
  "bcrypt": "^5.0.0 || ^6.0.0",
135
134
  "ejs": "^3.0.0",
136
135
  "express": "^4.0.0 || ^5.0.0",
136
+ "ghost-cursor": "^1.0.0",
137
+ "google-auth-library": "^9.0.0 || ^10.0.0",
137
138
  "hono": "^4.0.0",
139
+ "ioredis": "^5.4.1",
138
140
  "jose": "^5.0.0 || ^6.0.0",
141
+ "@kubernetes/client-node": "^1.0.0",
139
142
  "node-cron": "^4.0.0",
140
143
  "nodemailer": "^6.0.0 || ^7.0.0",
141
144
  "pg": "^8.0.0",
142
- "pug": "^3.0.0"
145
+ "pug": "^3.0.0",
146
+ "puppeteer": "^23.0.0",
147
+ "puppeteer-extra": "^3.0.0",
148
+ "puppeteer-extra-plugin-stealth": "^2.0.0",
149
+ "user-agents": "^1.0.0"
143
150
  },
144
151
  "peerDependenciesMeta": {
145
152
  "@aws-sdk/client-acm": {
@@ -280,6 +287,9 @@
280
287
  "jose": {
281
288
  "optional": true
282
289
  },
290
+ "@kubernetes/client-node": {
291
+ "optional": true
292
+ },
283
293
  "node-cron": {
284
294
  "optional": true
285
295
  },
@@ -294,47 +304,65 @@
294
304
  },
295
305
  "pug": {
296
306
  "optional": true
307
+ },
308
+ "puppeteer": {
309
+ "optional": true
310
+ },
311
+ "puppeteer-extra": {
312
+ "optional": true
313
+ },
314
+ "puppeteer-extra-plugin-stealth": {
315
+ "optional": true
316
+ },
317
+ "user-agents": {
318
+ "optional": true
319
+ },
320
+ "ghost-cursor": {
321
+ "optional": true
322
+ },
323
+ "ioredis": {
324
+ "optional": true
297
325
  }
298
326
  },
299
327
  "devDependencies": {
300
- "@aws-sdk/client-acm": "^3.920.0",
301
- "@aws-sdk/client-api-gateway": "^3.920.0",
302
- "@aws-sdk/client-apigatewayv2": "^3.920.0",
303
- "@aws-sdk/client-backup": "^3.920.0",
304
- "@aws-sdk/client-cloudfront": "^3.920.0",
305
- "@aws-sdk/client-cloudtrail": "^3.920.0",
306
- "@aws-sdk/client-cloudwatch": "^3.920.0",
307
- "@aws-sdk/client-cloudwatch-logs": "^3.920.0",
308
- "@aws-sdk/client-cognito-identity-provider": "^3.920.0",
309
- "@aws-sdk/client-config-service": "^3.920.0",
310
- "@aws-sdk/client-dynamodb": "^3.920.0",
311
- "@aws-sdk/client-ec2": "^3.920.0",
312
- "@aws-sdk/client-ecr": "^3.920.0",
313
- "@aws-sdk/client-ecs": "^3.920.0",
314
- "@aws-sdk/client-efs": "^3.920.0",
315
- "@aws-sdk/client-eks": "^3.920.0",
316
- "@aws-sdk/client-elastic-load-balancing": "^3.920.0",
317
- "@aws-sdk/client-elastic-load-balancing-v2": "^3.920.0",
318
- "@aws-sdk/client-elasticache": "^3.920.0",
319
- "@aws-sdk/client-eventbridge": "^3.920.0",
320
- "@aws-sdk/client-iam": "^3.920.0",
321
- "@aws-sdk/client-kinesis": "^3.920.0",
322
- "@aws-sdk/client-kms": "^3.920.0",
323
- "@aws-sdk/client-lambda": "^3.920.0",
324
- "@aws-sdk/client-rds": "^3.920.0",
325
- "@aws-sdk/client-route-53": "^3.920.0",
326
- "@aws-sdk/client-secrets-manager": "^3.920.0",
327
- "@aws-sdk/client-sfn": "^3.920.0",
328
- "@aws-sdk/client-sns": "^3.920.0",
329
- "@aws-sdk/client-sqs": "^3.920.0",
330
- "@aws-sdk/client-ssm": "^3.920.0",
331
- "@aws-sdk/client-sts": "^3.920.0",
332
- "@aws-sdk/client-waf": "^3.920.0",
333
- "@aws-sdk/client-wafv2": "^3.920.0",
328
+ "@aws-sdk/client-acm": "^3.922.0",
329
+ "@aws-sdk/client-api-gateway": "^3.922.0",
330
+ "@aws-sdk/client-apigatewayv2": "^3.922.0",
331
+ "@aws-sdk/client-backup": "^3.922.0",
332
+ "@aws-sdk/client-cloudfront": "^3.922.0",
333
+ "@aws-sdk/client-cloudtrail": "^3.922.0",
334
+ "@aws-sdk/client-cloudwatch": "^3.922.0",
335
+ "@aws-sdk/client-cloudwatch-logs": "^3.922.0",
336
+ "@aws-sdk/client-cognito-identity-provider": "^3.922.0",
337
+ "@aws-sdk/client-config-service": "^3.922.0",
338
+ "@aws-sdk/client-dynamodb": "^3.922.0",
339
+ "@aws-sdk/client-ec2": "^3.922.0",
340
+ "@aws-sdk/client-ecr": "^3.922.0",
341
+ "@aws-sdk/client-ecs": "^3.922.0",
342
+ "@aws-sdk/client-efs": "^3.922.0",
343
+ "@aws-sdk/client-eks": "^3.922.0",
344
+ "@aws-sdk/client-elastic-load-balancing": "^3.922.0",
345
+ "@aws-sdk/client-elastic-load-balancing-v2": "^3.922.0",
346
+ "@aws-sdk/client-elasticache": "^3.922.0",
347
+ "@aws-sdk/client-eventbridge": "^3.922.0",
348
+ "@aws-sdk/client-iam": "^3.922.0",
349
+ "@aws-sdk/client-kinesis": "^3.922.0",
350
+ "@aws-sdk/client-kms": "^3.922.0",
351
+ "@aws-sdk/client-lambda": "^3.922.0",
352
+ "@aws-sdk/client-rds": "^3.922.0",
353
+ "@aws-sdk/client-route-53": "^3.922.0",
354
+ "@aws-sdk/client-secrets-manager": "^3.922.0",
355
+ "@aws-sdk/client-sfn": "^3.922.0",
356
+ "@aws-sdk/client-sns": "^3.922.0",
357
+ "@aws-sdk/client-sqs": "^3.922.0",
358
+ "@aws-sdk/client-ssm": "^3.922.0",
359
+ "@aws-sdk/client-sts": "^3.922.0",
360
+ "@aws-sdk/client-waf": "^3.922.0",
361
+ "@aws-sdk/client-wafv2": "^3.922.0",
334
362
  "@babel/core": "^7.28.5",
335
363
  "@babel/preset-env": "^7.28.5",
336
364
  "@google-cloud/bigquery": "^7.9.4",
337
- "@hono/node-server": "^1.19.5",
365
+ "@hono/node-server": "^1.19.6",
338
366
  "@hono/swagger-ui": "^0.5.2",
339
367
  "@libsql/client": "^0.14.0",
340
368
  "@planetscale/database": "^1.19.0",
@@ -346,18 +374,21 @@
346
374
  "@tensorflow/tfjs-node": "^4.22.0",
347
375
  "@types/node": "24.7.0",
348
376
  "@xenova/transformers": "^2.17.2",
349
- "@yao-pkg/pkg": "^6.10.0",
377
+ "@yao-pkg/pkg": "^6.10.1",
350
378
  "amqplib": "^0.10.9",
351
379
  "babel-loader": "^10.0.0",
352
380
  "bcrypt": "^6.0.0",
353
381
  "chalk": "^5.6.2",
354
382
  "cli-table3": "^0.6.5",
355
383
  "commander": "^14.0.2",
356
- "esbuild": "^0.25.11",
384
+ "ejs": "^3.1.10",
385
+ "esbuild": "^0.25.12",
357
386
  "express": "^5.1.0",
358
- "google-auth-library": "^10.4.2",
387
+ "ghost-cursor": "^1.4.1",
388
+ "google-auth-library": "^10.5.0",
359
389
  "hono": "^4.10.4",
360
390
  "inquirer": "^12.10.0",
391
+ "ioredis": "^5.8.2",
361
392
  "jest": "^30.2.0",
362
393
  "jose": "^6.1.0",
363
394
  "node-cron": "^4.2.1",
@@ -366,8 +397,10 @@
366
397
  "nodemon": "^3.1.10",
367
398
  "ora": "^9.0.0",
368
399
  "pg": "^8.16.3",
369
- "ejs": "^3.1.10",
370
400
  "pug": "^3.0.3",
401
+ "puppeteer": "^24.27.0",
402
+ "puppeteer-extra": "^3.3.6",
403
+ "puppeteer-extra-plugin-stealth": "^2.11.2",
371
404
  "rollup": "^4.52.5",
372
405
  "rollup-plugin-copy": "^3.5.0",
373
406
  "rollup-plugin-esbuild": "^6.2.1",
@@ -375,6 +408,7 @@
375
408
  "rollup-plugin-shebang-bin": "^0.1.0",
376
409
  "tsx": "^4.20.6",
377
410
  "typescript": "5.9.3",
411
+ "user-agents": "^1.1.669",
378
412
  "uuid": "^13.0.0",
379
413
  "webpack": "^5.102.1",
380
414
  "webpack-cli": "^6.0.1"
@@ -391,12 +425,13 @@
391
425
  "build:binaries": "./scripts/scripts/build-binaries.sh",
392
426
  "dev": "rollup -c -w",
393
427
  "test": "pnpm run test:js && pnpm run test:ts",
394
- "test:js": "node --no-warnings --experimental-vm-modules node_modules/jest/bin/jest.js",
395
- "test:quick": "node --no-warnings --experimental-vm-modules node_modules/jest/bin/jest.js --maxWorkers=2 --bail",
428
+ "test:js": "node --max-old-space-size=8192 --no-warnings --experimental-vm-modules node_modules/jest/bin/jest.js",
429
+ "test:quick": "node --max-old-space-size=4096 --no-warnings --experimental-vm-modules node_modules/jest/bin/jest.js --maxWorkers=2 --bail",
396
430
  "test:ts": "tsc --noEmit --project tests/typescript/tsconfig.json",
397
431
  "test:coverage": "pnpm run test:js -- --coverage --runInBand && pnpm run test:ts",
398
- "test:serial": "node --no-warnings --experimental-vm-modules node_modules/jest/bin/jest.js --runInBand",
399
- "test:plugins": "node --no-warnings --experimental-vm-modules node_modules/jest/bin/jest.js tests/plugins/ --testTimeout=60000",
432
+ "test:serial": "node --max-old-space-size=8192 --no-warnings --experimental-vm-modules node_modules/jest/bin/jest.js --runInBand",
433
+ "test:plugins": "node --max-old-space-size=6144 --no-warnings --experimental-vm-modules node_modules/jest/bin/jest.js tests/plugins/ --testTimeout=60000",
434
+ "test:low-memory": "node --max-old-space-size=4096 --no-warnings --experimental-vm-modules node_modules/jest/bin/jest.js --maxWorkers=2 --workerIdleMemoryLimit=256MB",
400
435
  "test:full": "pnpm run test:js && pnpm run test:ts",
401
436
  "benchmark": "node benchmark-compression.js",
402
437
  "benchmark:partitions": "node docs/benchmarks/partitions-matrix.js",