From 4631cba0b3826825b6367aaad6809ecd41bf16d7 Mon Sep 17 00:00:00 2001 From: dy Date: Wed, 20 Dec 2023 16:07:59 +0800 Subject: [PATCH 01/10] =?UTF-8?q?=E6=B6=88=E8=B4=B9=E7=AB=9E=E8=B5=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package-lock.json | 1792 ++++++++++++++++- package.json | 1 + src/api_s2c/event/xiaofeijingsai/ApiOpen.ts | 29 + .../protocols/event/xiaofeijingsai/PtlOpen.ts | 8 + src/shared/protocols/serviceProto.ts | 774 +++---- 5 files changed, 2191 insertions(+), 413 deletions(-) create mode 100644 src/api_s2c/event/xiaofeijingsai/ApiOpen.ts create mode 100644 src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts diff --git a/package-lock.json b/package-lock.json index 824ac2d..12225a6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,6 +15,7 @@ "json5": "^2.2.3", "mathjs": "^11.4.0", "mongodb": "^4.17.1", + "node-gyp": "^10.0.1", "ramda": "^0.29.1", "redis": "^4.3.1", "shelljs": "^0.8.5", @@ -1070,6 +1071,95 @@ "resolved": "https://registry.npmjs.org/@ioredis/commands/-/commands-1.2.0.tgz", "integrity": "sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg==" }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, "node_modules/@jridgewell/resolve-uri": { "version": "3.1.0", "resolved": "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", @@ -1104,6 +1194,79 @@ "sparse-bitfield": "^3.0.3" } }, + "node_modules/@npmcli/agent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.0.tgz", + "integrity": "sha512-2yThA1Es98orMkpSLVqlDZAMPK3jHJhifP2gnNUdk1754uZ8yI5c+ulCoVG+WlntQA6MzhrURMXjSd9Z7dJ2/Q==", + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/agent/node_modules/lru-cache": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/@npmcli/fs": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", + "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/fs/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/fs/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/fs/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "optional": true, + "engines": { + "node": ">=14" + } + }, "node_modules/@redis/bloom": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@redis/bloom/-/bloom-1.0.2.tgz", @@ -1292,6 +1455,14 @@ "integrity": "sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==", "dev": true }, + "node_modules/abbrev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -1333,6 +1504,50 @@ "node": ">=0.8" } }, + "node_modules/agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/agent-base/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/agent-base/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/ansi-colors": { "version": "4.1.1", "resolved": "https://registry.npmmirror.com/ansi-colors/-/ansi-colors-4.1.1.tgz", @@ -1358,7 +1573,6 @@ "version": "5.0.1", "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, "engines": { "node": ">=8" } @@ -1583,6 +1797,79 @@ "node": ">= 0.8" } }, + "node_modules/cacache": { + "version": "18.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.1.tgz", + "integrity": "sha512-g4Uf2CFZPaxtJKre6qr4zqLDOOPU7bNVhWjlNhvzc51xaTOx2noMOLhfFkTAqwtrAZAKQUuDfyjitzilpA8WsQ==", + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/cacache/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/cacache/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/lru-cache": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "engines": { + "node": "14 || >=16.14" + } + }, + "node_modules/cacache/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/call-bind": { "version": "1.0.2", "resolved": "https://registry.npmmirror.com/call-bind/-/call-bind-1.0.2.tgz", @@ -1668,6 +1955,22 @@ "fsevents": "~2.3.2" } }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, "node_modules/cli-cursor": { "version": "3.1.0", "resolved": "https://registry.npmmirror.com/cli-cursor/-/cli-cursor-3.1.0.tgz", @@ -1890,7 +2193,6 @@ "version": "7.0.3", "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -1909,7 +2211,6 @@ "version": "4.3.3", "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.3.tgz", "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", - "dev": true, "dependencies": { "ms": "2.1.2" }, @@ -1925,8 +2226,7 @@ "node_modules/debug/node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "node_modules/decamelize": { "version": "4.0.0", @@ -1993,6 +2293,11 @@ "node": ">=0.3.1" } }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, "node_modules/editorconfig": { "version": "0.15.3", "resolved": "https://registry.npmmirror.com/editorconfig/-/editorconfig-0.15.3.tgz", @@ -2016,8 +2321,7 @@ "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "node_modules/encodeurl": { "version": "1.0.2", @@ -2027,6 +2331,27 @@ "node": ">= 0.8" } }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmmirror.com/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -2036,6 +2361,19 @@ "once": "^1.4.0" } }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==" + }, "node_modules/escalade": { "version": "3.1.1", "resolved": "https://registry.npmmirror.com/escalade/-/escalade-3.1.1.tgz", @@ -2092,6 +2430,11 @@ "node": ">=10" } }, + "node_modules/exponential-backoff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", + "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==" + }, "node_modules/express": { "version": "4.18.2", "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", @@ -2280,6 +2623,32 @@ } } }, + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/form-data": { "version": "2.5.1", "resolved": "https://registry.npmmirror.com/form-data/-/form-data-2.5.1.tgz", @@ -2339,6 +2708,17 @@ "node": ">=12" } }, + "node_modules/fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -2486,8 +2866,7 @@ "node_modules/graceful-fs": { "version": "4.2.10", "resolved": "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "node_modules/growl": { "version": "1.10.5", @@ -2559,6 +2938,11 @@ "node": ">=6.0.0" } }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" + }, "node_modules/http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", @@ -2574,6 +2958,39 @@ "node": ">= 0.8" } }, + "node_modules/http-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/http-proxy-agent/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/http-proxy-agent/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, "node_modules/http-response-object": { "version": "3.0.2", "resolved": "https://registry.npmmirror.com/http-response-object/-/http-response-object-3.0.2.tgz", @@ -2587,6 +3004,18 @@ "resolved": "https://registry.npmmirror.com/@types/node/-/node-10.17.60.tgz", "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==" }, + "node_modules/https-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", + "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/human-signals": { "version": "1.1.1", "resolved": "https://registry.npmmirror.com/human-signals/-/human-signals-1.1.1.tgz", @@ -2621,6 +3050,22 @@ "node": ">= 4" } }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" + } + }, "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz", @@ -2771,7 +3216,6 @@ "version": "3.0.0", "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, "engines": { "node": ">=8" } @@ -2797,6 +3241,11 @@ "node": ">=8" } }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==" + }, "node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz", @@ -2842,8 +3291,24 @@ "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } }, "node_modules/javascript-natural-sort": { "version": "0.7.1", @@ -2985,6 +3450,27 @@ "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "dev": true }, + "node_modules/make-fetch-happen": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", + "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", + "dependencies": { + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", + "is-lambda": "^1.0.1", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/map-age-cleaner": { "version": "0.1.3", "resolved": "https://registry.npmmirror.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", @@ -3123,6 +3609,161 @@ "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", "dev": true }, + "node_modules/minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-collect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-flush/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/mocha": { "version": "9.2.2", "resolved": "https://registry.npmmirror.com/mocha/-/mocha-9.2.2.tgz", @@ -3219,6 +3860,138 @@ "node": ">= 0.6" } }, + "node_modules/node-gyp": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.0.1.tgz", + "integrity": "sha512-gg3/bHehQfZivQVfqIyy8wTdSymF9yTyP4CJifK73imyNMU8AIGQE2pUa7dNWfmMeG9cDVF2eehiRMv0LC1iAg==", + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^10.3.10", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^13.0.0", + "nopt": "^7.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^4.0.0" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/node-gyp/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/node-gyp/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/node-gyp/node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "engines": { + "node": ">=16" + } + }, + "node_modules/node-gyp/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-gyp/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/node-gyp/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-gyp/node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^16.13.0 || >=18.0.0" + } + }, + "node_modules/node-gyp/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/nopt": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.0.tgz", + "integrity": "sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==", + "dependencies": { + "abbrev": "^2.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz", @@ -3379,6 +4152,20 @@ "node": ">=10" } }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/parse-cache-control": { "version": "1.0.1", "resolved": "https://registry.npmmirror.com/parse-cache-control/-/parse-cache-control-1.0.1.tgz", @@ -3413,7 +4200,6 @@ "version": "3.1.1", "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, "engines": { "node": ">=8" } @@ -3423,6 +4209,29 @@ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, + "node_modules/path-scurry": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", + "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", + "dependencies": { + "lru-cache": "^9.1.1 || ^10.0.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", + "engines": { + "node": "14 || >=16.14" + } + }, "node_modules/path-to-regexp": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", @@ -3437,6 +4246,14 @@ "node": ">=8.6" } }, + "node_modules/proc-log": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", + "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmmirror.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -3450,6 +4267,18 @@ "asap": "~2.0.6" } }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/proxy-addr": { "version": "2.0.7", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", @@ -3654,6 +4483,14 @@ "node": ">=8" } }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "engines": { + "node": ">= 4" + } + }, "node_modules/run-async": { "version": "2.4.1", "resolved": "https://registry.npmmirror.com/run-async/-/run-async-2.4.1.tgz", @@ -3764,7 +4601,6 @@ "version": "2.0.0", "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, "dependencies": { "shebang-regex": "^3.0.0" }, @@ -3776,7 +4612,6 @@ "version": "3.0.0", "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, "engines": { "node": ">=8" } @@ -3841,6 +4676,40 @@ "npm": ">= 3.0.0" } }, + "node_modules/socks-proxy-agent": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.2.tgz", + "integrity": "sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "socks": "^2.7.1" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/socks-proxy-agent/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/socks-proxy-agent/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, "node_modules/sparse-bitfield": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", @@ -3861,6 +4730,17 @@ "node": ">=0.8" } }, + "node_modules/ssri": { + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", + "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/standard-as-callback": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/standard-as-callback/-/standard-as-callback-2.1.0.tgz", @@ -3887,7 +4767,20 @@ "version": "4.2.3", "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -3901,7 +4794,18 @@ "version": "6.0.1", "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dependencies": { "ansi-regex": "^5.0.1" }, @@ -3977,6 +4881,57 @@ "get-port": "^3.1.0" } }, + "node_modules/tar": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.0.tgz", + "integrity": "sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/then-request": { "version": "6.0.2", "resolved": "https://registry.npmmirror.com/then-request/-/then-request-6.0.2.tgz", @@ -4318,6 +5273,28 @@ "typescript": "^2.1.6 || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >=3.0.0-dev" } }, + "node_modules/unique-filename": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "dependencies": { + "unique-slug": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/unique-slug": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/universalify": { "version": "2.0.0", "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.0.tgz", @@ -4403,7 +5380,6 @@ "version": "2.0.2", "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "dependencies": { "isexe": "^2.0.0" }, @@ -4450,6 +5426,23 @@ "node": ">=10" } }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz", @@ -5456,6 +6449,64 @@ "resolved": "https://registry.npmjs.org/@ioredis/commands/-/commands-1.2.0.tgz", "integrity": "sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg==" }, + "@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "requires": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==" + }, + "ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==" + }, + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "requires": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + } + }, + "strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "requires": { + "ansi-regex": "^6.0.1" + } + }, + "wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "requires": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + } + } + } + }, "@jridgewell/resolve-uri": { "version": "3.1.0", "resolved": "https://registry.npmmirror.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", @@ -5487,6 +6538,62 @@ "sparse-bitfield": "^3.0.3" } }, + "@npmcli/agent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.0.tgz", + "integrity": "sha512-2yThA1Es98orMkpSLVqlDZAMPK3jHJhifP2gnNUdk1754uZ8yI5c+ulCoVG+WlntQA6MzhrURMXjSd9Z7dJ2/Q==", + "requires": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.1" + }, + "dependencies": { + "lru-cache": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==" + } + } + }, + "@npmcli/fs": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", + "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==", + "requires": { + "semver": "^7.3.5" + }, + "dependencies": { + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, + "@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "optional": true + }, "@redis/bloom": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@redis/bloom/-/bloom-1.0.2.tgz", @@ -5660,6 +6767,11 @@ "integrity": "sha512-sL/cEvJWAnClXw0wHk85/2L0G6Sj8UB0Ctc1TEMbKSsmpRosqhwj9gWgFRZSrBr2f9tiXISwNhCPmlfqUqyb9Q==", "dev": true }, + "abbrev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==" + }, "accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -5686,6 +6798,38 @@ "resolved": "https://registry.npmjs.org/adler-32/-/adler-32-1.3.1.tgz", "integrity": "sha512-ynZ4w/nUUv5rrsR8UUGoe1VC9hZj6V5hU9Qw1HlMDJGEJw5S7TfTErWTjMys6M7vr0YWcPqs3qAr4ss0nDfP+A==" }, + "agent-base": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", + "requires": { + "debug": "^4.3.4" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } + }, + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, "ansi-colors": { "version": "4.1.1", "resolved": "https://registry.npmmirror.com/ansi-colors/-/ansi-colors-4.1.1.tgz", @@ -5704,8 +6848,7 @@ "ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" }, "ansi-styles": { "version": "4.3.0", @@ -5892,6 +7035,60 @@ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" }, + "cacache": { + "version": "18.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.1.tgz", + "integrity": "sha512-g4Uf2CFZPaxtJKre6qr4zqLDOOPU7bNVhWjlNhvzc51xaTOx2noMOLhfFkTAqwtrAZAKQUuDfyjitzilpA8WsQ==", + "requires": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "requires": { + "balanced-match": "^1.0.0" + } + }, + "glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "requires": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + } + }, + "lru-cache": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==" + }, + "minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "requires": { + "brace-expansion": "^2.0.1" + } + } + } + }, "call-bind": { "version": "1.0.2", "resolved": "https://registry.npmmirror.com/call-bind/-/call-bind-1.0.2.tgz", @@ -5962,6 +7159,16 @@ "readdirp": "~3.6.0" } }, + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" + }, "cli-cursor": { "version": "3.1.0", "resolved": "https://registry.npmmirror.com/cli-cursor/-/cli-cursor-3.1.0.tgz", @@ -6141,7 +7348,6 @@ "version": "7.0.3", "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, "requires": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -6157,7 +7363,6 @@ "version": "4.3.3", "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.3.tgz", "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", - "dev": true, "requires": { "ms": "2.1.2" }, @@ -6165,8 +7370,7 @@ "ms": { "version": "2.1.2", "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" } } }, @@ -6216,6 +7420,11 @@ "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==", "dev": true }, + "eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, "editorconfig": { "version": "0.15.3", "resolved": "https://registry.npmmirror.com/editorconfig/-/editorconfig-0.15.3.tgz", @@ -6236,14 +7445,33 @@ "emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" }, + "encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "optional": true, + "requires": { + "iconv-lite": "^0.6.2" + }, + "dependencies": { + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } + } + }, "end-of-stream": { "version": "1.4.4", "resolved": "https://registry.npmmirror.com/end-of-stream/-/end-of-stream-1.4.4.tgz", @@ -6253,6 +7481,16 @@ "once": "^1.4.0" } }, + "env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==" + }, + "err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==" + }, "escalade": { "version": "3.1.1", "resolved": "https://registry.npmmirror.com/escalade/-/escalade-3.1.1.tgz", @@ -6297,6 +7535,11 @@ "strip-final-newline": "^2.0.0" } }, + "exponential-backoff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", + "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==" + }, "express": { "version": "4.18.2", "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", @@ -6446,6 +7689,22 @@ "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==" }, + "foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "requires": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "dependencies": { + "signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==" + } + } + }, "form-data": { "version": "2.5.1", "resolved": "https://registry.npmmirror.com/form-data/-/form-data-2.5.1.tgz", @@ -6487,6 +7746,14 @@ "universalify": "^2.0.0" } }, + "fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "requires": { + "minipass": "^7.0.3" + } + }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmmirror.com/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -6604,8 +7871,7 @@ "graceful-fs": { "version": "4.2.10", "resolved": "https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "growl": { "version": "1.10.5", @@ -6656,6 +7922,11 @@ "parse-cache-control": "^1.0.1" } }, + "http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" + }, "http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", @@ -6668,6 +7939,30 @@ "toidentifier": "1.0.1" } }, + "http-proxy-agent": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", + "requires": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } + }, "http-response-object": { "version": "3.0.2", "resolved": "https://registry.npmmirror.com/http-response-object/-/http-response-object-3.0.2.tgz", @@ -6683,6 +7978,15 @@ } } }, + "https-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", + "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", + "requires": { + "agent-base": "^7.0.2", + "debug": "4" + } + }, "human-signals": { "version": "1.1.1", "resolved": "https://registry.npmmirror.com/human-signals/-/human-signals-1.1.1.tgz", @@ -6708,6 +8012,16 @@ "integrity": "sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", "dev": true }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==" + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" + }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmmirror.com/inflight/-/inflight-1.0.6.tgz", @@ -6823,8 +8137,7 @@ "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" }, "is-glob": { "version": "4.0.3", @@ -6841,6 +8154,11 @@ "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", "dev": true }, + "is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==" + }, "is-number": { "version": "7.0.0", "resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz", @@ -6874,8 +8192,16 @@ "isexe": { "version": "2.0.0", "resolved": "https://registry.npmmirror.com/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "requires": { + "@isaacs/cliui": "^8.0.2", + "@pkgjs/parseargs": "^0.11.0" + } }, "javascript-natural-sort": { "version": "0.7.1", @@ -6997,6 +8323,24 @@ "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "dev": true }, + "make-fetch-happen": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", + "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", + "requires": { + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", + "is-lambda": "^1.0.1", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "promise-retry": "^2.0.1", + "ssri": "^10.0.0" + } + }, "map-age-cleaner": { "version": "0.1.3", "resolved": "https://registry.npmmirror.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", @@ -7099,6 +8443,128 @@ "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", "dev": true }, + "minipass": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==" + }, + "minipass-collect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", + "requires": { + "minipass": "^7.0.3" + } + }, + "minipass-fetch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", + "requires": { + "encoding": "^0.1.13", + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + } + }, + "minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "requires": { + "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, + "minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "requires": { + "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, + "minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "requires": { + "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, + "minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + }, "mocha": { "version": "9.2.2", "resolved": "https://registry.npmmirror.com/mocha/-/mocha-9.2.2.tgz", @@ -7174,6 +8640,95 @@ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" }, + "node-gyp": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.0.1.tgz", + "integrity": "sha512-gg3/bHehQfZivQVfqIyy8wTdSymF9yTyP4CJifK73imyNMU8AIGQE2pUa7dNWfmMeG9cDVF2eehiRMv0LC1iAg==", + "requires": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^10.3.10", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^13.0.0", + "nopt": "^7.0.0", + "proc-log": "^3.0.0", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^4.0.0" + }, + "dependencies": { + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "requires": { + "balanced-match": "^1.0.0" + } + }, + "glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "requires": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + } + }, + "isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==" + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "requires": { + "brace-expansion": "^2.0.1" + } + }, + "semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "requires": { + "isexe": "^3.1.1" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, + "nopt": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.0.tgz", + "integrity": "sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==", + "requires": { + "abbrev": "^2.0.0" + } + }, "normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmmirror.com/normalize-path/-/normalize-path-3.0.0.tgz", @@ -7298,6 +8853,14 @@ "p-limit": "^3.0.2" } }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "requires": { + "aggregate-error": "^3.0.0" + } + }, "parse-cache-control": { "version": "1.0.1", "resolved": "https://registry.npmmirror.com/parse-cache-control/-/parse-cache-control-1.0.1.tgz", @@ -7322,14 +8885,29 @@ "path-key": { "version": "3.1.1", "resolved": "https://registry.npmmirror.com/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" }, "path-parse": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, + "path-scurry": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", + "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", + "requires": { + "lru-cache": "^9.1.1 || ^10.0.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==" + } + } + }, "path-to-regexp": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", @@ -7341,6 +8919,11 @@ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true }, + "proc-log": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz", + "integrity": "sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==" + }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmmirror.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -7354,6 +8937,15 @@ "asap": "~2.0.6" } }, + "promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "requires": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + } + }, "proxy-addr": { "version": "2.0.7", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", @@ -7512,6 +9104,11 @@ "signal-exit": "^3.0.2" } }, + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==" + }, "run-async": { "version": "2.4.1", "resolved": "https://registry.npmmirror.com/run-async/-/run-async-2.4.1.tgz", @@ -7614,7 +9211,6 @@ "version": "2.0.0", "resolved": "https://registry.npmmirror.com/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, "requires": { "shebang-regex": "^3.0.0" } @@ -7622,8 +9218,7 @@ "shebang-regex": { "version": "3.0.0", "resolved": "https://registry.npmmirror.com/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" }, "shelljs": { "version": "0.8.5", @@ -7671,6 +9266,31 @@ "smart-buffer": "^4.2.0" } }, + "socks-proxy-agent": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.2.tgz", + "integrity": "sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==", + "requires": { + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "socks": "^2.7.1" + }, + "dependencies": { + "debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "requires": { + "ms": "2.1.2" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } + }, "sparse-bitfield": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", @@ -7688,6 +9308,14 @@ "frac": "~1.1.2" } }, + "ssri": { + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", + "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", + "requires": { + "minipass": "^7.0.3" + } + }, "standard-as-callback": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/standard-as-callback/-/standard-as-callback-2.1.0.tgz", @@ -7711,7 +9339,16 @@ "version": "4.2.3", "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "string-width-cjs": { + "version": "npm:string-width@4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -7722,7 +9359,14 @@ "version": "6.0.1", "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, + "requires": { + "ansi-regex": "^5.0.1" + } + }, + "strip-ansi-cjs": { + "version": "npm:strip-ansi@6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "requires": { "ansi-regex": "^5.0.1" } @@ -7777,6 +9421,49 @@ "get-port": "^3.1.0" } }, + "tar": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.0.tgz", + "integrity": "sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==", + "requires": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "dependencies": { + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "requires": { + "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + } + } + }, + "minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, "then-request": { "version": "6.0.2", "resolved": "https://registry.npmmirror.com/then-request/-/then-request-6.0.2.tgz", @@ -8046,6 +9733,22 @@ "editorconfig": "^0.15.0" } }, + "unique-filename": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "requires": { + "unique-slug": "^4.0.0" + } + }, + "unique-slug": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "requires": { + "imurmurhash": "^0.1.4" + } + }, "universalify": { "version": "2.0.0", "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.0.tgz", @@ -8110,7 +9813,6 @@ "version": "2.0.2", "resolved": "https://registry.npmmirror.com/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "requires": { "isexe": "^2.0.0" } @@ -8142,6 +9844,16 @@ "strip-ansi": "^6.0.0" } }, + "wrap-ansi-cjs": { + "version": "npm:wrap-ansi@7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz", diff --git a/package.json b/package.json index 99faaea..ccc3f16 100644 --- a/package.json +++ b/package.json @@ -41,6 +41,7 @@ "json5": "^2.2.3", "mathjs": "^11.4.0", "mongodb": "^4.17.1", + "node-gyp": "^10.0.1", "ramda": "^0.29.1", "redis": "^4.3.1", "shelljs": "^0.8.5", diff --git a/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts b/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts new file mode 100644 index 0000000..79c06bb --- /dev/null +++ b/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts @@ -0,0 +1,29 @@ +import {ApiCall} from "tsrpc"; +import {ReqOpen, ResOpen} from "../../../shared/protocols/event/xiaofeijingsai/PtlOpen"; +import {PayFun} from "../../../public/pay"; +import {HuoDongFun} from "../../../public/huodongfun"; +import {PublicShared} from "../../../shared/public/public"; + + +export default async function (call: ApiCall) { + // let data = await G.mongodb.cEvent('zhoumolibao').findOne({uid: call.uid, type: 'zhoumolibao'}) + // + let _hd = (await HuoDongFun.gethdList(call, 11))[0] + console.log(_hd) + // + // let payIds = _hd?.data?.gift?.filter(i => i.payId)?.map(i => i.payId) + // let a = [] + let rmbuse = await G.mongodb.collection('rmbuse').aggregate([ + {$match: {isAdd: false}}, + {$group: {_id: "$uid", total: {$sum: "$change"}}}, + {$sort: {total: 1}} + ]).toArray() + + let list: any = rmbuse.map(i => ({...i, total: R.negate(i.total)})) + + let users = await G.mongodb.collection('user').find({uid: {$in: list.map(i => i._id)}}).toArray() + + list = list.map(i => ({...i, player: users.find(v => v.uid == i._id)})) + + call.succ({list}) +} \ No newline at end of file diff --git a/src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts b/src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts new file mode 100644 index 0000000..5145ee7 --- /dev/null +++ b/src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts @@ -0,0 +1,8 @@ +/** + * 消费竞赛 + */ +export type ReqOpen = {}; + +export type ResOpen = { + list: any[] +}; \ No newline at end of file diff --git a/src/shared/protocols/serviceProto.ts b/src/shared/protocols/serviceProto.ts index c60ab37..4bb9ce9 100644 --- a/src/shared/protocols/serviceProto.ts +++ b/src/shared/protocols/serviceProto.ts @@ -80,39 +80,40 @@ import { ReqDuihuan, ResDuihuan } from './event/xianshizhaomu/PtlDuihuan'; import { ReqLottery as ReqLottery_1, ResLottery as ResLottery_1 } from './event/xianshizhaomu/PtlLottery'; import { ReqOpen as ReqOpen_20, ResOpen as ResOpen_20 } from './event/xianshizhaomu/PtlOpen'; import { ReqRec as ReqRec_7, ResRec as ResRec_7 } from './event/xianshizhaomu/PtlRec'; -import { ReqOpen as ReqOpen_21, ResOpen as ResOpen_21 } from './event/xinshoulibao/PtlOpen'; +import { ReqOpen as ReqOpen_21, ResOpen as ResOpen_21 } from './event/xiaofeijingsai/PtlOpen'; +import { ReqOpen as ReqOpen_22, ResOpen as ResOpen_22 } from './event/xinshoulibao/PtlOpen'; import { ReqBuy as ReqBuy_2, ResBuy as ResBuy_2 } from './event/yangchengmubiao/PtlBuy'; -import { ReqOpen as ReqOpen_22, ResOpen as ResOpen_22 } from './event/yangchengmubiao/PtlOpen'; +import { ReqOpen as ReqOpen_23, ResOpen as ResOpen_23 } from './event/yangchengmubiao/PtlOpen'; import { ReqRec as ReqRec_8, ResRec as ResRec_8 } from './event/yangchengmubiao/PtlRec'; -import { ReqOpen as ReqOpen_23, ResOpen as ResOpen_23 } from './event/yibaichou/PtlOpen'; +import { ReqOpen as ReqOpen_24, ResOpen as ResOpen_24 } from './event/yibaichou/PtlOpen'; import { ReqRec as ReqRec_9, ResRec as ResRec_9 } from './event/yibaichou/PtlRec'; import { ReqRecAll, ResRecAll } from './event/yibaichou/PtlRecAll'; -import { ReqOpen as ReqOpen_24, ResOpen as ResOpen_24 } from './event/yuedujijin/PtlOpen'; +import { ReqOpen as ReqOpen_25, ResOpen as ResOpen_25 } from './event/yuedujijin/PtlOpen'; import { ReqRec as ReqRec_10, ResRec as ResRec_10 } from './event/yuedujijin/PtlRec'; import { ReqBuyLv, ResBuyLv } from './event/zhanling/PtlBuyLv'; -import { ReqOpen as ReqOpen_25, ResOpen as ResOpen_25 } from './event/zhanling/PtlOpen'; +import { ReqOpen as ReqOpen_26, ResOpen as ResOpen_26 } from './event/zhanling/PtlOpen'; import { ReqRecPrize as ReqRecPrize_2, ResRecPrize as ResRecPrize_2 } from './event/zhanling/PtlRecPrize'; import { ReqRecTask, ResRecTask } from './event/zhanling/PtlRecTask'; -import { ReqOpen as ReqOpen_26, ResOpen as ResOpen_26 } from './event/zhoulibao/PtlOpen'; -import { ReqOpen as ReqOpen_27, ResOpen as ResOpen_27 } from './event/zhoumolibao/PtlOpen'; +import { ReqOpen as ReqOpen_27, ResOpen as ResOpen_27 } from './event/zhoulibao/PtlOpen'; +import { ReqOpen as ReqOpen_28, ResOpen as ResOpen_28 } from './event/zhoumolibao/PtlOpen'; import { ReqReceive as ReqReceive_3, ResReceive as ResReceive_3 } from './event/zhoumolibao/PtlReceive'; import { ReqBuy as ReqBuy_3, ResBuy as ResBuy_3 } from './event/zixuanlibao/PtlBuy'; -import { ReqOpen as ReqOpen_28, ResOpen as ResOpen_28 } from './event/zixuanlibao/PtlOpen'; +import { ReqOpen as ReqOpen_29, ResOpen as ResOpen_29 } from './event/zixuanlibao/PtlOpen'; import { ReqhdGetList, ReshdGetList } from './eventlist/PtlhdGetList'; import { ReqApply, ResApply } from './friend/PtlApply'; import { ReqDel, ResDel } from './friend/PtlDel'; import { ReqGift, ResGift } from './friend/PtlGift'; import { ReqList, ResList } from './friend/PtlList'; -import { ReqOpen as ReqOpen_29, ResOpen as ResOpen_29 } from './friend/PtlOpen'; +import { ReqOpen as ReqOpen_30, ResOpen as ResOpen_30 } from './friend/PtlOpen'; import { ReqRespond, ResRespond } from './friend/PtlRespond'; import { ReqRmBlackList, ResRmBlackList } from './friend/PtlRmBlackList'; import { ReqSearch, ResSearch } from './friend/PtlSearch'; import { ReqChallenge, ResChallenge } from './ganbutexun/PtlChallenge'; -import { ReqOpen as ReqOpen_30, ResOpen as ResOpen_30 } from './ganbutexun/PtlOpen'; +import { ReqOpen as ReqOpen_31, ResOpen as ResOpen_31 } from './ganbutexun/PtlOpen'; import { ReqFast, ResFast } from './ganhai/PtlFast'; import { ReqFight as ReqFight_1, ResFight as ResFight_1 } from './ganhai/PtlFight'; import { ReqLog, ResLog } from './ganhai/PtlLog'; -import { ReqOpen as ReqOpen_31, ResOpen as ResOpen_31 } from './ganhai/PtlOpen'; +import { ReqOpen as ReqOpen_32, ResOpen as ResOpen_32 } from './ganhai/PtlOpen'; import { ReqRefresh, ResRefresh } from './ganhai/PtlRefresh'; import { ReqRefreshShip, ResRefreshShip } from './ganhai/PtlRefreshShip'; import { ReqSelect as ReqSelect_1, ResSelect as ResSelect_1 } from './ganhai/PtlSelect'; @@ -134,19 +135,19 @@ import { ReqJx, ResJx } from './gonghui/PtlJx'; import { ReqJxOpen, ResJxOpen } from './gonghui/PtlJxOpen'; import { ReqList as ReqList_1, ResList as ResList_1 } from './gonghui/PtlList'; import { ReqManage, ResManage } from './gonghui/PtlManage'; -import { ReqOpen as ReqOpen_32, ResOpen as ResOpen_32 } from './gonghui/PtlOpen'; +import { ReqOpen as ReqOpen_33, ResOpen as ResOpen_33 } from './gonghui/PtlOpen'; import { ReqTanHe, ResTanHe } from './gonghui/PtlTanHe'; import { ReqTaskOpen, ResTaskOpen } from './gonghui/PtlTaskOpen'; import { ReqTaskReceive, ResTaskReceive } from './gonghui/PtlTaskReceive'; import { ReqUpWz, ResUpWz } from './gonghui/PtlUpWz'; import { ReqLottery as ReqLottery_2, ResLottery as ResLottery_2 } from './gonghuibaozang/PtlLottery'; -import { ReqOpen as ReqOpen_33, ResOpen as ResOpen_33 } from './gonghuibaozang/PtlOpen'; +import { ReqOpen as ReqOpen_34, ResOpen as ResOpen_34 } from './gonghuibaozang/PtlOpen'; import { ReqBuy as ReqBuy_4, ResBuy as ResBuy_4 } from './gonglukuangbiao/PtlBuy'; import { ReqFight as ReqFight_2, ResFight as ResFight_2 } from './gonglukuangbiao/PtlFight'; -import { ReqOpen as ReqOpen_34, ResOpen as ResOpen_34 } from './gonglukuangbiao/PtlOpen'; +import { ReqOpen as ReqOpen_35, ResOpen as ResOpen_35 } from './gonglukuangbiao/PtlOpen'; import { ReqRefresh as ReqRefresh_1, ResRefresh as ResRefresh_1 } from './gonglukuangbiao/PtlRefresh'; import { ReqActive, ResActive } from './gongyu/mingdao/PtlActive'; -import { ReqOpen as ReqOpen_35, ResOpen as ResOpen_35 } from './gongyu/mingdao/PtlOpen'; +import { ReqOpen as ReqOpen_36, ResOpen as ResOpen_36 } from './gongyu/mingdao/PtlOpen'; import { ReqRecPrize as ReqRecPrize_3, ResRecPrize as ResRecPrize_3 } from './gongyu/mingdao/PtlRecPrize'; import { ReqRepair, ResRepair } from './gongyu/mingdao/PtlRepair'; import { ReqReset as ReqReset_1, ResReset as ResReset_1 } from './gongyu/xunlianjihua/PtlReset'; @@ -155,14 +156,14 @@ import { ReqSetSkill, ResSetSkill } from './gongyu/zuozhanjihua/PtlSetSkill'; import { ReqBuyNum as ReqBuyNum_1, ResBuyNum as ResBuyNum_1 } from './hbzb/jfs/PtlBuyNum'; import { ReqFight as ReqFight_3, ResFight as ResFight_3 } from './hbzb/jfs/PtlFight'; import { ReqGetLog as ReqGetLog_1, ResGetLog as ResGetLog_1 } from './hbzb/jfs/PtlGetLog'; -import { ReqOpen as ReqOpen_36, ResOpen as ResOpen_36 } from './hbzb/jfs/PtlOpen'; +import { ReqOpen as ReqOpen_37, ResOpen as ResOpen_37 } from './hbzb/jfs/PtlOpen'; import { ReqRec as ReqRec_11, ResRec as ResRec_11 } from './hbzb/jfs/PtlRec'; import { ReqRefresh as ReqRefresh_2, ResRefresh as ResRefresh_2 } from './hbzb/jfs/PtlRefresh'; import { ReqGetStatus, ResGetStatus } from './hbzb/PtlGetStatus'; import { ReqBuyNum as ReqBuyNum_2, ResBuyNum as ResBuyNum_2 } from './hbzb/zbs/PtlBuyNum'; import { ReqFight as ReqFight_4, ResFight as ResFight_4 } from './hbzb/zbs/PtlFight'; import { ReqGetLog as ReqGetLog_2, ResGetLog as ResGetLog_2 } from './hbzb/zbs/PtlGetLog'; -import { ReqOpen as ReqOpen_37, ResOpen as ResOpen_37 } from './hbzb/zbs/PtlOpen'; +import { ReqOpen as ReqOpen_38, ResOpen as ResOpen_38 } from './hbzb/zbs/PtlOpen'; import { ReqRefresh as ReqRefresh_3, ResRefresh as ResRefresh_3 } from './hbzb/zbs/PtlRefresh'; import { ReqAwake, ResAwake } from './hero/PtlAwake'; import { ReqChangePos, ResChangePos } from './hero/PtlChangePos'; @@ -178,16 +179,16 @@ import { ReqGet as ReqGet_2, ResGet as ResGet_2 } from './hongdian/PtlGet'; import { ReqGetList as ReqGetList_4, ResGetList as ResGetList_4 } from './item/PtlGetList'; import { ReqUse, ResUse } from './item/PtlUse'; import { ReqLottery as ReqLottery_3, ResLottery as ResLottery_3 } from './jiaotang/PtlLottery'; -import { ReqOpen as ReqOpen_38, ResOpen as ResOpen_38 } from './jiaotang/PtlOpen'; +import { ReqOpen as ReqOpen_39, ResOpen as ResOpen_39 } from './jiaotang/PtlOpen'; import { ReqLottery as ReqLottery_4, ResLottery as ResLottery_4 } from './jiuba/PtlLottery'; -import { ReqOpen as ReqOpen_39, ResOpen as ResOpen_39 } from './jiuba/PtlOpen'; +import { ReqOpen as ReqOpen_40, ResOpen as ResOpen_40 } from './jiuba/PtlOpen'; import { ReqBuyFightNum, ResBuyFightNum } from './jjc/PtlBuyFightNum'; import { ReqFight as ReqFight_5, ResFight as ResFight_5 } from './jjc/PtlFight'; import { ReqFightLog, ResFightLog } from './jjc/PtlFightLog'; -import { ReqOpen as ReqOpen_40, ResOpen as ResOpen_40 } from './jjc/PtlOpen'; +import { ReqOpen as ReqOpen_41, ResOpen as ResOpen_41 } from './jjc/PtlOpen'; import { ReqReceive as ReqReceive_4, ResReceive as ResReceive_4 } from './jjc/PtlReceive'; import { ReqRefresh as ReqRefresh_4, ResRefresh as ResRefresh_4 } from './jjc/PtlRefresh'; -import { ReqOpen as ReqOpen_41, ResOpen as ResOpen_41 } from './kaifujingsai/PtlOpen'; +import { ReqOpen as ReqOpen_42, ResOpen as ResOpen_42 } from './kaifujingsai/PtlOpen'; import { ReqReceive as ReqReceive_5, ResReceive as ResReceive_5 } from './kaifujingsai/PtlReceive'; import { ReqApply as ReqApply_2, ResApply as ResApply_2 } from './kbzz/PtlApply'; import { ReqAutoApply, ResAutoApply } from './kbzz/PtlAutoApply'; @@ -195,23 +196,23 @@ import { ReqBuyNum as ReqBuyNum_3, ResBuyNum as ResBuyNum_3 } from './kbzz/PtlBu import { ReqFight as ReqFight_6, ResFight as ResFight_6 } from './kbzz/PtlFight'; import { ReqFightLog as ReqFightLog_1, ResFightLog as ResFightLog_1 } from './kbzz/PtlFightLog'; import { ReqGroupState, ResGroupState } from './kbzz/PtlGroupState'; -import { ReqOpen as ReqOpen_42, ResOpen as ResOpen_42 } from './kbzz/PtlOpen'; +import { ReqOpen as ReqOpen_43, ResOpen as ResOpen_43 } from './kbzz/PtlOpen'; import { ReqRecPrize as ReqRecPrize_4, ResRecPrize as ResRecPrize_4 } from './kbzz/PtlRecPrize'; import { ReqRefresh as ReqRefresh_5, ResRefresh as ResRefresh_5 } from './kbzz/PtlRefresh'; import { ReqAddPkNum, ResAddPkNum } from './kuangdong/PtlAddPkNum'; import { ReqGetPrize, ResGetPrize } from './kuangdong/PtlGetPrize'; import { ReqKdInfo, ResKdInfo } from './kuangdong/PtlKdInfo'; import { ReqLog as ReqLog_1, ResLog as ResLog_1 } from './kuangdong/PtlLog'; -import { ReqOpen as ReqOpen_43, ResOpen as ResOpen_43 } from './kuangdong/PtlOpen'; +import { ReqOpen as ReqOpen_44, ResOpen as ResOpen_44 } from './kuangdong/PtlOpen'; import { ReqYanShi, ResYanShi } from './kuangdong/PtlYanShi'; import { ReqZhanLing, ResZhanLing } from './kuangdong/PtlZhanLing'; -import { ReqOpen as ReqOpen_44, ResOpen as ResOpen_44 } from './lingzhulaixi/PtlOpen'; +import { ReqOpen as ReqOpen_45, ResOpen as ResOpen_45 } from './lingzhulaixi/PtlOpen'; import { ReqPkBoss, ResPkBoss } from './lingzhulaixi/PtlPkBoss'; import { ReqPkRank, ResPkRank } from './lingzhulaixi/PtlPkRank'; import { ReqSaoDang, ResSaoDang } from './lingzhulaixi/PtlSaoDang'; import { ReqBuy as ReqBuy_5, ResBuy as ResBuy_5 } from './meirishilian/PtlBuy'; import { ReqFight as ReqFight_7, ResFight as ResFight_7 } from './meirishilian/PtlFight'; -import { ReqOpen as ReqOpen_45, ResOpen as ResOpen_45 } from './meirishilian/PtlOpen'; +import { ReqOpen as ReqOpen_46, ResOpen as ResOpen_46 } from './meirishilian/PtlOpen'; import { MsgBindUid } from './msg_c2s/MsgBindUid'; import { MsgPay } from './msg_c2s/MsgPay'; import { MsgSync } from './msg_c2s/MsgSync'; @@ -242,7 +243,7 @@ import { MsgTaskChange } from './msg_s2c/MsgTaskChange'; import { MsgXianshilibao } from './msg_s2c/MsgXianshilibao'; import { ReqFight as ReqFight_8, ResFight as ResFight_8 } from './pata/PtlFight'; import { ReqGetPrize as ReqGetPrize_1, ResGetPrize as ResGetPrize_1 } from './pata/PtlGetPrize'; -import { ReqOpen as ReqOpen_46, ResOpen as ResOpen_46 } from './pata/PtlOpen'; +import { ReqOpen as ReqOpen_47, ResOpen as ResOpen_47 } from './pata/PtlOpen'; import { ReqSaoDang as ReqSaoDang_1, ResSaoDang as ResSaoDang_1 } from './pata/PtlSaoDang'; import { ReqGetList as ReqGetList_5, ResGetList as ResGetList_5 } from './pay/PtlGetList'; import { ReqGetList as ReqGetList_6, ResGetList as ResGetList_6 } from './peijian/PtlGetList'; @@ -258,14 +259,14 @@ import { ReqUnLock, ResUnLock } from './peijian/PtlUnLock'; import { ReqWear as ReqWear_1, ResWear as ResWear_1 } from './peijian/PtlWear'; import { ReqDeal, ResDeal } from './peijiancangku/PtlDeal'; import { ReqJump, ResJump } from './peijiancangku/PtlJump'; -import { ReqOpen as ReqOpen_47, ResOpen as ResOpen_47 } from './peijiancangku/PtlOpen'; +import { ReqOpen as ReqOpen_48, ResOpen as ResOpen_48 } from './peijiancangku/PtlOpen'; import { ReqBingo, ResBingo } from './PtlBingo'; import { ReqFightTest, ResFightTest } from './PtlFightTest'; import { ReqSyncBtn, ResSyncBtn } from './PtlSyncBtn'; import { ReqTest, ResTest } from './PtlTest'; import { ReqFight as ReqFight_9, ResFight as ResFight_9 } from './qjzzd/PtlFight'; -import { ReqOpen as ReqOpen_48, ResOpen as ResOpen_48 } from './qjzzd/PtlOpen'; -import { ReqOpen as ReqOpen_49, ResOpen as ResOpen_49 } from './rank/PtlOpen'; +import { ReqOpen as ReqOpen_49, ResOpen as ResOpen_49 } from './qjzzd/PtlOpen'; +import { ReqOpen as ReqOpen_50, ResOpen as ResOpen_50 } from './rank/PtlOpen'; import { ReqConcise, ResConcise } from './shiwu/PtlConcise'; import { ReqExtract, ResExtract } from './shiwu/PtlExtract'; import { ReqGetList as ReqGetList_7, ResGetList as ResGetList_7 } from './shiwu/PtlGetList'; @@ -273,20 +274,20 @@ import { ReqLvUp as ReqLvUp_3, ResLvUp as ResLvUp_3 } from './shiwu/PtlLvUp'; import { ReqRecast, ResRecast } from './shiwu/PtlRecast'; import { ReqTakeOff as ReqTakeOff_2, ResTakeOff as ResTakeOff_2 } from './shiwu/PtlTakeOff'; import { ReqWear as ReqWear_2, ResWear as ResWear_2 } from './shiwu/PtlWear'; -import { ReqOpen as ReqOpen_50, ResOpen as ResOpen_50 } from './shootGame/PtlOpen'; +import { ReqOpen as ReqOpen_51, ResOpen as ResOpen_51 } from './shootGame/PtlOpen'; import { ReqRec as ReqRec_13, ResRec as ResRec_13 } from './shootGame/PtlRec'; import { ReqBuy as ReqBuy_6, ResBuy as ResBuy_6 } from './shop/PtlBuy'; -import { ReqOpen as ReqOpen_51, ResOpen as ResOpen_51 } from './shop/PtlOpen'; +import { ReqOpen as ReqOpen_52, ResOpen as ResOpen_52 } from './shop/PtlOpen'; import { ReqRefresh as ReqRefresh_6, ResRefresh as ResRefresh_6 } from './shop/PtlRefresh'; import { ReqGetBoxPrize, ResGetBoxPrize } from './sign/PtlGetBoxPrize'; import { ReqGetPrize as ReqGetPrize_2, ResGetPrize as ResGetPrize_2 } from './sign/PtlGetPrize'; -import { ReqOpen as ReqOpen_52, ResOpen as ResOpen_52 } from './sign/PtlOpen'; +import { ReqOpen as ReqOpen_53, ResOpen as ResOpen_53 } from './sign/PtlOpen'; import { ReqAim, ResAim } from './slzd/PtlAim'; import { ReqBuyNum as ReqBuyNum_4, ResBuyNum as ResBuyNum_4 } from './slzd/PtlBuyNum'; import { ReqFight as ReqFight_10, ResFight as ResFight_10 } from './slzd/PtlFight'; import { ReqFightLog as ReqFightLog_2, ResFightLog as ResFightLog_2 } from './slzd/PtlFightLog'; import { ReqMyRank, ResMyRank } from './slzd/PtlMyRank'; -import { ReqOpen as ReqOpen_53, ResOpen as ResOpen_53 } from './slzd/PtlOpen'; +import { ReqOpen as ReqOpen_54, ResOpen as ResOpen_54 } from './slzd/PtlOpen'; import { ReqOpenFort, ResOpenFort } from './slzd/PtlOpenFort'; import { ReqRec as ReqRec_14, ResRec as ResRec_14 } from './slzd/PtlRec'; import { ReqRefresh as ReqRefresh_7, ResRefresh as ResRefresh_7 } from './slzd/PtlRefresh'; @@ -295,11 +296,11 @@ import { ReqEvent, ResEvent } from './tanxian/PtlEvent'; import { ReqFastGuaJi, ResFastGuaJi } from './tanxian/PtlFastGuaJi'; import { ReqFight as ReqFight_11, ResFight as ResFight_11 } from './tanxian/PtlFight'; import { ReqGuaJi, ResGuaJi } from './tanxian/PtlGuaJi'; -import { ReqOpen as ReqOpen_54, ResOpen as ResOpen_54 } from './tanxian/PtlOpen'; +import { ReqOpen as ReqOpen_55, ResOpen as ResOpen_55 } from './tanxian/PtlOpen'; import { ReqReceive as ReqReceive_6, ResReceive as ResReceive_6 } from './tanxian/PtlReceive'; import { ReqAllFinsh, ResAllFinsh } from './task/PtlAllFinsh'; import { ReqFinsh, ResFinsh } from './task/PtlFinsh'; -import { ReqOpen as ReqOpen_55, ResOpen as ResOpen_55 } from './task/PtlOpen'; +import { ReqOpen as ReqOpen_56, ResOpen as ResOpen_56 } from './task/PtlOpen'; import { ReqCDKEY, ResCDKEY } from './user/PtlCDKEY'; import { ReqChangeInfo, ResChangeInfo } from './user/PtlChangeInfo'; import { ReqChangeName, ResChangeName } from './user/PtlChangeName'; @@ -315,7 +316,7 @@ import { ReqRenownOpen, ResRenownOpen } from './user/PtlRenownOpen'; import { ReqTujian, ResTujian } from './user/PtlTujian'; import { ReqDecompose, ResDecompose } from './weixiuchang/PtlDecompose'; import { ReqExchange, ResExchange } from './weixiuchang/PtlExchange'; -import { ReqOpen as ReqOpen_56, ResOpen as ResOpen_56 } from './weixiuchang/PtlOpen'; +import { ReqOpen as ReqOpen_57, ResOpen as ResOpen_57 } from './weixiuchang/PtlOpen'; import { ReqUpLv, ResUpLv } from './weixiuchang/PtlUpLv'; import { ReqUpStar, ResUpStar } from './weixiuchang/PtlUpStar'; import { ReqAutoBaoMing, ResAutoBaoMing } from './wzry/PtlAutoBaoMing'; @@ -326,7 +327,7 @@ import { ReqDldFight, ResDldFight } from './wzry/PtlDldFight'; import { ReqDldRefre, ResDldRefre } from './wzry/PtlDldRefre'; import { ReqJingCai, ResJingCai } from './wzry/PtlJingCai'; import { ReqJingCaiOpen, ResJingCaiOpen } from './wzry/PtlJingCaiOpen'; -import { ReqOpen as ReqOpen_57, ResOpen as ResOpen_57 } from './wzry/PtlOpen'; +import { ReqOpen as ReqOpen_58, ResOpen as ResOpen_58 } from './wzry/PtlOpen'; import { ReqUpdateFight, ResUpdateFight } from './wzry/PtlUpdateFight'; import { ReqWzzd, ResWzzd } from './wzry/PtlWzzd'; import { ReqZuanShiOpen, ResZuanShiOpen } from './wzry/PtlZuanShiOpen'; @@ -334,7 +335,7 @@ import { ReqAllGet, ResAllGet } from './xstask/PtlAllGet'; import { ReqGet as ReqGet_3, ResGet as ResGet_3 } from './xstask/PtlGet'; import { ReqLvUp as ReqLvUp_4, ResLvUp as ResLvUp_4 } from './xstask/PtlLvUp'; import { ReqOnekeyReceive, ResOnekeyReceive } from './xstask/PtlOnekeyReceive'; -import { ReqOpen as ReqOpen_58, ResOpen as ResOpen_58 } from './xstask/PtlOpen'; +import { ReqOpen as ReqOpen_59, ResOpen as ResOpen_59 } from './xstask/PtlOpen'; import { ReqReceive as ReqReceive_7, ResReceive as ResReceive_7 } from './xstask/PtlReceive'; import { ReqRefresh as ReqRefresh_8, ResRefresh as ResRefresh_8 } from './xstask/PtlRefresh'; import { ReqHandle, ResHandle } from './yongbingzhuzhan/PtlHandle'; @@ -668,25 +669,29 @@ export interface ServiceType { req: ReqRec_7, res: ResRec_7 }, - "event/xinshoulibao/Open": { + "event/xiaofeijingsai/Open": { req: ReqOpen_21, res: ResOpen_21 }, + "event/xinshoulibao/Open": { + req: ReqOpen_22, + res: ResOpen_22 + }, "event/yangchengmubiao/Buy": { req: ReqBuy_2, res: ResBuy_2 }, "event/yangchengmubiao/Open": { - req: ReqOpen_22, - res: ResOpen_22 + req: ReqOpen_23, + res: ResOpen_23 }, "event/yangchengmubiao/Rec": { req: ReqRec_8, res: ResRec_8 }, "event/yibaichou/Open": { - req: ReqOpen_23, - res: ResOpen_23 + req: ReqOpen_24, + res: ResOpen_24 }, "event/yibaichou/Rec": { req: ReqRec_9, @@ -697,8 +702,8 @@ export interface ServiceType { res: ResRecAll }, "event/yuedujijin/Open": { - req: ReqOpen_24, - res: ResOpen_24 + req: ReqOpen_25, + res: ResOpen_25 }, "event/yuedujijin/Rec": { req: ReqRec_10, @@ -709,8 +714,8 @@ export interface ServiceType { res: ResBuyLv }, "event/zhanling/Open": { - req: ReqOpen_25, - res: ResOpen_25 + req: ReqOpen_26, + res: ResOpen_26 }, "event/zhanling/RecPrize": { req: ReqRecPrize_2, @@ -721,13 +726,13 @@ export interface ServiceType { res: ResRecTask }, "event/zhoulibao/Open": { - req: ReqOpen_26, - res: ResOpen_26 - }, - "event/zhoumolibao/Open": { req: ReqOpen_27, res: ResOpen_27 }, + "event/zhoumolibao/Open": { + req: ReqOpen_28, + res: ResOpen_28 + }, "event/zhoumolibao/Receive": { req: ReqReceive_3, res: ResReceive_3 @@ -737,8 +742,8 @@ export interface ServiceType { res: ResBuy_3 }, "event/zixuanlibao/Open": { - req: ReqOpen_28, - res: ResOpen_28 + req: ReqOpen_29, + res: ResOpen_29 }, "eventlist/hdGetList": { req: ReqhdGetList, @@ -761,8 +766,8 @@ export interface ServiceType { res: ResList }, "friend/Open": { - req: ReqOpen_29, - res: ResOpen_29 + req: ReqOpen_30, + res: ResOpen_30 }, "friend/Respond": { req: ReqRespond, @@ -781,8 +786,8 @@ export interface ServiceType { res: ResChallenge }, "ganbutexun/Open": { - req: ReqOpen_30, - res: ResOpen_30 + req: ReqOpen_31, + res: ResOpen_31 }, "ganhai/Fast": { req: ReqFast, @@ -797,8 +802,8 @@ export interface ServiceType { res: ResLog }, "ganhai/Open": { - req: ReqOpen_31, - res: ResOpen_31 + req: ReqOpen_32, + res: ResOpen_32 }, "ganhai/Refresh": { req: ReqRefresh, @@ -885,8 +890,8 @@ export interface ServiceType { res: ResManage }, "gonghui/Open": { - req: ReqOpen_32, - res: ResOpen_32 + req: ReqOpen_33, + res: ResOpen_33 }, "gonghui/TanHe": { req: ReqTanHe, @@ -909,8 +914,8 @@ export interface ServiceType { res: ResLottery_2 }, "gonghuibaozang/Open": { - req: ReqOpen_33, - res: ResOpen_33 + req: ReqOpen_34, + res: ResOpen_34 }, "gonglukuangbiao/Buy": { req: ReqBuy_4, @@ -921,8 +926,8 @@ export interface ServiceType { res: ResFight_2 }, "gonglukuangbiao/Open": { - req: ReqOpen_34, - res: ResOpen_34 + req: ReqOpen_35, + res: ResOpen_35 }, "gonglukuangbiao/Refresh": { req: ReqRefresh_1, @@ -933,8 +938,8 @@ export interface ServiceType { res: ResActive }, "gongyu/mingdao/Open": { - req: ReqOpen_35, - res: ResOpen_35 + req: ReqOpen_36, + res: ResOpen_36 }, "gongyu/mingdao/RecPrize": { req: ReqRecPrize_3, @@ -969,8 +974,8 @@ export interface ServiceType { res: ResGetLog_1 }, "hbzb/jfs/Open": { - req: ReqOpen_36, - res: ResOpen_36 + req: ReqOpen_37, + res: ResOpen_37 }, "hbzb/jfs/Rec": { req: ReqRec_11, @@ -997,8 +1002,8 @@ export interface ServiceType { res: ResGetLog_2 }, "hbzb/zbs/Open": { - req: ReqOpen_37, - res: ResOpen_37 + req: ReqOpen_38, + res: ResOpen_38 }, "hbzb/zbs/Refresh": { req: ReqRefresh_3, @@ -1061,16 +1066,16 @@ export interface ServiceType { res: ResLottery_3 }, "jiaotang/Open": { - req: ReqOpen_38, - res: ResOpen_38 + req: ReqOpen_39, + res: ResOpen_39 }, "jiuba/Lottery": { req: ReqLottery_4, res: ResLottery_4 }, "jiuba/Open": { - req: ReqOpen_39, - res: ResOpen_39 + req: ReqOpen_40, + res: ResOpen_40 }, "jjc/BuyFightNum": { req: ReqBuyFightNum, @@ -1085,8 +1090,8 @@ export interface ServiceType { res: ResFightLog }, "jjc/Open": { - req: ReqOpen_40, - res: ResOpen_40 + req: ReqOpen_41, + res: ResOpen_41 }, "jjc/Receive": { req: ReqReceive_4, @@ -1097,8 +1102,8 @@ export interface ServiceType { res: ResRefresh_4 }, "kaifujingsai/Open": { - req: ReqOpen_41, - res: ResOpen_41 + req: ReqOpen_42, + res: ResOpen_42 }, "kaifujingsai/Receive": { req: ReqReceive_5, @@ -1129,8 +1134,8 @@ export interface ServiceType { res: ResGroupState }, "kbzz/Open": { - req: ReqOpen_42, - res: ResOpen_42 + req: ReqOpen_43, + res: ResOpen_43 }, "kbzz/RecPrize": { req: ReqRecPrize_4, @@ -1157,8 +1162,8 @@ export interface ServiceType { res: ResLog_1 }, "kuangdong/Open": { - req: ReqOpen_43, - res: ResOpen_43 + req: ReqOpen_44, + res: ResOpen_44 }, "kuangdong/YanShi": { req: ReqYanShi, @@ -1169,8 +1174,8 @@ export interface ServiceType { res: ResZhanLing }, "lingzhulaixi/Open": { - req: ReqOpen_44, - res: ResOpen_44 + req: ReqOpen_45, + res: ResOpen_45 }, "lingzhulaixi/PkBoss": { req: ReqPkBoss, @@ -1193,8 +1198,8 @@ export interface ServiceType { res: ResFight_7 }, "meirishilian/Open": { - req: ReqOpen_45, - res: ResOpen_45 + req: ReqOpen_46, + res: ResOpen_46 }, "pata/Fight": { req: ReqFight_8, @@ -1205,8 +1210,8 @@ export interface ServiceType { res: ResGetPrize_1 }, "pata/Open": { - req: ReqOpen_46, - res: ResOpen_46 + req: ReqOpen_47, + res: ResOpen_47 }, "pata/SaoDang": { req: ReqSaoDang_1, @@ -1269,8 +1274,8 @@ export interface ServiceType { res: ResJump }, "peijiancangku/Open": { - req: ReqOpen_47, - res: ResOpen_47 + req: ReqOpen_48, + res: ResOpen_48 }, "Bingo": { req: ReqBingo, @@ -1293,13 +1298,13 @@ export interface ServiceType { res: ResFight_9 }, "qjzzd/Open": { - req: ReqOpen_48, - res: ResOpen_48 - }, - "rank/Open": { req: ReqOpen_49, res: ResOpen_49 }, + "rank/Open": { + req: ReqOpen_50, + res: ResOpen_50 + }, "shiwu/Concise": { req: ReqConcise, res: ResConcise @@ -1329,8 +1334,8 @@ export interface ServiceType { res: ResWear_2 }, "shootGame/Open": { - req: ReqOpen_50, - res: ResOpen_50 + req: ReqOpen_51, + res: ResOpen_51 }, "shootGame/Rec": { req: ReqRec_13, @@ -1341,8 +1346,8 @@ export interface ServiceType { res: ResBuy_6 }, "shop/Open": { - req: ReqOpen_51, - res: ResOpen_51 + req: ReqOpen_52, + res: ResOpen_52 }, "shop/Refresh": { req: ReqRefresh_6, @@ -1357,8 +1362,8 @@ export interface ServiceType { res: ResGetPrize_2 }, "sign/Open": { - req: ReqOpen_52, - res: ResOpen_52 + req: ReqOpen_53, + res: ResOpen_53 }, "slzd/Aim": { req: ReqAim, @@ -1381,8 +1386,8 @@ export interface ServiceType { res: ResMyRank }, "slzd/Open": { - req: ReqOpen_53, - res: ResOpen_53 + req: ReqOpen_54, + res: ResOpen_54 }, "slzd/OpenFort": { req: ReqOpenFort, @@ -1417,8 +1422,8 @@ export interface ServiceType { res: ResGuaJi }, "tanxian/Open": { - req: ReqOpen_54, - res: ResOpen_54 + req: ReqOpen_55, + res: ResOpen_55 }, "tanxian/Receive": { req: ReqReceive_6, @@ -1433,8 +1438,8 @@ export interface ServiceType { res: ResFinsh }, "task/Open": { - req: ReqOpen_55, - res: ResOpen_55 + req: ReqOpen_56, + res: ResOpen_56 }, "user/CDKEY": { req: ReqCDKEY, @@ -1497,8 +1502,8 @@ export interface ServiceType { res: ResExchange }, "weixiuchang/Open": { - req: ReqOpen_56, - res: ResOpen_56 + req: ReqOpen_57, + res: ResOpen_57 }, "weixiuchang/UpLv": { req: ReqUpLv, @@ -1541,8 +1546,8 @@ export interface ServiceType { res: ResJingCaiOpen }, "wzry/Open": { - req: ReqOpen_57, - res: ResOpen_57 + req: ReqOpen_58, + res: ResOpen_58 }, "wzry/UpdateFight": { req: ReqUpdateFight, @@ -1573,8 +1578,8 @@ export interface ServiceType { res: ResOnekeyReceive }, "xstask/Open": { - req: ReqOpen_58, - res: ResOpen_58 + req: ReqOpen_59, + res: ResOpen_59 }, "xstask/Receive": { req: ReqReceive_7, @@ -2042,41 +2047,46 @@ export const serviceProto: ServiceProto = { }, { "id": 81, - "name": "event/xinshoulibao/Open", + "name": "event/xiaofeijingsai/Open", "type": "api" }, { "id": 82, - "name": "event/yangchengmubiao/Buy", + "name": "event/xinshoulibao/Open", "type": "api" }, { "id": 83, - "name": "event/yangchengmubiao/Open", + "name": "event/yangchengmubiao/Buy", "type": "api" }, { "id": 84, - "name": "event/yangchengmubiao/Rec", + "name": "event/yangchengmubiao/Open", "type": "api" }, { "id": 85, - "name": "event/yibaichou/Open", + "name": "event/yangchengmubiao/Rec", "type": "api" }, { "id": 86, - "name": "event/yibaichou/Rec", + "name": "event/yibaichou/Open", "type": "api" }, { "id": 87, - "name": "event/yibaichou/RecAll", + "name": "event/yibaichou/Rec", "type": "api" }, { "id": 88, + "name": "event/yibaichou/RecAll", + "type": "api" + }, + { + "id": 89, "name": "event/yuedujijin/Open", "type": "api", "conf": { @@ -2084,157 +2094,157 @@ export const serviceProto: ServiceProto = { } }, { - "id": 89, + "id": 90, "name": "event/yuedujijin/Rec", "type": "api" }, { - "id": 90, + "id": 91, "name": "event/zhanling/BuyLv", "type": "api" }, { - "id": 91, + "id": 92, "name": "event/zhanling/Open", "type": "api" }, { - "id": 92, + "id": 93, "name": "event/zhanling/RecPrize", "type": "api" }, { - "id": 93, + "id": 94, "name": "event/zhanling/RecTask", "type": "api" }, { - "id": 94, + "id": 95, "name": "event/zhoulibao/Open", "type": "api" }, { - "id": 95, + "id": 96, "name": "event/zhoumolibao/Open", "type": "api" }, { - "id": 96, + "id": 97, "name": "event/zhoumolibao/Receive", "type": "api" }, { - "id": 97, + "id": 98, "name": "event/zixuanlibao/Buy", "type": "api" }, { - "id": 98, + "id": 99, "name": "event/zixuanlibao/Open", "type": "api" }, { - "id": 99, + "id": 100, "name": "eventlist/hdGetList", "type": "api" }, { - "id": 100, + "id": 101, "name": "friend/Apply", "type": "api" }, { - "id": 101, + "id": 102, "name": "friend/Del", "type": "api" }, { - "id": 102, + "id": 103, "name": "friend/Gift", "type": "api" }, { - "id": 103, + "id": 104, "name": "friend/List", "type": "api" }, { - "id": 104, + "id": 105, "name": "friend/Open", "type": "api" }, { - "id": 105, + "id": 106, "name": "friend/Respond", "type": "api" }, { - "id": 106, + "id": 107, "name": "friend/RmBlackList", "type": "api" }, { - "id": 107, + "id": 108, "name": "friend/Search", "type": "api" }, { - "id": 108, + "id": 109, "name": "ganbutexun/Challenge", "type": "api" }, { - "id": 109, + "id": 110, "name": "ganbutexun/Open", "type": "api" }, { - "id": 110, + "id": 111, "name": "ganhai/Fast", "type": "api" }, { - "id": 111, + "id": 112, "name": "ganhai/Fight", "type": "api" }, { - "id": 112, + "id": 113, "name": "ganhai/Log", "type": "api" }, { - "id": 113, + "id": 114, "name": "ganhai/Open", "type": "api" }, { - "id": 114, + "id": 115, "name": "ganhai/Refresh", "type": "api" }, { - "id": 115, + "id": 116, "name": "ganhai/RefreshShip", "type": "api" }, { - "id": 116, + "id": 117, "name": "ganhai/Select", "type": "api" }, { - "id": 117, + "id": 118, "name": "gmapi/Gift", "type": "api" }, { - "id": 118, + "id": 119, "name": "gmapi/Post", "type": "api" }, { - "id": 119, + "id": 120, "name": "gonghui/Apply", "type": "api", "conf": { @@ -2244,7 +2254,7 @@ export const serviceProto: ServiceProto = { } }, { - "id": 120, + "id": 121, "name": "gonghui/ApplyAll", "type": "api", "conf": { @@ -2254,7 +2264,7 @@ export const serviceProto: ServiceProto = { } }, { - "id": 121, + "id": 122, "name": "gonghui/ApplyList", "type": "api", "conf": { @@ -2264,7 +2274,7 @@ export const serviceProto: ServiceProto = { } }, { - "id": 122, + "id": 123, "name": "gonghui/Change", "type": "api", "conf": { @@ -2274,12 +2284,12 @@ export const serviceProto: ServiceProto = { } }, { - "id": 123, + "id": 124, "name": "gonghui/Create", "type": "api" }, { - "id": 124, + "id": 125, "name": "gonghui/Dissolve", "type": "api", "conf": { @@ -2289,7 +2299,7 @@ export const serviceProto: ServiceProto = { } }, { - "id": 125, + "id": 126, "name": "gonghui/Exit", "type": "api", "conf": { @@ -2299,12 +2309,12 @@ export const serviceProto: ServiceProto = { } }, { - "id": 126, + "id": 127, "name": "gonghui/FbBuyNum", "type": "api" }, { - "id": 127, + "id": 128, "name": "gonghui/FbFight", "type": "api", "conf": { @@ -2314,7 +2324,7 @@ export const serviceProto: ServiceProto = { } }, { - "id": 128, + "id": 129, "name": "gonghui/FbOpen", "type": "api", "conf": { @@ -2324,17 +2334,17 @@ export const serviceProto: ServiceProto = { } }, { - "id": 129, + "id": 130, "name": "gonghui/GetList", "type": "api" }, { - "id": 130, + "id": 131, "name": "gonghui/Join", "type": "api" }, { - "id": 131, + "id": 132, "name": "gonghui/Jx", "type": "api", "conf": { @@ -2344,7 +2354,7 @@ export const serviceProto: ServiceProto = { } }, { - "id": 132, + "id": 133, "name": "gonghui/JxOpen", "type": "api", "conf": { @@ -2354,7 +2364,7 @@ export const serviceProto: ServiceProto = { } }, { - "id": 133, + "id": 134, "name": "gonghui/List", "type": "api", "conf": { @@ -2364,7 +2374,7 @@ export const serviceProto: ServiceProto = { } }, { - "id": 134, + "id": 135, "name": "gonghui/Manage", "type": "api", "conf": { @@ -2374,7 +2384,7 @@ export const serviceProto: ServiceProto = { } }, { - "id": 135, + "id": 136, "name": "gonghui/Open", "type": "api", "conf": { @@ -2384,7 +2394,7 @@ export const serviceProto: ServiceProto = { } }, { - "id": 136, + "id": 137, "name": "gonghui/TanHe", "type": "api", "conf": { @@ -2394,7 +2404,7 @@ export const serviceProto: ServiceProto = { } }, { - "id": 137, + "id": 138, "name": "gonghui/TaskOpen", "type": "api", "conf": { @@ -2404,7 +2414,7 @@ export const serviceProto: ServiceProto = { } }, { - "id": 138, + "id": 139, "name": "gonghui/TaskReceive", "type": "api", "conf": { @@ -2414,7 +2424,7 @@ export const serviceProto: ServiceProto = { } }, { - "id": 139, + "id": 140, "name": "gonghui/UpWz", "type": "api", "conf": { @@ -2424,137 +2434,137 @@ export const serviceProto: ServiceProto = { } }, { - "id": 140, + "id": 141, "name": "gonghuibaozang/Lottery", "type": "api" }, { - "id": 141, + "id": 142, "name": "gonghuibaozang/Open", "type": "api" }, { - "id": 142, + "id": 143, "name": "gonglukuangbiao/Buy", "type": "api" }, { - "id": 143, + "id": 144, "name": "gonglukuangbiao/Fight", "type": "api" }, { - "id": 144, + "id": 145, "name": "gonglukuangbiao/Open", "type": "api" }, { - "id": 145, + "id": 146, "name": "gonglukuangbiao/Refresh", "type": "api" }, { - "id": 146, + "id": 147, "name": "gongyu/mingdao/Active", "type": "api" }, { - "id": 147, + "id": 148, "name": "gongyu/mingdao/Open", "type": "api" }, { - "id": 148, + "id": 149, "name": "gongyu/mingdao/RecPrize", "type": "api" }, { - "id": 149, + "id": 150, "name": "gongyu/mingdao/Repair", "type": "api" }, { - "id": 150, + "id": 151, "name": "gongyu/xunlianjihua/Reset", "type": "api" }, { - "id": 151, + "id": 152, "name": "gongyu/xunlianjihua/UpSkill", "type": "api" }, { - "id": 152, + "id": 153, "name": "gongyu/zuozhanjihua/SetSkill", "type": "api" }, { - "id": 153, + "id": 154, "name": "hbzb/jfs/BuyNum", "type": "api" }, { - "id": 154, + "id": 155, "name": "hbzb/jfs/Fight", "type": "api" }, { - "id": 155, + "id": 156, "name": "hbzb/jfs/GetLog", "type": "api" }, { - "id": 156, + "id": 157, "name": "hbzb/jfs/Open", "type": "api" }, { - "id": 157, + "id": 158, "name": "hbzb/jfs/Rec", "type": "api" }, { - "id": 158, + "id": 159, "name": "hbzb/jfs/Refresh", "type": "api" }, { - "id": 159, + "id": 160, "name": "hbzb/GetStatus", "type": "api" }, { - "id": 160, + "id": 161, "name": "hbzb/zbs/BuyNum", "type": "api" }, { - "id": 161, + "id": 162, "name": "hbzb/zbs/Fight", "type": "api" }, { - "id": 162, + "id": 163, "name": "hbzb/zbs/GetLog", "type": "api" }, { - "id": 163, + "id": 164, "name": "hbzb/zbs/Open", "type": "api" }, { - "id": 164, + "id": 165, "name": "hbzb/zbs/Refresh", "type": "api" }, { - "id": 165, + "id": 166, "name": "hero/Awake", "type": "api" }, { - "id": 166, + "id": 167, "name": "hero/ChangePos", "type": "api", "conf": { @@ -2562,17 +2572,17 @@ export const serviceProto: ServiceProto = { } }, { - "id": 167, + "id": 168, "name": "hero/GetList", "type": "api" }, { - "id": 168, + "id": 169, "name": "hero/JinJie", "type": "api" }, { - "id": 169, + "id": 170, "name": "hero/LvUp", "type": "api", "conf": { @@ -2580,32 +2590,32 @@ export const serviceProto: ServiceProto = { } }, { - "id": 170, + "id": 171, "name": "hero/Potency", "type": "api" }, { - "id": 171, + "id": 172, "name": "hero/Rec", "type": "api" }, { - "id": 172, + "id": 173, "name": "hero/Reset", "type": "api" }, { - "id": 173, + "id": 174, "name": "hero/Talent", "type": "api" }, { - "id": 174, + "id": 175, "name": "hero/WeaponUp", "type": "api" }, { - "id": 175, + "id": 176, "name": "hongdian/Get", "type": "api", "conf": { @@ -2613,117 +2623,117 @@ export const serviceProto: ServiceProto = { } }, { - "id": 176, + "id": 177, "name": "item/GetList", "type": "api" }, { - "id": 177, + "id": 178, "name": "item/Use", "type": "api" }, { - "id": 178, + "id": 179, "name": "jiaotang/Lottery", "type": "api" }, { - "id": 179, + "id": 180, "name": "jiaotang/Open", "type": "api" }, { - "id": 180, + "id": 181, "name": "jiuba/Lottery", "type": "api" }, { - "id": 181, + "id": 182, "name": "jiuba/Open", "type": "api" }, { - "id": 182, + "id": 183, "name": "jjc/BuyFightNum", "type": "api" }, { - "id": 183, + "id": 184, "name": "jjc/Fight", "type": "api" }, { - "id": 184, + "id": 185, "name": "jjc/FightLog", "type": "api" }, { - "id": 185, + "id": 186, "name": "jjc/Open", "type": "api" }, { - "id": 186, + "id": 187, "name": "jjc/Receive", "type": "api" }, { - "id": 187, + "id": 188, "name": "jjc/Refresh", "type": "api" }, { - "id": 188, + "id": 189, "name": "kaifujingsai/Open", "type": "api" }, { - "id": 189, + "id": 190, "name": "kaifujingsai/Receive", "type": "api" }, { - "id": 190, + "id": 191, "name": "kbzz/Apply", "type": "api" }, { - "id": 191, + "id": 192, "name": "kbzz/AutoApply", "type": "api" }, { - "id": 192, + "id": 193, "name": "kbzz/BuyNum", "type": "api" }, { - "id": 193, + "id": 194, "name": "kbzz/Fight", "type": "api" }, { - "id": 194, + "id": 195, "name": "kbzz/FightLog", "type": "api" }, { - "id": 195, + "id": 196, "name": "kbzz/GroupState", "type": "api" }, { - "id": 196, + "id": 197, "name": "kbzz/Open", "type": "api" }, { - "id": 197, + "id": 198, "name": "kbzz/RecPrize", "type": "api" }, { - "id": 198, + "id": 199, "name": "kbzz/Refresh", "type": "api", "conf": { @@ -2731,282 +2741,282 @@ export const serviceProto: ServiceProto = { } }, { - "id": 199, + "id": 200, "name": "kuangdong/AddPkNum", "type": "api" }, { - "id": 200, + "id": 201, "name": "kuangdong/GetPrize", "type": "api" }, { - "id": 201, + "id": 202, "name": "kuangdong/KdInfo", "type": "api" }, { - "id": 202, + "id": 203, "name": "kuangdong/Log", "type": "api" }, { - "id": 203, + "id": 204, "name": "kuangdong/Open", "type": "api" }, { - "id": 204, + "id": 205, "name": "kuangdong/YanShi", "type": "api" }, { - "id": 205, + "id": 206, "name": "kuangdong/ZhanLing", "type": "api" }, { - "id": 206, + "id": 207, "name": "lingzhulaixi/Open", "type": "api" }, { - "id": 207, + "id": 208, "name": "lingzhulaixi/PkBoss", "type": "api" }, { - "id": 208, + "id": 209, "name": "lingzhulaixi/PkRank", "type": "api" }, { - "id": 209, + "id": 210, "name": "lingzhulaixi/SaoDang", "type": "api" }, { - "id": 210, + "id": 211, "name": "meirishilian/Buy", "type": "api" }, { - "id": 211, + "id": 212, "name": "meirishilian/Fight", "type": "api" }, { - "id": 212, + "id": 213, "name": "meirishilian/Open", "type": "api" }, { - "id": 213, + "id": 214, "name": "msg_c2s/BindUid", "type": "msg" }, { - "id": 214, + "id": 215, "name": "msg_c2s/Pay", "type": "msg" }, { - "id": 215, + "id": 216, "name": "msg_c2s/Sync", "type": "msg" }, { - "id": 216, + "id": 217, "name": "msg_s2c/Chat", "type": "msg" }, { - "id": 217, + "id": 218, "name": "msg_s2c/ChatHelp", "type": "msg" }, { - "id": 218, + "id": 219, "name": "msg_s2c/Collection", "type": "msg" }, { - "id": 219, + "id": 220, "name": "msg_s2c/Email", "type": "msg" }, { - "id": 220, + "id": 221, "name": "msg_s2c/EmailDel", "type": "msg" }, { - "id": 221, + "id": 222, "name": "msg_s2c/EquipChange", "type": "msg" }, { - "id": 222, + "id": 223, "name": "msg_s2c/Friend", "type": "msg" }, { - "id": 223, + "id": 224, "name": "msg_s2c/GhChange", "type": "msg" }, { - "id": 224, + "id": 225, "name": "msg_s2c/GongHuiBaoZang", "type": "msg" }, { - "id": 225, + "id": 226, "name": "msg_s2c/HeroChange", "type": "msg" }, { - "id": 226, + "id": 227, "name": "msg_s2c/HongDianChange", "type": "msg" }, { - "id": 227, + "id": 228, "name": "msg_s2c/ItemChange", "type": "msg" }, { - "id": 228, + "id": 229, "name": "msg_s2c/LoginQueue", "type": "msg" }, { - "id": 229, + "id": 230, "name": "msg_s2c/LshdChange", "type": "msg" }, { - "id": 230, + "id": 231, "name": "msg_s2c/NewDay", "type": "msg" }, { - "id": 231, + "id": 232, "name": "msg_s2c/OtherLogin", "type": "msg" }, { - "id": 232, + "id": 233, "name": "msg_s2c/PayChange", "type": "msg" }, { - "id": 233, + "id": 234, "name": "msg_s2c/PayResult", "type": "msg" }, { - "id": 234, + "id": 235, "name": "msg_s2c/PeijianChange", "type": "msg" }, { - "id": 235, + "id": 236, "name": "msg_s2c/PlayerChange", "type": "msg" }, { - "id": 236, + "id": 237, "name": "msg_s2c/Private", "type": "msg" }, { - "id": 237, + "id": 238, "name": "msg_s2c/SendGift", "type": "msg" }, { - "id": 238, + "id": 239, "name": "msg_s2c/ShiwuChange", "type": "msg" }, { - "id": 239, + "id": 240, "name": "msg_s2c/TaskChange", "type": "msg" }, { - "id": 240, + "id": 241, "name": "msg_s2c/Xianshilibao", "type": "msg" }, { - "id": 241, + "id": 242, "name": "pata/Fight", "type": "api" }, { - "id": 242, + "id": 243, "name": "pata/GetPrize", "type": "api" }, { - "id": 243, + "id": 244, "name": "pata/Open", "type": "api" }, { - "id": 244, + "id": 245, "name": "pata/SaoDang", "type": "api" }, { - "id": 245, + "id": 246, "name": "pay/GetList", "type": "api" }, { - "id": 246, + "id": 247, "name": "peijian/GetList", "type": "api" }, { - "id": 247, + "id": 248, "name": "peijian/JingLian", "type": "api" }, { - "id": 248, + "id": 249, "name": "peijian/JinJie", "type": "api" }, { - "id": 249, + "id": 250, "name": "peijian/LvUp", "type": "api" }, { - "id": 250, + "id": 251, "name": "peijian/OneKeyLvUp", "type": "api" }, { - "id": 251, + "id": 252, "name": "peijian/OneKeyWear", "type": "api" }, { - "id": 252, + "id": 253, "name": "peijian/Reset", "type": "api" }, { - "id": 253, + "id": 254, "name": "peijian/Rm", "type": "api" }, { - "id": 254, + "id": 255, "name": "peijian/TakeOff", "type": "api", "conf": { @@ -3014,32 +3024,32 @@ export const serviceProto: ServiceProto = { } }, { - "id": 255, + "id": 256, "name": "peijian/UnLock", "type": "api" }, { - "id": 256, + "id": 257, "name": "peijian/Wear", "type": "api" }, { - "id": 257, + "id": 258, "name": "peijiancangku/Deal", "type": "api" }, { - "id": 258, + "id": 259, "name": "peijiancangku/Jump", "type": "api" }, { - "id": 259, + "id": 260, "name": "peijiancangku/Open", "type": "api" }, { - "id": 260, + "id": 261, "name": "Bingo", "type": "api", "conf": { @@ -3047,137 +3057,137 @@ export const serviceProto: ServiceProto = { } }, { - "id": 261, + "id": 262, "name": "FightTest", "type": "api" }, { - "id": 262, + "id": 263, "name": "SyncBtn", "type": "api" }, { - "id": 263, + "id": 264, "name": "Test", "type": "api" }, { - "id": 264, + "id": 265, "name": "qjzzd/Fight", "type": "api" }, { - "id": 265, + "id": 266, "name": "qjzzd/Open", "type": "api" }, { - "id": 266, + "id": 267, "name": "rank/Open", "type": "api" }, { - "id": 267, + "id": 268, "name": "shiwu/Concise", "type": "api" }, { - "id": 268, + "id": 269, "name": "shiwu/Extract", "type": "api" }, { - "id": 269, + "id": 270, "name": "shiwu/GetList", "type": "api" }, { - "id": 270, + "id": 271, "name": "shiwu/LvUp", "type": "api" }, { - "id": 271, + "id": 272, "name": "shiwu/Recast", "type": "api" }, { - "id": 272, + "id": 273, "name": "shiwu/TakeOff", "type": "api" }, { - "id": 273, + "id": 274, "name": "shiwu/Wear", "type": "api" }, { - "id": 274, + "id": 275, "name": "shootGame/Open", "type": "api" }, { - "id": 275, + "id": 276, "name": "shootGame/Rec", "type": "api" }, { - "id": 276, + "id": 277, "name": "shop/Buy", "type": "api" }, { - "id": 277, + "id": 278, "name": "shop/Open", "type": "api" }, { - "id": 278, + "id": 279, "name": "shop/Refresh", "type": "api" }, { - "id": 279, + "id": 280, "name": "sign/GetBoxPrize", "type": "api" }, { - "id": 280, + "id": 281, "name": "sign/GetPrize", "type": "api" }, { - "id": 281, + "id": 282, "name": "sign/Open", "type": "api" }, { - "id": 282, + "id": 283, "name": "slzd/Aim", "type": "api" }, { - "id": 283, + "id": 284, "name": "slzd/BuyNum", "type": "api" }, { - "id": 284, + "id": 285, "name": "slzd/Fight", "type": "api" }, { - "id": 285, + "id": 286, "name": "slzd/FightLog", "type": "api" }, { - "id": 286, + "id": 287, "name": "slzd/MyRank", "type": "api" }, { - "id": 287, + "id": 288, "name": "slzd/Open", "type": "api", "conf": { @@ -3187,77 +3197,77 @@ export const serviceProto: ServiceProto = { } }, { - "id": 288, + "id": 289, "name": "slzd/OpenFort", "type": "api" }, { - "id": 289, + "id": 290, "name": "slzd/Rec", "type": "api" }, { - "id": 290, + "id": 291, "name": "slzd/Refresh", "type": "api" }, { - "id": 291, + "id": 292, "name": "slzd/Slot", "type": "api" }, { - "id": 292, + "id": 293, "name": "tanxian/Event", "type": "api" }, { - "id": 293, + "id": 294, "name": "tanxian/FastGuaJi", "type": "api" }, { - "id": 294, + "id": 295, "name": "tanxian/Fight", "type": "api" }, { - "id": 295, + "id": 296, "name": "tanxian/GuaJi", "type": "api" }, { - "id": 296, + "id": 297, "name": "tanxian/Open", "type": "api" }, { - "id": 297, + "id": 298, "name": "tanxian/Receive", "type": "api" }, { - "id": 298, + "id": 299, "name": "task/AllFinsh", "type": "api" }, { - "id": 299, + "id": 300, "name": "task/Finsh", "type": "api" }, { - "id": 300, + "id": 301, "name": "task/Open", "type": "api" }, { - "id": 301, + "id": 302, "name": "user/CDKEY", "type": "api" }, { - "id": 302, + "id": 303, "name": "user/ChangeInfo", "type": "api", "conf": { @@ -3265,197 +3275,197 @@ export const serviceProto: ServiceProto = { } }, { - "id": 303, + "id": 304, "name": "user/ChangeName", "type": "api" }, { - "id": 304, + "id": 305, "name": "user/Fight", "type": "api" }, { - "id": 305, + "id": 306, "name": "user/GetInfo", "type": "api" }, { - "id": 306, + "id": 307, "name": "user/InfoOpen", "type": "api" }, { - "id": 307, + "id": 308, "name": "user/Login", "type": "api" }, { - "id": 308, + "id": 309, "name": "user/Ping", "type": "api" }, { - "id": 309, + "id": 310, "name": "user/Renown", "type": "api" }, { - "id": 310, + "id": 311, "name": "user/RenownBuy", "type": "api" }, { - "id": 311, + "id": 312, "name": "user/RenownGetPrize", "type": "api" }, { - "id": 312, + "id": 313, "name": "user/RenownOpen", "type": "api" }, { - "id": 313, + "id": 314, "name": "user/Tujian", "type": "api" }, { - "id": 314, + "id": 315, "name": "weixiuchang/Decompose", "type": "api" }, { - "id": 315, + "id": 316, "name": "weixiuchang/Exchange", "type": "api" }, { - "id": 316, + "id": 317, "name": "weixiuchang/Open", "type": "api" }, { - "id": 317, + "id": 318, "name": "weixiuchang/UpLv", "type": "api" }, { - "id": 318, + "id": 319, "name": "weixiuchang/UpStar", "type": "api" }, { - "id": 319, + "id": 320, "name": "wzry/AutoBaoMing", "type": "api" }, { - "id": 320, + "id": 321, "name": "wzry/BaoMing", "type": "api" }, { - "id": 321, + "id": 322, "name": "wzry/catFightLog", "type": "api" }, { - "id": 322, + "id": 323, "name": "wzry/CatGroup", "type": "api" }, { - "id": 323, + "id": 324, "name": "wzry/DldFight", "type": "api" }, { - "id": 324, + "id": 325, "name": "wzry/DldRefre", "type": "api" }, { - "id": 325, + "id": 326, "name": "wzry/JingCai", "type": "api" }, { - "id": 326, + "id": 327, "name": "wzry/JingCaiOpen", "type": "api" }, { - "id": 327, + "id": 328, "name": "wzry/Open", "type": "api" }, { - "id": 328, + "id": 329, "name": "wzry/UpdateFight", "type": "api" }, { - "id": 329, + "id": 330, "name": "wzry/Wzzd", "type": "api" }, { - "id": 330, + "id": 331, "name": "wzry/ZuanShiOpen", "type": "api" }, { - "id": 331, + "id": 332, "name": "xstask/AllGet", "type": "api" }, { - "id": 332, + "id": 333, "name": "xstask/Get", "type": "api" }, { - "id": 333, + "id": 334, "name": "xstask/LvUp", "type": "api" }, { - "id": 334, + "id": 335, "name": "xstask/OnekeyReceive", "type": "api" }, { - "id": 335, + "id": 336, "name": "xstask/Open", "type": "api" }, { - "id": 336, + "id": 337, "name": "xstask/Receive", "type": "api" }, { - "id": 337, + "id": 338, "name": "xstask/Refresh", "type": "api" }, { - "id": 338, + "id": 339, "name": "yongbingzhuzhan/Handle", "type": "api" }, { - "id": 339, + "id": 340, "name": "zhanqianbushu/ChangePos", "type": "api" }, { - "id": 340, + "id": 341, "name": "zhanqianbushu/Select", "type": "api" }, { - "id": 341, + "id": 342, "name": "zhanqianbushu/Up", "type": "api" } @@ -10523,6 +10533,24 @@ export const serviceProto: ServiceProto = { } ] }, + "event/xiaofeijingsai/PtlOpen/ReqOpen": { + "type": "Interface" + }, + "event/xiaofeijingsai/PtlOpen/ResOpen": { + "type": "Interface", + "properties": [ + { + "id": 0, + "name": "list", + "type": { + "type": "Array", + "elementType": { + "type": "Any" + } + } + } + ] + }, "event/xinshoulibao/PtlOpen/ReqOpen": { "type": "Interface" }, From 5b4e0cce65b76ee1a5103b9ca79a3a0fe02b7f6f Mon Sep 17 00:00:00 2001 From: dy Date: Wed, 20 Dec 2023 17:48:42 +0800 Subject: [PATCH 02/10] =?UTF-8?q?=E6=B6=88=E8=B4=B9=E7=AB=9E=E8=B5=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api_s2c/event/xiaofeijingsai/ApiOpen.ts | 29 ++++++++++++++------- 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts b/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts index 79c06bb..209b72e 100644 --- a/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts +++ b/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts @@ -4,19 +4,28 @@ import {PayFun} from "../../../public/pay"; import {HuoDongFun} from "../../../public/huodongfun"; import {PublicShared} from "../../../shared/public/public"; - +/** + * 消费竞赛 + * redis缓存3分钟 + * 返回活动日期内的 + * @param call + */ export default async function (call: ApiCall) { - // let data = await G.mongodb.cEvent('zhoumolibao').findOne({uid: call.uid, type: 'zhoumolibao'}) - // + let ioList = await G.ioredis.get(`rank:xiaofeijingsai`); + if (ioList) { + return call.succ({list: JSON.parse(ioList)}) + } + let _hd = (await HuoDongFun.gethdList(call, 11))[0] - console.log(_hd) - // - // let payIds = _hd?.data?.gift?.filter(i => i.payId)?.map(i => i.payId) - // let a = [] + if (!_hd) return call.errorCode(-1) + + let limit = _hd.data?.rank?.slice(-1)?.[0]?.rank?.slice(-1)?.[0] || 50 + let rmbuse = await G.mongodb.collection('rmbuse').aggregate([ - {$match: {isAdd: false}}, + {$match: {isAdd: false, cTime: {$gte: _hd.stime, $lte: _hd.etime}}}, {$group: {_id: "$uid", total: {$sum: "$change"}}}, - {$sort: {total: 1}} + {$sort: {total: 1}}, + {$limit: limit} ]).toArray() let list: any = rmbuse.map(i => ({...i, total: R.negate(i.total)})) @@ -25,5 +34,7 @@ export default async function (call: ApiCall) { list = list.map(i => ({...i, player: users.find(v => v.uid == i._id)})) + G.ioredis.setex(`rank:xiaofeijingsai`, 180, JSON.stringify(list)); + call.succ({list}) } \ No newline at end of file From 6953349058e070ec4138380f896369889a18da78 Mon Sep 17 00:00:00 2001 From: dy Date: Wed, 20 Dec 2023 18:21:43 +0800 Subject: [PATCH 03/10] =?UTF-8?q?=E6=B6=88=E8=B4=B9=E7=AB=9E=E8=B5=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api_s2c/event/xiaofeijingsai/ApiOpen.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts b/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts index 209b72e..b60d885 100644 --- a/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts +++ b/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts @@ -34,7 +34,10 @@ export default async function (call: ApiCall) { list = list.map(i => ({...i, player: users.find(v => v.uid == i._id)})) - G.ioredis.setex(`rank:xiaofeijingsai`, 180, JSON.stringify(list)); + // 活动结束前半小时,缓存过期时间改为10秒 + let exTime = (G.time + 1800) < _hd.etime ? 10 : 180 + + G.ioredis.setex(`rank:xiaofeijingsai`, exTime, JSON.stringify(list)); call.succ({list}) } \ No newline at end of file From fd3c13d2b5c43c94ba65ba1a7e0d9ab3b24f489b Mon Sep 17 00:00:00 2001 From: dy Date: Wed, 20 Dec 2023 20:05:40 +0800 Subject: [PATCH 04/10] =?UTF-8?q?=E6=B6=88=E8=80=97=E7=AB=9E=E8=B5=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api_s2c/event/xiaofeijingsai/ApiOpen.ts | 27 ++++++-- .../protocols/event/xiaofeijingsai/PtlOpen.ts | 7 +- src/shared/protocols/serviceProto.ts | 66 ++++++++++++++++++- 3 files changed, 92 insertions(+), 8 deletions(-) diff --git a/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts b/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts index b60d885..8eb9645 100644 --- a/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts +++ b/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts @@ -13,13 +13,14 @@ import {PublicShared} from "../../../shared/public/public"; export default async function (call: ApiCall) { let ioList = await G.ioredis.get(`rank:xiaofeijingsai`); if (ioList) { - return call.succ({list: JSON.parse(ioList)}) + let myData = await getMyData(call, JSON.parse(ioList)) + return call.succ({list: JSON.parse(ioList), myData}) } let _hd = (await HuoDongFun.gethdList(call, 11))[0] if (!_hd) return call.errorCode(-1) - let limit = _hd.data?.rank?.slice(-1)?.[0]?.rank?.slice(-1)?.[0] || 50 + let limit = call.req.limit || 50 let rmbuse = await G.mongodb.collection('rmbuse').aggregate([ {$match: {isAdd: false, cTime: {$gte: _hd.stime, $lte: _hd.etime}}}, @@ -35,9 +36,27 @@ export default async function (call: ApiCall) { list = list.map(i => ({...i, player: users.find(v => v.uid == i._id)})) // 活动结束前半小时,缓存过期时间改为10秒 - let exTime = (G.time + 1800) < _hd.etime ? 10 : 180 + let exTime = (G.time + 1800) > _hd.etime ? 10 : 180 G.ioredis.setex(`rank:xiaofeijingsai`, exTime, JSON.stringify(list)); - call.succ({list}) + let myData = await getMyData(call, list, _hd) + + call.succ({list, myData}) +} + +// 获取自己的信息 +async function getMyData(call, rankList, _hd?) { + let myData = rankList.find(i => i._id == call.uid) + if (myData) return myData + + if (!_hd) { + _hd = (await HuoDongFun.gethdList(call, 11))[0] + } + let a = await G.mongodb.collection('rmbuse').aggregate([ + {$match: {uid: call.uid, isAdd: false, cTime: {$gte: _hd.stime, $lte: _hd.etime}}}, + {$group: {_id: "$uid", total: {$sum: "$change"}}} + ]).toArray() + let myUser = await G.mongodb.collection('user').findOne({uid: call.uid}) + return {player: myUser, ...a} } \ No newline at end of file diff --git a/src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts b/src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts index 5145ee7..cf5b512 100644 --- a/src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts +++ b/src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts @@ -1,8 +1,11 @@ /** * 消费竞赛 */ -export type ReqOpen = {}; +export type ReqOpen = { + limit: number +}; export type ResOpen = { - list: any[] + list: { _id: string, total: number, player: any }[] + myData: { _id: string, total: number, player: any } }; \ No newline at end of file diff --git a/src/shared/protocols/serviceProto.ts b/src/shared/protocols/serviceProto.ts index 4bb9ce9..1f614dd 100644 --- a/src/shared/protocols/serviceProto.ts +++ b/src/shared/protocols/serviceProto.ts @@ -10534,7 +10534,16 @@ export const serviceProto: ServiceProto = { ] }, "event/xiaofeijingsai/PtlOpen/ReqOpen": { - "type": "Interface" + "type": "Interface", + "properties": [ + { + "id": 0, + "name": "limit", + "type": { + "type": "Number" + } + } + ] }, "event/xiaofeijingsai/PtlOpen/ResOpen": { "type": "Interface", @@ -10545,9 +10554,62 @@ export const serviceProto: ServiceProto = { "type": { "type": "Array", "elementType": { - "type": "Any" + "type": "Interface", + "properties": [ + { + "id": 0, + "name": "_id", + "type": { + "type": "String" + } + }, + { + "id": 1, + "name": "total", + "type": { + "type": "Number" + } + }, + { + "id": 2, + "name": "player", + "type": { + "type": "Any" + } + } + ] } } + }, + { + "id": 1, + "name": "myData", + "type": { + "type": "Interface", + "properties": [ + { + "id": 0, + "name": "_id", + "type": { + "type": "String" + } + }, + { + "id": 1, + "name": "total", + "type": { + "type": "Number" + } + }, + { + "id": 2, + "name": "player", + "type": { + "type": "Any" + } + } + ] + } } ] }, From 6cb39ad5234b556b93fd83da4ec807118c77bc21 Mon Sep 17 00:00:00 2001 From: dy Date: Wed, 20 Dec 2023 21:08:06 +0800 Subject: [PATCH 05/10] =?UTF-8?q?=E6=B6=88=E8=B4=B9=E7=AB=9E=E8=B5=9Blimit?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api_s2c/event/xiaofeijingsai/ApiOpen.ts | 2 +- src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts b/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts index 8eb9645..1473ee6 100644 --- a/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts +++ b/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts @@ -20,7 +20,7 @@ export default async function (call: ApiCall) { let _hd = (await HuoDongFun.gethdList(call, 11))[0] if (!_hd) return call.errorCode(-1) - let limit = call.req.limit || 50 + let limit = _hd.data?.rank?.slice(-1)?.[0]?.rank?.slice(-1)?.[0] || call.req.limit || 100 let rmbuse = await G.mongodb.collection('rmbuse').aggregate([ {$match: {isAdd: false, cTime: {$gte: _hd.stime, $lte: _hd.etime}}}, diff --git a/src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts b/src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts index cf5b512..675b479 100644 --- a/src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts +++ b/src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts @@ -2,7 +2,7 @@ * 消费竞赛 */ export type ReqOpen = { - limit: number + limit?: number }; export type ResOpen = { From bfb6e4ff4ecc6d494f856d4575326075b8874829 Mon Sep 17 00:00:00 2001 From: chenkai Date: Thu, 21 Dec 2023 21:40:49 +0800 Subject: [PATCH 06/10] =?UTF-8?q?build:=20=E6=9B=B4=E6=96=B0=E6=B4=BB?= =?UTF-8?q?=E5=8A=A8=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/json/huodong.json5 | 76 ++++++++++++++++++++++++++++++++++++++---- 1 file changed, 70 insertions(+), 6 deletions(-) diff --git a/src/json/huodong.json5 b/src/json/huodong.json5 index e66b88a..4e332e8 100644 --- a/src/json/huodong.json5 +++ b/src/json/huodong.json5 @@ -3988,27 +3988,31 @@ "data" : { //活动文本描述 intr: "xfjstips_1", - intr: "xfjstips_2", - //排名 + intr2: "xfjstips_2", + //奖励邮件标题 + mailTitle: "intr_xfjs_mailTitle", + //奖励邮件内容 + mailDes: "intr_xfjs_mailDes", + //排名 rank: [ { id: '1', name: 'xfjstips_3', - rank:[1], + rank:[1,1], need: [{'a': 'attr', 't': 'rmbmoney', 'n': 20000}], prize: [{'a': 'item', 't': '13', 'n': 600}] }, { id: '2', name: 'xfjstips_4', - rank:[2], + rank:[2,2], need: [{'a': 'attr', 't': 'rmbmoney', 'n': 18000}], prize: [{'a': 'item', 't': '13', 'n': 600}] }, { id: '3', name: 'xfjstips_5', - rank:[3], + rank:[3,3], need: [{'a': 'attr', 't': 'rmbmoney', 'n': 16000}], prize: [{'a': 'item', 't': '13', 'n': 600}] }, @@ -4025,6 +4029,13 @@ rank:[11,30], need: [{'a': 'attr', 't': 'rmbmoney', 'n': 12000}], prize: [{'a': 'item', 't': '13', 'n': 600}] + }, + { + id: '6', + name: 'xfjstips_8', + rank:[31,9999], + need: [{'a': 'attr', 't': 'rmbmoney', 'n': 12000}], + prize: [{'a': 'item', 't': '13', 'n': 600}] } ] } @@ -4043,15 +4054,17 @@ "data" : { //活动文本描述 intr: "ljlibaotips_1", - intr: "ljlibaotips_2", + intr2: "ljlibaotips_2", //礼包 gift: [ { id: '1', + name: 'ljlibaotips_3', need:[], free: false, payId: 'ljlibao_1', + //返利比 scale: 200, buynum: 1, prize:[ @@ -4179,7 +4192,11 @@ ] }, ], + //买X次可以领大奖 + payRewardNum: 5, //自选框掉落池 + //配几组就显示有几个格子 + //配置的是可选的道具 dlz: [ { "1": {"a": "item", "t":"600", "n": 20}, @@ -4224,5 +4241,52 @@ } ] } + }, + { + "hdid" : 13000, // 唯一活动id 累计购买礼包 + "htype" : 13, // 后端唯一识别标识 + "stype" : 1300, // 前端唯一识别标识(看前端需要是否修改) + "ttype" : 0, // 0 按照开服时间计算,1 玩家注册时间计算 4 屏蔽此活动 + "stime" : 0, // 活动开始天数 + "rtime" : 30, // 活动显示结束天数 + "etime" : 30, // 活动实际结束 + "name": "fenhongbao", + "icon": "icon_fenhongbao", + "showtime" : "仅供参考,会复写正确值", // 自选礼包,如果存在多个活动,计费点不要设置一样;如果是一样,可能会存在付费一次,购买多次。 + "data" : { + //活动文本描述 + intr: "zuanshihongbao_5", + //分红包所需最低钻石数 + loglimit: 1000, + //奖池总数量 + jackpot: 100000, + //档位 + arr: [ + { + //权重 + "weight": 50, + //获得范围 + "numrange": [1000,1500] + }, + { + //权重 + "weight": 30, + //获得范围 + "numrange": [1500,2000] + }, + { + //权重 + "weight": 15, + //获得范围 + "numrange": [2000,3000] + }, + { + //权重 + "weight": 5, + //获得范围 + "numrange": [3000,8000] + } + ] + } } ] \ No newline at end of file From 3d43fa1a34f9121c060a9b3a16ae16a546c0557b Mon Sep 17 00:00:00 2001 From: chenkai Date: Fri, 22 Dec 2023 10:07:23 +0800 Subject: [PATCH 07/10] =?UTF-8?q?fix:=20=E6=9B=B4=E6=96=B0=E6=8A=A2?= =?UTF-8?q?=E9=92=BB=E7=9F=B3=E6=B4=BB=E5=8A=A8=E7=9A=84=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E7=BB=93=E6=9E=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/json/huodong.json5 | 62 +++++++++++++++++++++++------------------- 1 file changed, 34 insertions(+), 28 deletions(-) diff --git a/src/json/huodong.json5 b/src/json/huodong.json5 index 4e332e8..c049895 100644 --- a/src/json/huodong.json5 +++ b/src/json/huodong.json5 @@ -4257,36 +4257,42 @@ //活动文本描述 intr: "zuanshihongbao_5", //分红包所需最低钻石数 - loglimit: 1000, + price: 1000, + reset: 0, //奖池总数量 - jackpot: 100000, - //档位 - arr: [ - { - //权重 - "weight": 50, - //获得范围 - "numrange": [1000,1500] - }, - { - //权重 - "weight": 30, - //获得范围 - "numrange": [1500,2000] - }, - { - //权重 - "weight": 15, - //获得范围 - "numrange": [2000,3000] - }, - { - //权重 - "weight": 5, - //获得范围 - "numrange": [3000,8000] + totalmoney: 100000, + groupConf: { + //档位 + base: { + loglimit:2000, + arr:[ + { + //权重 + "weight": 50, + //获得范围 + "numrange": [1000,1500] + }, + { + //权重 + "weight": 30, + //获得范围 + "numrange": [1500,2000] + }, + { + //权重 + "weight": 15, + //获得范围 + "numrange": [2000,3000] + }, + { + //权重 + "weight": 5, + //获得范围 + "numrange": [3000,8000] + } + ] } - ] + } } } ] \ No newline at end of file From f17f4182a9f92ab166b993a864d7157b3c971132 Mon Sep 17 00:00:00 2001 From: dy Date: Fri, 22 Dec 2023 11:39:17 +0800 Subject: [PATCH 08/10] =?UTF-8?q?=E6=B6=88=E8=B4=B9=E7=AB=9E=E8=B5=9B?= =?UTF-8?q?=E5=AE=9A=E6=97=B6=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api_s2c/event/xiaofeijingsai/ApiOpen.ts | 51 ++++++++--- src/public/scheduler/scheduler.ts | 5 +- .../scheduler/scheduler_xiaofeijingsai.ts | 68 ++++++++++++++ .../protocols/event/xiaofeijingsai/PtlOpen.ts | 13 ++- src/shared/protocols/serviceProto.ts | 88 ++++++++----------- 5 files changed, 160 insertions(+), 65 deletions(-) create mode 100644 src/public/scheduler/scheduler_xiaofeijingsai.ts diff --git a/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts b/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts index 1473ee6..940eec1 100644 --- a/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts +++ b/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts @@ -1,16 +1,15 @@ import {ApiCall} from "tsrpc"; import {ReqOpen, ResOpen} from "../../../shared/protocols/event/xiaofeijingsai/PtlOpen"; -import {PayFun} from "../../../public/pay"; import {HuoDongFun} from "../../../public/huodongfun"; -import {PublicShared} from "../../../shared/public/public"; /** * 消费竞赛 - * redis缓存3分钟 + * redis缓存120秒 * 返回活动日期内的 * @param call */ export default async function (call: ApiCall) { + let ioList = await G.ioredis.get(`rank:xiaofeijingsai`); if (ioList) { let myData = await getMyData(call, JSON.parse(ioList)) @@ -31,18 +30,42 @@ export default async function (call: ApiCall) { let list: any = rmbuse.map(i => ({...i, total: R.negate(i.total)})) - let users = await G.mongodb.collection('user').find({uid: {$in: list.map(i => i._id)}}).toArray() - list = list.map(i => ({...i, player: users.find(v => v.uid == i._id)})) + let rankList = sortRankList(_hd.data.rank, list) + + let users = await G.mongodb.collection('user').find({uid: {$in: rankList.map(i => i._id).filter(i => i._id != 'system')}}).toArray() + + rankList = rankList.map(i => ({...i, player: users.find(v => v.uid == i._id) || {}})) // 活动结束前半小时,缓存过期时间改为10秒 let exTime = (G.time + 1800) > _hd.etime ? 10 : 180 - G.ioredis.setex(`rank:xiaofeijingsai`, exTime, JSON.stringify(list)); + G.ioredis.setex(`rank:xiaofeijingsai`, exTime, JSON.stringify(rankList)); - let myData = await getMyData(call, list, _hd) + let myData = await getMyData(call, rankList, _hd) - call.succ({list, myData}) + call.succ({list: rankList, myData}) +} + +/** + * 需要满足消耗条件才能添加到排行榜,不满足的时候排行榜加system占位 + * @param rank + * @param list + */ +export function sortRankList(rank, list) { + let rankList = [] + let ccc = 0 + rank.map(i => { + for (let k = i.rank[0] - 1; k < i.rank[1]; k++) { + if (list[k]?.total >= i.need[0].n) { + rankList.push({...list[k - ccc], rank: k}) + } else { + rankList.push({_id: 'system', total: 0, rank: k, player: {}}) + ccc += 1 + } + } + }) + return R.sort((a, b) => a.rank - b.rank)(rankList) } // 获取自己的信息 @@ -53,10 +76,16 @@ async function getMyData(call, rankList, _hd?) { if (!_hd) { _hd = (await HuoDongFun.gethdList(call, 11))[0] } - let a = await G.mongodb.collection('rmbuse').aggregate([ + let myCut = (await G.mongodb.collection('rmbuse').aggregate([ {$match: {uid: call.uid, isAdd: false, cTime: {$gte: _hd.stime, $lte: _hd.etime}}}, {$group: {_id: "$uid", total: {$sum: "$change"}}} - ]).toArray() + ]).toArray())[0] + let myUser = await G.mongodb.collection('user').findOne({uid: call.uid}) - return {player: myUser, ...a} + + if (!myCut) { + myCut = {_id: myUser.uid, total: 0} + } + + return {player: myUser, ...myCut, rank: -1} } \ No newline at end of file diff --git a/src/public/scheduler/scheduler.ts b/src/public/scheduler/scheduler.ts index a738ed2..a8b93a7 100644 --- a/src/public/scheduler/scheduler.ts +++ b/src/public/scheduler/scheduler.ts @@ -37,7 +37,8 @@ export type schedulerType = | 'hbzb_zbs_clear' | 'hbzb_zbs_group' | 'wzry_zuanshi16to8' - | "cross_email_pull"; + | "cross_email_pull" + | "xiaofeijingsai_local_ctor"; export class SchedulerManage { static logTime = false; @@ -102,7 +103,7 @@ export abstract class Scheduler { } - init(){ + init() { Scheduler.schedulers.push(this); this.read().then(_ => { this.log(`state: 准备完毕 预计下次执行时间:${new Date(this.startTime * 1000).format("YYYY-MM-DD hh:mm:ss")}`); diff --git a/src/public/scheduler/scheduler_xiaofeijingsai.ts b/src/public/scheduler/scheduler_xiaofeijingsai.ts new file mode 100644 index 0000000..fb50c51 --- /dev/null +++ b/src/public/scheduler/scheduler_xiaofeijingsai.ts @@ -0,0 +1,68 @@ +import {Scheduler, schedulerType} from './scheduler'; +import {PublicShared} from "../../shared/public/public"; +import {Wjjl} from "../../module/collection_wjjl"; +import {ZhanLingTasks} from "../zhanling"; +import {setGud} from '../gud'; +import {HuoDongFun} from "../huodongfun"; +import {EmailFun} from "../email"; +import {sortRankList} from "../../api_s2c/event/xiaofeijingsai/ApiOpen"; + + +export class SchedulerXiaofeijingsaiLocalCtor extends Scheduler { + id: schedulerType = 'xiaofeijingsai_local_ctor'; + time = 300; + name = '消费竞赛定时器发奖'; + type: 'day' | 'week' = 'day'; + + // todo 测试 + // get nextTime() { + // return G.time + 60; + // } + + async read() { + await this.ctorStartTime(); + this.isReady = false; + } + + async start() { + let _hd = (await G.mongodb.collection('hdinfo').find({ + htype: 11, + ttype: 0, + etime: {$lt: G.time, $gt: 99999999}, + isSendPrize: {$or: [{$exists: false}, {$eq: false}]}, + }).sort({etime: -1}).limit(1).toArray())[0] + + if (!_hd) return + + let limit = _hd.data?.rank?.slice(-1)?.[0]?.rank?.slice(-1)?.[0] || 100 + let rmbuse = await G.mongodb.collection('rmbuse').aggregate([ + {$match: {isAdd: false, cTime: {$gte: _hd.stime, $lte: _hd.etime}}}, + {$group: {_id: "$uid", total: {$sum: "$change"}}}, + {$sort: {total: 1}}, + {$limit: limit} + ]).toArray() + + let list: any = rmbuse.map(i => ({...i, total: R.negate(i.total)})) + + let ranklist = sortRankList(_hd.data.rank, list) + + R.forEach(i => { + let users = R.slice(i.rank[0] - 1, i.rank[1])(ranklist) + users.map(v=>{ + EmailFun.addEmail({ + uid: v._id, + type: 'system', + title: 'email.titel', + content: 'email.content', + prize: i.prize, + // contentInsertArr: [conf.ph[0] + index] + }); + }) + })(_hd.data.rank) + + await G.mongodb.collection('hdinfo').findOneAndUpdate({hdid: _hd.hdid}, {$set: {isSendPrize: true}}) + + console.log(_hd) + + } +} diff --git a/src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts b/src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts index 675b479..150e12a 100644 --- a/src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts +++ b/src/shared/protocols/event/xiaofeijingsai/PtlOpen.ts @@ -6,6 +6,13 @@ export type ReqOpen = { }; export type ResOpen = { - list: { _id: string, total: number, player: any }[] - myData: { _id: string, total: number, player: any } -}; \ No newline at end of file + list: data[] + myData: data +}; + +type data = { + _id: string, + total: number, + rank: number, + player: any +} \ No newline at end of file diff --git a/src/shared/protocols/serviceProto.ts b/src/shared/protocols/serviceProto.ts index 1f614dd..0c851c1 100644 --- a/src/shared/protocols/serviceProto.ts +++ b/src/shared/protocols/serviceProto.ts @@ -10541,7 +10541,8 @@ export const serviceProto: ServiceProto = { "name": "limit", "type": { "type": "Number" - } + }, + "optional": true } ] }, @@ -10554,30 +10555,8 @@ export const serviceProto: ServiceProto = { "type": { "type": "Array", "elementType": { - "type": "Interface", - "properties": [ - { - "id": 0, - "name": "_id", - "type": { - "type": "String" - } - }, - { - "id": 1, - "name": "total", - "type": { - "type": "Number" - } - }, - { - "id": 2, - "name": "player", - "type": { - "type": "Any" - } - } - ] + "type": "Reference", + "target": "event/xiaofeijingsai/PtlOpen/data" } } }, @@ -10585,30 +10564,41 @@ export const serviceProto: ServiceProto = { "id": 1, "name": "myData", "type": { - "type": "Interface", - "properties": [ - { - "id": 0, - "name": "_id", - "type": { - "type": "String" - } - }, - { - "id": 1, - "name": "total", - "type": { - "type": "Number" - } - }, - { - "id": 2, - "name": "player", - "type": { - "type": "Any" - } - } - ] + "type": "Reference", + "target": "event/xiaofeijingsai/PtlOpen/data" + } + } + ] + }, + "event/xiaofeijingsai/PtlOpen/data": { + "type": "Interface", + "properties": [ + { + "id": 0, + "name": "_id", + "type": { + "type": "String" + } + }, + { + "id": 1, + "name": "total", + "type": { + "type": "Number" + } + }, + { + "id": 2, + "name": "rank", + "type": { + "type": "Number" + } + }, + { + "id": 3, + "name": "player", + "type": { + "type": "Any" } } ] From 6b80b07cfe7af284415486fa0bcec9c74430f616 Mon Sep 17 00:00:00 2001 From: dy Date: Fri, 22 Dec 2023 15:01:23 +0800 Subject: [PATCH 09/10] json --- src/json/attr.json | 12 +- src/json/dixiaheishi.json5 | 8 +- src/json/g123item.json | 714 +++++++++++++++++++++++++++++++++++++ src/json/huodong.json5 | 21 +- src/json/openCond.json | 13 + src/json/pay.json | 14 +- src/json/shop.json | 4 +- src/json/shopItem.json | 58 ++- src/json/shopcom.json | 2 +- 9 files changed, 814 insertions(+), 32 deletions(-) diff --git a/src/json/attr.json b/src/json/attr.json index 371283d..27694ad 100644 --- a/src/json/attr.json +++ b/src/json/attr.json @@ -122,11 +122,21 @@ "shengdanBullet": { "id": "shengdanBullet", "name": "intr_attr_name_14", - "undefined": "圣诞子弹", + "undefined": "圣诞打靶币", "colour": 5, "icon": "icon_chegaipq", "sicon": "icon_chegaipq", "describe": "intr_attr_describe_14", "advancedEffects": "ani_xiangzikuang" + }, + "jingxuanbi": { + "id": "jingxuanbi", + "name": "intr_attr_name_15", + "undefined": "每日精选兑换币", + "colour": 4, + "icon": "icon_chegaipq", + "sicon": "icon_chegaipq", + "describe": "intr_attr_describe_15", + "advancedEffects": "" } } \ No newline at end of file diff --git a/src/json/dixiaheishi.json5 b/src/json/dixiaheishi.json5 index 83751f3..97b7c29 100644 --- a/src/json/dixiaheishi.json5 +++ b/src/json/dixiaheishi.json5 @@ -33,10 +33,10 @@ }, //136礼包 '136Gift': [ - { payId: '136Gift1', prize: [] }, + { payId: '136Gift1', prize: [], bonus: [{"a": "attr", "t": "jingxuanbi", "n": 10}] }, { prize: [{"a": "attr", "t": "rmbmoney", "n": 10},{"a": "item", "t": "12", "n": 10},{"a": "attr", "t": "jinbi", "n": 10000}] }, - { payId: '136Gift2', prize: [] }, - { payId: '136Gift3', prize: [] }, - { payId: '136Gift4', prize: [] }, + { payId: '136Gift2', prize: [], bonus: [{"a": "attr", "t": "jingxuanbi", "n": 10}] }, + { payId: '136Gift3', prize: [], bonus: [{"a": "attr", "t": "jingxuanbi", "n": 10}] }, + { payId: '136Gift4', prize: [], bonus: [{"a": "attr", "t": "jingxuanbi", "n": 10}] }, ], } \ No newline at end of file diff --git a/src/json/g123item.json b/src/json/g123item.json index 4716111..0a5e360 100644 --- a/src/json/g123item.json +++ b/src/json/g123item.json @@ -2582,6 +2582,90 @@ "rarity": 4 } }, + "item^634": { + "itemId": "item^634", + "name": "紫橙干部碎片随机箱", + "i18nKey": "intr_item_name_634", + "detailI18nKey": "intr_item_describe_634", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 5 + } + }, + "item^635": { + "itemId": "item^635", + "name": "紫橙装备碎片随机箱", + "i18nKey": "intr_item_name_635", + "detailI18nKey": "intr_item_describe_635", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 120, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 5 + } + }, + "item^636": { + "itemId": "item^636", + "name": "紫橙红干部碎片随机箱", + "i18nKey": "intr_item_name_636", + "detailI18nKey": "intr_item_describe_636", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 244, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 5 + } + }, + "item^637": { + "itemId": "item^637", + "name": "超级红色干部自选箱", + "i18nKey": "intr_item_name_637", + "detailI18nKey": "intr_item_describe_637", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 30000, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 6 + } + }, "item^5001": { "itemId": "item^5001", "name": "莱薇碎片", @@ -6845,6 +6929,489 @@ "rarity": 2 } }, + "item^50001": { + "itemId": "item^50001", + "name": "火力覆盖", + "i18nKey": "playerheadFrame_name_3", + "detailI18nKey": "intr_item_describe_50001", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50002": { + "itemId": "item^50002", + "name": "双枪", + "i18nKey": "playerheadFrame_name_4", + "detailI18nKey": "intr_item_describe_50002", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50003": { + "itemId": "item^50003", + "name": "武装炫耀", + "i18nKey": "playerheadFrame_name_6", + "detailI18nKey": "intr_item_describe_50003", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50004": { + "itemId": "item^50004", + "name": "血海", + "i18nKey": "playerheadFrame_name_7", + "detailI18nKey": "intr_item_describe_50004", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50005": { + "itemId": "item^50005", + "name": "破笼而出", + "i18nKey": "playerheadFrame_name_8", + "detailI18nKey": "intr_item_describe_50005", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50006": { + "itemId": "item^50006", + "name": "擂台", + "i18nKey": "playerheadFrame_name_9", + "detailI18nKey": "intr_item_describe_50006", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50007": { + "itemId": "item^50007", + "name": "破土而出", + "i18nKey": "playerheadFrame_name_10", + "detailI18nKey": "intr_item_describe_50007", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50008": { + "itemId": "item^50008", + "name": "赠礼", + "i18nKey": "playerheadFrame_name_11", + "detailI18nKey": "intr_item_describe_50008", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50009": { + "itemId": "item^50009", + "name": "圣诞氛围", + "i18nKey": "playerheadFrame_name_23", + "detailI18nKey": "intr_item_describe_50009", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50010": { + "itemId": "item^50010", + "name": "披星戴月", + "i18nKey": "playerheadFrame_name_24", + "detailI18nKey": "intr_item_describe_50010", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50101": { + "itemId": "item^50101", + "name": "冰天雪地", + "i18nKey": "playerChatFrame_name_6", + "detailI18nKey": "intr_item_describe_50101", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50102": { + "itemId": "item^50102", + "name": "海浪奔涌", + "i18nKey": "playerChatFrame_name_7", + "detailI18nKey": "intr_item_describe_50102", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50103": { + "itemId": "item^50103", + "name": "名扬四海", + "i18nKey": "playerheadFrame_name_15", + "detailI18nKey": "intr_item_describe_50103", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50104": { + "itemId": "item^50104", + "name": "圣诞快乐", + "i18nKey": "playerChatFrame_name_8", + "detailI18nKey": "intr_item_describe_50104", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50201": { + "itemId": "item^50201", + "name": "招贤纳士", + "i18nKey": "playerheadFrame_name_16", + "detailI18nKey": "intr_item_describe_50201", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50202": { + "itemId": "item^50202", + "name": "势如破竹", + "i18nKey": "playerheadFrame_name_17", + "detailI18nKey": "intr_item_describe_50202", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50203": { + "itemId": "item^50203", + "name": "被甲执兵", + "i18nKey": "playerheadFrame_name_18", + "detailI18nKey": "intr_item_describe_50203", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50204": { + "itemId": "item^50204", + "name": "锋芒毕露", + "i18nKey": "playerheadFrame_name_19", + "detailI18nKey": "intr_item_describe_50204", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50205": { + "itemId": "item^50205", + "name": "所向披靡", + "i18nKey": "playerheadFrame_name_20", + "detailI18nKey": "intr_item_describe_50205", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50206": { + "itemId": "item^50206", + "name": "传世藏品", + "i18nKey": "playerheadFrame_name_21", + "detailI18nKey": "intr_item_describe_50206", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50207": { + "itemId": "item^50207", + "name": "金戈铁马", + "i18nKey": "playerheadFrame_name_22", + "detailI18nKey": "intr_item_describe_50207", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "item^50301": { + "itemId": "item^50301", + "name": "圣诞庆典:男", + "i18nKey": "playerModel_name_3", + "detailI18nKey": "intr_item_describe_50301", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 5 + } + }, + "item^50302": { + "itemId": "item^50302", + "name": "圣诞庆典:女", + "i18nKey": "playerModel_name_4", + "detailI18nKey": "intr_item_describe_50302", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "item", + "typeName": "道具", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 5 + } + }, "equip^1001": { "itemId": "equip^1001", "name": "棉布头盔", @@ -10015,5 +10582,152 @@ "sellMaxCp": 500, "rarity": 3 } + }, + "attr^nexp": { + "itemId": "attr^nexp", + "name": "主角经验", + "i18nKey": "intr_attr_name_3", + "detailI18nKey": "intr_attr_describe_3", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "attr", + "typeName": "货币", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "attr^rongyu": { + "itemId": "attr^rongyu", + "name": "荣誉勋章", + "i18nKey": "intr_attr_name_4", + "detailI18nKey": "intr_attr_describe_4", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "attr", + "typeName": "货币", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } + }, + "attr^payExp": { + "itemId": "attr^payExp", + "name": "VIP经验", + "i18nKey": "intr_attr_name_5", + "detailI18nKey": "intr_attr_describe_5", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "attr", + "typeName": "货币", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 5 + } + }, + "attr^guijinshu": { + "itemId": "attr^guijinshu", + "name": "贵金属", + "i18nKey": "intr_attr_name_6", + "detailI18nKey": "intr_attr_describe_6", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "attr", + "typeName": "货币", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 3 + } + }, + "attr^shengdanExp": { + "itemId": "attr^shengdanExp", + "name": "圣诞战令经验", + "i18nKey": "intr_attr_name_13", + "detailI18nKey": "intr_attr_describe_13", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "attr", + "typeName": "货币", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 5 + } + }, + "attr^shengdanBullet": { + "itemId": "attr^shengdanBullet", + "name": "圣诞打靶币", + "i18nKey": "intr_attr_name_14", + "detailI18nKey": "intr_attr_describe_14", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "attr", + "typeName": "货币", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 5 + } + }, + "attr^jingxuanbi": { + "itemId": "attr^jingxuanbi", + "name": "每日精选兑换币", + "i18nKey": "intr_attr_name_15", + "detailI18nKey": "intr_attr_describe_15", + "iconUrl": "https://ik.imagekit.io/g123/production-ctw-box/game-box/preview/6ffd84658d75d5247f7f01b2f00ae3e6beda7163237c025ff8f0a58c.png", + "value": 0, + "typeId": "attr", + "typeName": "货币", + "isStoreSupported": true, + "isAiSupported": true, + "attributes": { + "storeDisplayPrice": null, + "storeCategory": "", + "setQuantity": 1, + "purchaseLimit": 0, + "sellMinCp": 100, + "sellMaxCp": 500, + "rarity": 4 + } } } \ No newline at end of file diff --git a/src/json/huodong.json5 b/src/json/huodong.json5 index c049895..5caa64d 100644 --- a/src/json/huodong.json5 +++ b/src/json/huodong.json5 @@ -3978,7 +3978,7 @@ "hdid" : 11000, // 唯一活动id 消费竞赛 "htype" : 11, // 后端唯一识别标识 "stype" : 1100, // 前端唯一识别标识(看前端需要是否修改) - "ttype" : 0, // 0 按照开服时间计算,1 玩家注册时间计算 4 屏蔽此活动 + "ttype" : 4, // 0 按照开服时间计算,1 玩家注册时间计算 4 屏蔽此活动 "stime" : 0, // 活动开始天数 "rtime" : 30, // 活动显示结束天数 "etime" : 30, // 活动实际结束 @@ -4044,7 +4044,7 @@ "hdid" : 12000, // 唯一活动id 累计购买礼包 "htype" : 12, // 后端唯一识别标识 "stype" : 1200, // 前端唯一识别标识(看前端需要是否修改) - "ttype" : 0, // 0 按照开服时间计算,1 玩家注册时间计算 4 屏蔽此活动 + "ttype" : 4, // 0 按照开服时间计算,1 玩家注册时间计算 4 屏蔽此活动 "stime" : 0, // 活动开始天数 "rtime" : 30, // 活动显示结束天数 "etime" : 30, // 活动实际结束 @@ -4052,16 +4052,11 @@ "icon": "icon_ljlibao", "showtime" : "仅供参考,会复写正确值", // 自选礼包,如果存在多个活动,计费点不要设置一样;如果是一样,可能会存在付费一次,购买多次。 "data" : { - //活动文本描述 - intr: "ljlibaotips_1", - intr2: "ljlibaotips_2", //礼包 gift: [ { id: '1', - - name: 'ljlibaotips_3', - need:[], + need:[], free: false, payId: 'ljlibao_1', //返利比 @@ -4077,7 +4072,6 @@ }, { id: '2', - name: 'ljlibaotips_4', need:[], free: false, payId: 'ljlibao_2', @@ -4093,7 +4087,6 @@ }, { id: '3', - name: 'ljlibaotips_5', need:[], free: false, payId: 'ljlibao_3', @@ -4109,7 +4102,6 @@ }, { id: '4', - name: 'ljlibaotips_6', need:[], free: false, payId: 'ljlibao_4', @@ -4130,7 +4122,6 @@ }, { id: '5', - name: 'ljlibaotips_7', need:[], free: false, payId: 'ljlibao_5', @@ -4151,7 +4142,6 @@ }, { id: '6', - name: 'ljlibaotips_8', need:[], free: false, payId: 'ljlibao_6', @@ -4172,7 +4162,6 @@ }, { id: '7', - name: 'ljlibaotips_9', need:[], free: false, payId: 'ljlibao_7', @@ -4243,10 +4232,10 @@ } }, { - "hdid" : 13000, // 唯一活动id 累计购买礼包 + "hdid" : 13000, // 唯一活动id 充值分红包 "htype" : 13, // 后端唯一识别标识 "stype" : 1300, // 前端唯一识别标识(看前端需要是否修改) - "ttype" : 0, // 0 按照开服时间计算,1 玩家注册时间计算 4 屏蔽此活动 + "ttype" : 4, // 0 按照开服时间计算,1 玩家注册时间计算 4 屏蔽此活动 "stime" : 0, // 活动开始天数 "rtime" : 30, // 活动显示结束天数 "etime" : 30, // 活动实际结束 diff --git a/src/json/openCond.json b/src/json/openCond.json index ef4f726..06d9d8c 100644 --- a/src/json/openCond.json +++ b/src/json/openCond.json @@ -1365,5 +1365,18 @@ "display": { "lv": 15 } + }, + "leigoulibao": { + "name": "leigoulibao", + "undefined": "累购礼包", + "and": { + "lv": 15 + }, + "or": {}, + "time": 0, + "tips": "openCond_tips_96", + "display": { + "lv": 15 + } } } \ No newline at end of file diff --git a/src/json/pay.json b/src/json/pay.json index c40b1d1..4f7b61b 100644 --- a/src/json/pay.json +++ b/src/json/pay.json @@ -4119,7 +4119,7 @@ "name": "pay_name_djlb_2", "undefined": "枪油补充包", "time": 86400, - "buys": 0, + "buys": 3, "needVip": 0, "front": {}, "currency": "CNY" @@ -4145,7 +4145,7 @@ "name": "pay_name_djlb_1", "undefined": "能量饮料补充包", "time": 86400, - "buys": 0, + "buys": 2, "needVip": 0, "front": {}, "currency": "CNY" @@ -4171,7 +4171,7 @@ "name": "pay_name_djlb_12", "undefined": "弹壳补充包", "time": 86400, - "buys": 0, + "buys": 3, "needVip": 0, "front": {}, "currency": "CNY" @@ -4197,7 +4197,7 @@ "name": "pay_name_djlb_18", "undefined": "装备蓝图补充包", "time": 86400, - "buys": 0, + "buys": 3, "needVip": 0, "front": {}, "currency": "CNY" @@ -4217,7 +4217,7 @@ "name": "pay_name_mingwang_2", "undefined": "名望礼包_68元", "time": 86400, - "buys": 0, + "buys": 1, "needVip": 0, "front": {}, "currency": "CNY" @@ -4237,7 +4237,7 @@ "name": "pay_name_mingwang_3", "undefined": "名望礼包_648元", "time": 86400, - "buys": 0, + "buys": 2, "needVip": 0, "front": {}, "currency": "CNY" @@ -4257,7 +4257,7 @@ "name": "pay_name_mingwang_4", "undefined": "名望礼包_128元", "time": -1, - "buys": 0, + "buys": 1, "needVip": 0, "front": {}, "currency": "CNY" diff --git a/src/json/shop.json b/src/json/shop.json index 9893e4e..0d42272 100644 --- a/src/json/shop.json +++ b/src/json/shop.json @@ -511,7 +511,9 @@ "freeRefreshInterval": 0, "freeRefreshNum": 0, "shopItems": [ - 10001 + 10001, + 10002, + 10003 ], "showItem": [ { diff --git a/src/json/shopItem.json b/src/json/shopItem.json index 46da62c..4ab0808 100644 --- a/src/json/shopItem.json +++ b/src/json/shopItem.json @@ -6281,8 +6281,8 @@ "openDay": 1, "buyNeed": [ { - "a": "item", - "t": "15", + "a": "attr", + "t": "jingxuanbi", "n": 2800 } ], @@ -6296,6 +6296,60 @@ "vipAddbuyNum": [] } ], + "10002": [ + { + "id": 10002, + "a": "item", + "t": 1, + "n": 10000, + "p": 1, + "colour": 4, + "buyNum": -1, + "openDay": 1, + "buyNeed": [ + { + "a": "attr", + "t": "jingxuanbi", + "n": 1000 + } + ], + "sale": 10, + "needVip": 0, + "needZCCG": 0, + "lv": [ + 1, + 9999 + ], + "vipAddbuyNum": [] + } + ], + "10003": [ + { + "id": 10003, + "a": "item", + "t": 2, + "n": 10000, + "p": 1, + "colour": 4, + "buyNum": -1, + "openDay": 1, + "buyNeed": [ + { + "a": "attr", + "t": "jingxuanbi", + "n": 1500 + } + ], + "sale": 10, + "needVip": 0, + "needZCCG": 0, + "lv": [ + 1, + 9999 + ], + "vipAddbuyNum": [] + } + ], "120001": [ { "id": 120001, diff --git a/src/json/shopcom.json b/src/json/shopcom.json index b5157f4..6b1ab41 100644 --- a/src/json/shopcom.json +++ b/src/json/shopcom.json @@ -211,7 +211,7 @@ "cost": [ { "a": "attr", - "t": "rmbmoney", + "t": "jingxuanbi", "n": 1 } ] From c3ba3934d4ee4520b8d7d7f5b67606b5801d625a Mon Sep 17 00:00:00 2001 From: dy Date: Fri, 22 Dec 2023 16:49:21 +0800 Subject: [PATCH 10/10] =?UTF-8?q?=E6=B6=88=E8=B4=B9=E7=AB=9E=E8=B5=9B?= =?UTF-8?q?=E5=AE=9A=E6=97=B6=E5=99=A8=E5=8F=91=E5=A5=96=EF=BC=8C=E6=AF=8F?= =?UTF-8?q?=E5=A4=A90=E7=82=B95=E5=88=86=E6=A3=80=E6=B5=8B=E6=B4=BB?= =?UTF-8?q?=E5=8A=A8=20=E7=BB=93=E6=9D=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api_s2c/event/xiaofeijingsai/ApiOpen.ts | 6 ++--- .../scheduler/scheduler_xiaofeijingsai.ts | 25 ++++++++++--------- src/setMongodb.ts | 4 +-- src/setStartAfther.ts | 2 ++ 4 files changed, 20 insertions(+), 17 deletions(-) diff --git a/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts b/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts index 940eec1..4fa2459 100644 --- a/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts +++ b/src/api_s2c/event/xiaofeijingsai/ApiOpen.ts @@ -38,7 +38,7 @@ export default async function (call: ApiCall) { rankList = rankList.map(i => ({...i, player: users.find(v => v.uid == i._id) || {}})) // 活动结束前半小时,缓存过期时间改为10秒 - let exTime = (G.time + 1800) > _hd.etime ? 10 : 180 + let exTime = (G.time + 1800) > _hd.etime ? 10 : 120 G.ioredis.setex(`rank:xiaofeijingsai`, exTime, JSON.stringify(rankList)); @@ -60,7 +60,7 @@ export function sortRankList(rank, list) { if (list[k]?.total >= i.need[0].n) { rankList.push({...list[k - ccc], rank: k}) } else { - rankList.push({_id: 'system', total: 0, rank: k, player: {}}) + rankList.push({_id: 'system', total: i.need[0].n, rank: k, player: {}}) ccc += 1 } } @@ -87,5 +87,5 @@ async function getMyData(call, rankList, _hd?) { myCut = {_id: myUser.uid, total: 0} } - return {player: myUser, ...myCut, rank: -1} + return {player: myUser, ...myCut, total: R.negate(myCut.total), rank: -1} } \ No newline at end of file diff --git a/src/public/scheduler/scheduler_xiaofeijingsai.ts b/src/public/scheduler/scheduler_xiaofeijingsai.ts index fb50c51..5901064 100644 --- a/src/public/scheduler/scheduler_xiaofeijingsai.ts +++ b/src/public/scheduler/scheduler_xiaofeijingsai.ts @@ -7,16 +7,19 @@ import {HuoDongFun} from "../huodongfun"; import {EmailFun} from "../email"; import {sortRankList} from "../../api_s2c/event/xiaofeijingsai/ApiOpen"; - -export class SchedulerXiaofeijingsaiLocalCtor extends Scheduler { +/** + * 消费竞赛发奖定时器 + * 每天0点5分检测活动结束 + */ +export class Scheduler_xfjs_Local_Ctor extends Scheduler { id: schedulerType = 'xiaofeijingsai_local_ctor'; time = 300; - name = '消费竞赛定时器发奖'; + name = '消费竞赛发奖定时器'; type: 'day' | 'week' = 'day'; // todo 测试 // get nextTime() { - // return G.time + 60; + // return G.time + 30; // } async read() { @@ -29,7 +32,7 @@ export class SchedulerXiaofeijingsaiLocalCtor extends Scheduler { htype: 11, ttype: 0, etime: {$lt: G.time, $gt: 99999999}, - isSendPrize: {$or: [{$exists: false}, {$eq: false}]}, + $or: [{isSendPrize: {$exists: false}}, {isSendPrize: false}], }).sort({etime: -1}).limit(1).toArray())[0] if (!_hd) return @@ -48,21 +51,19 @@ export class SchedulerXiaofeijingsaiLocalCtor extends Scheduler { R.forEach(i => { let users = R.slice(i.rank[0] - 1, i.rank[1])(ranklist) - users.map(v=>{ + users.map(v => { + if (v._id == 'system') return EmailFun.addEmail({ uid: v._id, type: 'system', - title: 'email.titel', - content: 'email.content', + title: _hd.data.mailTitle, + content: _hd.data.mailDes, prize: i.prize, - // contentInsertArr: [conf.ph[0] + index] + contentInsertArr: [v.rank + 1] }); }) })(_hd.data.rank) await G.mongodb.collection('hdinfo').findOneAndUpdate({hdid: _hd.hdid}, {$set: {isSendPrize: true}}) - - console.log(_hd) - } } diff --git a/src/setMongodb.ts b/src/setMongodb.ts index fe89db9..ec7356a 100644 --- a/src/setMongodb.ts +++ b/src/setMongodb.ts @@ -505,7 +505,7 @@ export async function setDbIndexes() { index.key, option ); - console.log('创建索引成功', coll, index); + // console.log('创建索引成功', coll, index); } catch (error) { if (error.codeName == 'IndexKeySpecsConflict') { //当相同索引存在,但是配置(如:unique expireAfterSeconds)不同时,会收到这个报错 @@ -519,7 +519,7 @@ export async function setDbIndexes() { index.key, option ); - console.log('创建索引成功', coll, index); + // console.log('创建索引成功', coll, index); } catch (error) { console.log('创建索引失败==>', coll, index, error.message); } diff --git a/src/setStartAfther.ts b/src/setStartAfther.ts index 52648c7..2497190 100644 --- a/src/setStartAfther.ts +++ b/src/setStartAfther.ts @@ -27,6 +27,7 @@ import { clusterRunOnce } from './clusterUtils'; import { addListener } from './globalListener'; import { SchedulerManage } from './public/scheduler/scheduler'; import {CrossEmailPull} from "./public/scheduler/scheduler_cross_email_pull"; +import {Scheduler_xfjs_Local_Ctor} from "./public/scheduler/scheduler_xiaofeijingsai"; export async function startAfter() { //事件监听和定时器初始化 @@ -70,6 +71,7 @@ export async function startAfter() { new Scheduler_hbzb_zbs_local_prize().init(); new Scheduler_hbzb_zbs_local_ready().init(); new SchedulerKbzzAutoApply().init(); + new Scheduler_xfjs_Local_Ctor().init(); new SchedulerSlzdClean().init(); new SchedulerSlzdPrize().init();