From fb0e90ea35e132f4c272dc70745daeade6f68939 Mon Sep 17 00:00:00 2001 From: lockiechen <lockiechen@tencent.com> Date: Sun, 29 Sep 2024 09:59:01 +0800 Subject: [PATCH 1/3] =?UTF-8?q?fix:=20=E9=9D=9E=E7=BC=96=E8=BE=91=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E5=88=87=E6=8D=A2Code=E6=96=B9=E5=BC=8F=E6=97=B6?= =?UTF-8?q?=E6=8F=90=E7=A4=BA=E4=BF=9D=E5=AD=98=20#10933?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/frontend/devops-pipeline/src/components/ModeSwitch.vue | 5 +---- .../devops-pipeline/src/store/modules/atom/atomUtil.js | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/src/frontend/devops-pipeline/src/components/ModeSwitch.vue b/src/frontend/devops-pipeline/src/components/ModeSwitch.vue index f15a1ad82ca..4f275535bbe 100644 --- a/src/frontend/devops-pipeline/src/components/ModeSwitch.vue +++ b/src/frontend/devops-pipeline/src/components/ModeSwitch.vue @@ -94,9 +94,6 @@ id: mode, cls: this.pipelineMode === mode ? 'is-selected' : '' })) - }, - canSwitch () { - return !(!this.readOnly && this.isEditing) } }, @@ -205,7 +202,7 @@ } this.isSwitching = false } - if (!this.draft && this.isEditing) { + if (!this.draft && this.isEditing && !this.readOnly) { this.leaveConfirmVisisble = true this.newMode = mode return diff --git a/src/frontend/devops-pipeline/src/store/modules/atom/atomUtil.js b/src/frontend/devops-pipeline/src/store/modules/atom/atomUtil.js index 0ba1b167fd0..9e3a2ed2efb 100755 --- a/src/frontend/devops-pipeline/src/store/modules/atom/atomUtil.js +++ b/src/frontend/devops-pipeline/src/store/modules/atom/atomUtil.js @@ -17,7 +17,7 @@ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ -import { ADD_STAGE, NORMAL_CONTAINER_TYPE, SET_PIPELINE_EDITING, TRIGGER_CONTAINER_TYPE, UPDATE_ATOM_OUTPUT_NAMESPACE, VM_CONTAINER_TYPE, SET_ATOM_EDITING } from './constants' +import { ADD_STAGE, NORMAL_CONTAINER_TYPE, SET_ATOM_EDITING, SET_PIPELINE_EDITING, TRIGGER_CONTAINER_TYPE, UPDATE_ATOM_OUTPUT_NAMESPACE, VM_CONTAINER_TYPE } from './constants' /** * 获取原子模型unique Key From b48d2a05362b9d314f2baa52e6225eb1ecc63ca6 Mon Sep 17 00:00:00 2001 From: lockiechen <lockiechen@tencent.com> Date: Sun, 29 Sep 2024 10:51:33 +0800 Subject: [PATCH 2/3] =?UTF-8?q?fix:=20=E9=9D=9E=E7=BC=96=E8=BE=91=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E5=88=87=E6=8D=A2Code=E6=96=B9=E5=BC=8F=E6=97=B6?= =?UTF-8?q?=E6=8F=90=E7=A4=BA=E4=BF=9D=E5=AD=98=20#10933?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/frontend/gulpfile.js | 50 +++-- src/frontend/nx.json | 3 +- src/frontend/package.json | 11 +- src/frontend/pnpm-lock.yaml | 207 ++++++++++-------- src/frontend/webpack.base.js | 2 +- .../webpackPlugin/bundle-webpack-plugin.js | 30 +-- 6 files changed, 175 insertions(+), 128 deletions(-) diff --git a/src/frontend/gulpfile.js b/src/frontend/gulpfile.js index 01afa70486d..d48578d6d7b 100755 --- a/src/frontend/gulpfile.js +++ b/src/frontend/gulpfile.js @@ -6,6 +6,7 @@ const svgSprite = require('gulp-svg-sprite') const inject = require('gulp-inject') const rename = require('gulp-rename') const hash = require('gulp-hash') +const { globSync } = require('glob') const replace = require('gulp-replace') const Ora = require('ora') const yargs = require('yargs') @@ -15,20 +16,24 @@ const argv = yargs.alias({ dist: 'd', env: 'e', lsVersion: 'l', - scope: 's' + scope: 's', + effect: 'effect' }).default({ dist: 'frontend', env: 'master', - lsVersion: 'dev' + lsVersion: 'dev', + effect: false }).describe({ dist: 'build output dist directory', env: 'environment [dev, test, master, external]', lsVersion: 'localStorage version', head: 'head file path', - base: 'base file path' + base: 'base file path', + effect: 'only buuild effected service' }).argv -const { dist, env, lsVersion, scope, head = 'HEAD', base = 'master' } = argv +const { dist, env, lsVersion, scope, head = 'HEAD', base = 'master', effect = false } = argv console.log(env, head, base) +const FINAL_ASSETS_JSON_FILENAME = `${dist}/assetsBundles.js` const svgSpriteConfig = { mode: { symbol: true @@ -88,7 +93,7 @@ task('build', series(cb => { const spinner = new Ora('building bk-ci frontend project').start() const scopeStr = getScopeStr(scope) - const cmd = scopeStr ? `run-many -t public:master ${scopeStr}` : 'affected -t public:master' + const cmd = effect ? 'affected -t public:master' : `run-many -t public:master ${scopeStr}` console.log('gulp cmd: ', cmd, cmd.split(' ')) const { spawn } = require('node:child_process') const spawnCmd = spawn('pnpm', [ @@ -116,18 +121,37 @@ task('build', series(cb => { }) }, (cb) => { try { - const fileContent = `window.SERVICE_ASSETS = ${fs.readFileSync(`${dist}/assets_bundle.json`, 'utf8')}` - fs.writeFileSync(`${dist}/assetsBundles.js`, fileContent) - return src(`${dist}/assetsBundles.js`, { - allowEmpty: true - }) - .pipe(hash()) - .pipe(dest(`${dist}/`)) + const entryDir = path.join(__dirname, dist, "entry's") + + // 读取path.join(__dirname, dist, 'entry's', '*.json')所有Json合并成一个 + const finalAssets = globSync(path.join(entryDir, '*.json')).reduce((acc, file) => { + const content = JSON.parse(fs.readFileSync(file, 'utf-8')) + acc = { + ...acc, + ...content + } + return acc + }, {}) + + console.log('final assets json!') + console.table(finalAssets) + const fileContent = `window.SERVICE_ASSETS = ${JSON.stringify(finalAssets)}` + + fs.writeFileSync(FINAL_ASSETS_JSON_FILENAME, fileContent) + if (fs.existsSync(entryDir)) { + fs.rmSync(entryDir, { + recursive: true, + force: true + }) + } + return src(FINAL_ASSETS_JSON_FILENAME).pipe(hash()).pipe(dest(dist)) + } catch (error) { console.log('build assetsBundles.js failed') console.error(error) + process.exit(1) } - cb() + }, (cb) => { ['console', 'pipeline'].map(prefix => { const dir = path.join(dist, prefix) diff --git a/src/frontend/nx.json b/src/frontend/nx.json index a8bf6b7d8c8..166b1f66e7c 100644 --- a/src/frontend/nx.json +++ b/src/frontend/nx.json @@ -6,7 +6,8 @@ "^public:master" ], "outputs": [ - "{projectRoot}/dist" + "{projectRoot}/dist", + "{workspaceRoot}/frontend" ], "cache": true }, diff --git a/src/frontend/package.json b/src/frontend/package.json index 5cb25ffc550..1f3009db37a 100644 --- a/src/frontend/package.json +++ b/src/frontend/package.json @@ -4,6 +4,9 @@ "devDependencies": { "@commitlint/cli": "^9.1.1", "@commitlint/config-conventional": "^16.2.4", + "@nx/eslint": "19.5.1", + "@nx/vite": "19.5.1", + "@nx/webpack": "19.5.1", "@typescript-eslint/parser": "^1.9.0", "@webpack-cli/serve": "^1.7.0", "chalk": "^4.0.0", @@ -13,6 +16,7 @@ "del": "6.1.1", "eslint": "^7.3.1", "eslint-plugin-vue": "6.2.2", + "glob": "^11.0.0", "glob-parent": "5.1.2", "gulp": "^4.0.2", "gulp-hash": "^4.2.2", @@ -25,6 +29,7 @@ "husky": "^7.0.2", "lint-staged": "^10.2.11", "node-fetch": "^2.6.0", + "nx": "19.5.1", "ora": "^3.4.0", "svg-sprite-loader": "^6.0.9", "typescript": "3.4.5", @@ -32,11 +37,7 @@ "webpack": "~5.76.1", "webpack-bundle-analyzer": "^4.4.2", "webpack-cli": "^4.10.0", - "webpack-dev-server": "^4.3.1", - "nx": "19.5.1", - "@nx/eslint": "19.5.1", - "@nx/webpack": "19.5.1", - "@nx/vite": "19.5.1" + "webpack-dev-server": "^4.3.1" }, "resolutions": { "glob-parent": "5.1.2" diff --git a/src/frontend/pnpm-lock.yaml b/src/frontend/pnpm-lock.yaml index 66f24a354b8..242ea705ba8 100644 --- a/src/frontend/pnpm-lock.yaml +++ b/src/frontend/pnpm-lock.yaml @@ -35,7 +35,7 @@ importers: version: 19.5.1(@babel/traverse@7.24.6)(@types/node@20.12.13)(@zkochan/js-yaml@0.0.7)(eslint@7.32.0)(nx@19.5.1) '@nx/vite': specifier: 19.5.1 - version: 19.5.1(@babel/traverse@7.24.6)(@types/node@20.12.13)(nx@19.5.1)(typescript@3.4.5)(vite@5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0))(vitest@1.6.0(@types/node@20.12.13)(jsdom@16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0)) + version: 19.5.1(@babel/traverse@7.24.6)(@types/node@20.12.13)(nx@19.5.1)(typescript@3.4.5)(vite@5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0))(vitest@1.6.0(@types/node@20.12.13)(jsdom@16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0)) '@nx/webpack': specifier: 19.5.1 version: 19.5.1(@babel/traverse@7.24.6)(@types/node@20.12.13)(bufferutil@4.0.8)(html-webpack-plugin@5.6.0(webpack@5.76.1(webpack-cli@4.10.0)))(nx@19.5.1)(typescript@3.4.5)(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)) @@ -66,6 +66,9 @@ importers: eslint-plugin-vue: specifier: 6.2.2 version: 6.2.2(eslint@7.32.0) + glob: + specifier: ^11.0.0 + version: 11.0.0 glob-parent: specifier: 5.1.2 version: 5.1.2 @@ -5705,7 +5708,7 @@ packages: resolution: {integrity: sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==} assign-symbols@1.0.0: - resolution: {integrity: sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==} + resolution: {integrity: sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=} engines: {node: '>=0.10.0'} astral-regex@2.0.0: @@ -6151,7 +6154,7 @@ packages: engines: {node: '>=10'} can-use-dom@0.1.0: - resolution: {integrity: sha512-ceOhN1DL7Y4O6M0j9ICgmTYziV89WMd96SvSl0REd8PMgrY0B/WBOPoed5S1KUmJqXgUXh8gzSe6E3ae27upsQ==} + resolution: {integrity: sha1-IsxKNKCrxDlQ9CxkEQJKP2NmtFo=} caniuse-api@3.0.0: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} @@ -6382,7 +6385,7 @@ packages: resolution: {integrity: sha512-D3wYH90tYY1BsKlUe0oNj2JAhQ9TepkD51auk3N7q+4uz7A/cgJ5JsWHreT0PqieW1QhOuqxQ2reCXV1YXzecg==} collection-map@1.0.0: - resolution: {integrity: sha512-5D2XXSpkOnleOI21TG7p3T0bGAsZ/XknZpKBmGYyluO8pw4zA3K8ZlrBIbC4FXg3m6z/RNFiUFfT2sQK01+UHA==} + resolution: {integrity: sha1-rqDwb40mx4DCt1SUOFVEsiVa8Yw=} engines: {node: '>=0.10.0'} collection-visit@1.0.0: @@ -6483,7 +6486,7 @@ packages: engines: {node: '>= 0.8.0'} concat-map@0.0.1: - resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=} + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} concat-stream@1.6.2: resolution: {integrity: sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==} @@ -7645,7 +7648,7 @@ packages: engines: {node: '>=10.2.0'} enhanced-resolve@0.9.1: - resolution: {integrity: sha1-TW5omzcl+GCQknzMhs2fFjW4ni4=} + resolution: {integrity: sha512-kxpoMgrdtkXZ5h0SeraBS1iRntpTpQ3R8ussdb38+UAFnMGX5DDyJXePm+OCHOcoXvHDw7mc2erbJBpDnl7TPw==} engines: {node: '>=0.6'} enhanced-resolve@3.4.1: @@ -7763,7 +7766,7 @@ packages: resolution: {integrity: sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==} es6-promisify@5.0.0: - resolution: {integrity: sha512-C+d6UdsYDk0lMebHNR4S2NybQMMngAOnOwYBQjTOiv0MkoJMP0Myw2mgpDLBcpfCmRLxyFqYhS/CfOENq4SJhQ==} + resolution: {integrity: sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=} es6-symbol@3.1.4: resolution: {integrity: sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==} @@ -8246,7 +8249,7 @@ packages: engines: {node: '>= 0.6'} event-emitter@0.3.5: - resolution: {integrity: sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==} + resolution: {integrity: sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=} event-pubsub@4.3.0: resolution: {integrity: sha512-z7IyloorXvKbFx9Bpie2+vMJKKx1fH1EN5yiTfp8CiLOTptSYy1g8H4yDpGlEdshL1PBiFtBHepF2cNsqeEeFQ==} @@ -8818,6 +8821,11 @@ packages: engines: {node: '>=16 || 14 >=14.18'} hasBin: true + glob@11.0.0: + resolution: {integrity: sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==} + engines: {node: 20 || >=22} + hasBin: true + glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} @@ -9498,7 +9506,7 @@ packages: engines: {node: '>= 0.4'} is-directory@0.3.1: - resolution: {integrity: sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=} + resolution: {integrity: sha512-yVChGzahRFvbkscn2MlwGismPO12i9+znNruC5gVEntG3qu0xQMzsGg/JFbrsqDOHtHFPci+V5aP5T9I+yeKqw==} engines: {node: '>=0.10.0'} is-docker@2.2.1: @@ -9666,7 +9674,7 @@ packages: resolution: {integrity: sha512-x7+VxdxOdlV3CYpjvRLBv5Lo9OJerlYanjwFrPR9fuGPjCiNiCzFgAWpiLAohSbsnH4ZAys3SBh+hq5rJosxUQ==} is-stream@1.1.0: - resolution: {integrity: sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==} + resolution: {integrity: sha1-EtSj3U5o4Lec6428hBc66A2RykQ=} engines: {node: '>=0.10.0'} is-stream@2.0.1: @@ -9797,6 +9805,10 @@ packages: resolution: {integrity: sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==} engines: {node: '>=14'} + jackspeak@4.0.2: + resolution: {integrity: sha512-bZsjR/iRjl1Nk1UkjGpAzLNfQtzuijhn2g+pbZb98HQ1Gk8vM9hfbxeMBP+M2/UUdwj0RqGG3mlvk2MsAqwvEw==} + engines: {node: 20 || >=22} + jake@10.9.2: resolution: {integrity: sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==} engines: {node: '>=10'} @@ -9935,7 +9947,7 @@ packages: resolution: {integrity: sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==} json-stable-stringify-without-jsonify@1.0.1: - resolution: {integrity: sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=} + resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==} json-stringify-safe@5.0.1: resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} @@ -10473,6 +10485,10 @@ packages: resolution: {integrity: sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==} engines: {node: 14 || >=16.14} + lru-cache@11.0.1: + resolution: {integrity: sha512-CgeuL5uom6j/ZVrg7G/+1IXqRY8JXX4Hghfy5YE0EhoYQWvndP1kufu58cmZLNIDKnRhZrXfdS9urVWx98AipQ==} + engines: {node: 20 || >=22} + lru-cache@4.1.5: resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==} @@ -10747,6 +10763,10 @@ packages: minimalistic-crypto-utils@1.0.1: resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==} + minimatch@10.0.1: + resolution: {integrity: sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==} + engines: {node: 20 || >=22} + minimatch@3.0.8: resolution: {integrity: sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==} @@ -10815,7 +10835,7 @@ packages: engines: {node: '>=4.0.0'} mitt@1.1.2: - resolution: {integrity: sha1-OA5hSA1qYVtmDwertg1R4KTkvtY=} + resolution: {integrity: sha512-3btxP0O9iGADGWAkteQ8mzDtEspZqu4I32y4GZYCV5BrwtzdcRpF4dQgNdJadCrbBx7Lu6Sq9AVrerMHR0Hkmw==} mixin-deep@1.3.2: resolution: {integrity: sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==} @@ -11375,6 +11395,9 @@ packages: resolution: {integrity: sha512-KeXddIp6jBT8qzyxfQGOGzNYc/7ftxKtRc5Uggre02yvbZrSBHE2M2C842/WizMBFD4s0Ngwz3QFOit2A+Ezrg==} engines: {node: '>=4'} + package-json-from-dist@1.0.1: + resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} + pako@1.0.11: resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==} @@ -11516,6 +11539,10 @@ packages: resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} engines: {node: '>=16 || 14 >=14.18'} + path-scurry@2.0.0: + resolution: {integrity: sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==} + engines: {node: 20 || >=22} + path-to-regexp@0.1.7: resolution: {integrity: sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==} @@ -12822,7 +12849,7 @@ packages: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} quick-lru@1.1.0: - resolution: {integrity: sha512-tRS7sTgyxMXtLum8L65daJnHUhfDUgboRdcWW2bR9vBfrj2+O5HSMbQOJfJJjIVSPFqbBCF37FpwWXGitDc5tA==} + resolution: {integrity: sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g=} engines: {node: '>=4'} quick-lru@4.0.1: @@ -14652,7 +14679,7 @@ packages: resolution: {integrity: sha512-vRCqFv6UhXpWxZPyGDh/F3ZpNv8/qo7w6iufLpQg9aKnQ71qM4B5KiI7Mia9COcjEhrO9LueHpMYjYzsWH3OIg==} unset-value@1.0.0: - resolution: {integrity: sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=} + resolution: {integrity: sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==} engines: {node: '>=0.10.0'} upath@1.2.0: @@ -14775,7 +14802,7 @@ packages: resolution: {integrity: sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==} verror@1.10.0: - resolution: {integrity: sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=} + resolution: {integrity: sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==} engines: {'0': node >=0.6.0} vfile-message@2.0.4: @@ -16735,13 +16762,13 @@ snapshots: '@blueking/eslint-config-bk@2.1.0-beta.12(@babel/core@7.24.6)(@vue/cli-service@5.0.8(@vue/compiler-sfc@3.4.31)(bufferutil@4.0.8)(encoding@0.1.13)(less-loader@12.2.0(less@4.2.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))))(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))(eslint-plugin-prettier@4.2.1(eslint@8.57.0)(prettier@2.8.8))(prettier@2.8.8)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))': dependencies: '@babel/eslint-parser': 7.24.6(@babel/core@7.24.6)(eslint@8.57.0) - '@typescript-eslint/eslint-plugin': 5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.9.5) - '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.9.5) - '@vue/eslint-config-standard': 6.1.0(@vue/cli-service@5.0.8(@vue/compiler-sfc@3.4.31)(bufferutil@4.0.8)(encoding@0.1.13)(less-loader@12.2.0(less@4.2.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))))(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))) + '@typescript-eslint/eslint-plugin': 5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4) + '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.6.4) + '@vue/eslint-config-standard': 6.1.0(@vue/cli-service@5.0.8(@vue/compiler-sfc@3.4.31)(bufferutil@4.0.8)(encoding@0.1.13)(less-loader@12.2.0(less@4.2.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))))(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))) '@vue/eslint-config-typescript': 10.0.0(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(typescript@4.6.4) eslint: 8.57.0 eslint-config-tencent: 1.0.4(@babel/core@7.24.6)(@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4))(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint-plugin-prettier@4.2.1(eslint@8.57.0)(prettier@2.8.8))(eslint@8.57.0)(prettier@2.8.8) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) eslint-plugin-node: 11.1.0(eslint@8.57.0) eslint-plugin-promise: 6.0.1(eslint@8.57.0) eslint-plugin-standard: 5.0.0(eslint@8.57.0) @@ -16766,7 +16793,7 @@ snapshots: '@vue/eslint-config-typescript': 10.0.0(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(typescript@4.6.4) eslint: 8.57.0 eslint-config-tencent: 1.0.4(@babel/core@7.24.6)(@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4))(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint-plugin-prettier@4.2.1(eslint@8.57.0)(prettier@2.8.8))(eslint@8.57.0)(prettier@2.8.8) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) eslint-plugin-node: 11.1.0(eslint@8.57.0) eslint-plugin-promise: 6.0.1(eslint@8.57.0) eslint-plugin-standard: 5.0.0(eslint@8.57.0) @@ -16791,7 +16818,7 @@ snapshots: '@vue/eslint-config-typescript': 10.0.0(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(typescript@4.6.4) eslint: 8.57.0 eslint-config-tencent: 1.0.4(@babel/core@7.24.6)(@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4))(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint-plugin-prettier@4.2.1(eslint@7.32.0)(prettier@2.8.8))(eslint@8.57.0)(prettier@2.8.8) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) eslint-plugin-node: 11.1.0(eslint@8.57.0) eslint-plugin-promise: 6.0.1(eslint@8.57.0) eslint-plugin-standard: 5.0.0(eslint@8.57.0) @@ -18226,9 +18253,9 @@ snapshots: - '@swc/core' - debug - '@nrwl/vite@19.5.1(@babel/traverse@7.24.6)(@types/node@20.12.13)(nx@19.5.1)(typescript@3.4.5)(vite@5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0))(vitest@1.6.0(@types/node@20.12.13)(jsdom@16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0))': + '@nrwl/vite@19.5.1(@babel/traverse@7.24.6)(@types/node@20.12.13)(nx@19.5.1)(typescript@3.4.5)(vite@5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0))(vitest@1.6.0(@types/node@20.12.13)(jsdom@16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0))': dependencies: - '@nx/vite': 19.5.1(@babel/traverse@7.24.6)(@types/node@20.12.13)(nx@19.5.1)(typescript@3.4.5)(vite@5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0))(vitest@1.6.0(@types/node@20.12.13)(jsdom@16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0)) + '@nx/vite': 19.5.1(@babel/traverse@7.24.6)(@types/node@20.12.13)(nx@19.5.1)(typescript@3.4.5)(vite@5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0))(vitest@1.6.0(@types/node@20.12.13)(jsdom@16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0)) transitivePeerDependencies: - '@babel/traverse' - '@swc-node/register' @@ -18448,17 +18475,17 @@ snapshots: '@nx/nx-win32-x64-msvc@19.5.1': optional: true - '@nx/vite@19.5.1(@babel/traverse@7.24.6)(@types/node@20.12.13)(nx@19.5.1)(typescript@3.4.5)(vite@5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0))(vitest@1.6.0(@types/node@20.12.13)(jsdom@16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0))': + '@nx/vite@19.5.1(@babel/traverse@7.24.6)(@types/node@20.12.13)(nx@19.5.1)(typescript@3.4.5)(vite@5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0))(vitest@1.6.0(@types/node@20.12.13)(jsdom@16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0))': dependencies: - '@nrwl/vite': 19.5.1(@babel/traverse@7.24.6)(@types/node@20.12.13)(nx@19.5.1)(typescript@3.4.5)(vite@5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0))(vitest@1.6.0(@types/node@20.12.13)(jsdom@16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0)) + '@nrwl/vite': 19.5.1(@babel/traverse@7.24.6)(@types/node@20.12.13)(nx@19.5.1)(typescript@3.4.5)(vite@5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0))(vitest@1.6.0(@types/node@20.12.13)(jsdom@16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0)) '@nx/devkit': 19.5.1(nx@19.5.1) '@nx/js': 19.5.1(@babel/traverse@7.24.6)(@types/node@20.12.13)(nx@19.5.1)(typescript@3.4.5) '@phenomnomnominal/tsquery': 5.0.1(typescript@3.4.5) '@swc/helpers': 0.5.12 enquirer: 2.3.6 tsconfig-paths: 4.2.0 - vite: 5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0) - vitest: 1.6.0(@types/node@20.12.13)(jsdom@16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0) + vite: 5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0) + vitest: 1.6.0(@types/node@20.12.13)(jsdom@16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0) transitivePeerDependencies: - '@babel/traverse' - '@swc-node/register' @@ -19198,7 +19225,7 @@ snapshots: '@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4)': dependencies: - '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.9.5) + '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.6.4) '@typescript-eslint/scope-manager': 5.20.0 '@typescript-eslint/type-utils': 5.20.0(eslint@8.57.0)(typescript@4.6.4) '@typescript-eslint/utils': 5.20.0(eslint@8.57.0)(typescript@4.9.5) @@ -19214,24 +19241,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.9.5)': - dependencies: - '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.9.5) - '@typescript-eslint/scope-manager': 5.20.0 - '@typescript-eslint/type-utils': 5.20.0(eslint@8.57.0)(typescript@4.6.4) - '@typescript-eslint/utils': 5.20.0(eslint@8.57.0)(typescript@4.9.5) - debug: 4.3.4 - eslint: 8.57.0 - functional-red-black-tree: 1.0.1 - ignore: 5.3.1 - regexpp: 3.2.0 - semver: 7.6.2 - tsutils: 3.21.0(typescript@4.6.4) - optionalDependencies: - typescript: 4.9.5 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/eslint-plugin@7.11.0(@typescript-eslint/parser@7.11.0(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)(typescript@5.4.5)': dependencies: '@eslint-community/regexpp': 4.10.0 @@ -19302,18 +19311,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5)': - dependencies: - '@typescript-eslint/scope-manager': 5.20.0 - '@typescript-eslint/types': 5.20.0 - '@typescript-eslint/typescript-estree': 5.20.0(typescript@4.6.4) - debug: 4.3.4 - eslint: 8.57.0 - optionalDependencies: - typescript: 4.9.5 - transitivePeerDependencies: - - supports-color - '@typescript-eslint/parser@7.11.0(eslint@8.57.0)(typescript@5.4.5)': dependencies: '@typescript-eslint/scope-manager': 7.11.0 @@ -20386,13 +20383,13 @@ snapshots: - supports-color - webpack - '@vue/eslint-config-standard@6.1.0(@vue/cli-service@5.0.8(@vue/compiler-sfc@3.4.31)(bufferutil@4.0.8)(encoding@0.1.13)(less-loader@12.2.0(less@4.2.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))))(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))': + '@vue/eslint-config-standard@6.1.0(@vue/cli-service@5.0.8(@vue/compiler-sfc@3.4.31)(bufferutil@4.0.8)(encoding@0.1.13)(less-loader@12.2.0(less@4.2.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))))(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))': dependencies: eslint: 8.57.0 - eslint-config-standard: 16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@7.32.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0) + eslint-config-standard: 16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-webpack: 0.13.8(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) + eslint-import-resolver-webpack: 0.13.8(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0))(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) eslint-plugin-node: 11.1.0(eslint@8.57.0) eslint-plugin-promise: 6.0.1(eslint@8.57.0) eslint-plugin-vue: 8.7.1(eslint@8.57.0) @@ -20405,10 +20402,10 @@ snapshots: '@vue/eslint-config-standard@6.1.0(@vue/cli-service@5.0.8(@vue/compiler-sfc@3.4.31)(bufferutil@4.0.8)(encoding@0.1.13)(lodash@4.17.21)(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))': dependencies: eslint: 8.57.0 - eslint-config-standard: 16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@7.32.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0) + eslint-config-standard: 16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-webpack: 0.13.8(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) + eslint-import-resolver-webpack: 0.13.8(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0))(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) eslint-plugin-node: 11.1.0(eslint@8.57.0) eslint-plugin-promise: 6.0.1(eslint@8.57.0) eslint-plugin-vue: 8.7.1(eslint@8.57.0) @@ -20421,10 +20418,10 @@ snapshots: '@vue/eslint-config-standard@6.1.0(@vue/cli-service@5.0.8(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@7.32.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(webpack@5.76.1(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))': dependencies: eslint: 8.57.0 - eslint-config-standard: 16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@7.32.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0) + eslint-config-standard: 16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0) eslint-import-resolver-node: 0.3.9 eslint-import-resolver-webpack: 0.13.8(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(webpack@5.76.1(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) eslint-plugin-node: 11.1.0(eslint@8.57.0) eslint-plugin-promise: 6.0.1(eslint@8.57.0) eslint-plugin-vue: 8.7.1(eslint@8.57.0) @@ -23893,10 +23890,17 @@ snapshots: eslint-plugin-node: 11.1.0(eslint@7.32.0) eslint-plugin-promise: 5.1.1(eslint@7.32.0) - eslint-config-standard@16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@7.32.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0): + eslint-config-standard@16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0): + dependencies: + eslint: 8.57.0 + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) + eslint-plugin-node: 11.1.0(eslint@8.57.0) + eslint-plugin-promise: 6.0.1(eslint@8.57.0) + + eslint-config-standard@16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0): dependencies: eslint: 8.57.0 - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) eslint-plugin-node: 11.1.0(eslint@8.57.0) eslint-plugin-promise: 6.0.1(eslint@8.57.0) @@ -23915,7 +23919,7 @@ snapshots: '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.6.4) eslint: 8.57.0 eslint-plugin-chalk: 1.0.0(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) eslint-plugin-prettier: 4.2.1(eslint@7.32.0)(prettier@2.8.8) prettier: 2.8.8 transitivePeerDependencies: @@ -23927,11 +23931,11 @@ snapshots: dependencies: '@babel/core': 7.24.6 '@babel/eslint-parser': 7.24.6(@babel/core@7.24.6)(eslint@8.57.0) - '@typescript-eslint/eslint-plugin': 5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.9.5) - '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.9.5) + '@typescript-eslint/eslint-plugin': 5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4) + '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.6.4) eslint: 8.57.0 eslint-plugin-chalk: 1.0.0(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) eslint-plugin-prettier: 4.2.1(eslint@8.57.0)(prettier@2.8.8) prettier: 2.8.8 transitivePeerDependencies: @@ -23985,7 +23989,7 @@ snapshots: array.prototype.find: 2.2.3 debug: 3.2.7 enhanced-resolve: 0.9.1 - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) find-root: 1.1.0 hasown: 2.0.2 interpret: 1.4.0 @@ -23998,12 +24002,12 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))): + eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0))(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))): dependencies: array.prototype.find: 2.2.3 debug: 3.2.7 enhanced-resolve: 0.9.1 - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) find-root: 1.1.0 hasown: 2.0.2 interpret: 1.4.0 @@ -24060,7 +24064,7 @@ snapshots: dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.9.5) + '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.6.4) eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 transitivePeerDependencies: @@ -24163,7 +24167,7 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0): + eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0): dependencies: array-includes: 3.1.8 array.prototype.findlastindex: 1.2.5 @@ -24184,7 +24188,7 @@ snapshots: semver: 6.3.1 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.9.5) + '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.6.4) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack @@ -25300,6 +25304,15 @@ snapshots: minipass: 7.1.2 path-scurry: 1.11.1 + glob@11.0.0: + dependencies: + foreground-child: 3.2.0 + jackspeak: 4.0.2 + minimatch: 10.0.1 + minipass: 7.1.2 + package-json-from-dist: 1.0.1 + path-scurry: 2.0.0 + glob@7.2.3: dependencies: fs.realpath: 1.0.0 @@ -26391,6 +26404,10 @@ snapshots: optionalDependencies: '@pkgjs/parseargs': 0.11.0 + jackspeak@4.0.2: + dependencies: + '@isaacs/cliui': 8.0.2 + jake@10.9.2: dependencies: async: 3.2.5 @@ -27307,6 +27324,8 @@ snapshots: lru-cache@10.2.2: {} + lru-cache@11.0.1: {} + lru-cache@4.1.5: dependencies: pseudomap: 1.0.2 @@ -27665,6 +27684,10 @@ snapshots: minimalistic-crypto-utils@1.0.1: {} + minimatch@10.0.1: + dependencies: + brace-expansion: 2.0.1 + minimatch@3.0.8: dependencies: brace-expansion: 1.1.11 @@ -28451,6 +28474,8 @@ snapshots: dependencies: p-reduce: 1.0.0 + package-json-from-dist@1.0.1: {} + pako@1.0.11: {} parallel-transform@1.2.0: @@ -28601,6 +28626,11 @@ snapshots: lru-cache: 10.2.2 minipass: 7.1.2 + path-scurry@2.0.0: + dependencies: + lru-cache: 11.0.1 + minipass: 7.1.2 + path-to-regexp@0.1.7: {} path-type@1.1.0: @@ -31805,6 +31835,11 @@ snapshots: dependencies: postcss: 7.0.39 + sugarss@4.0.1(postcss@5.2.18): + dependencies: + postcss: 5.2.18 + optional: true + sugarss@4.0.1(postcss@8.4.38): dependencies: postcss: 8.4.38 @@ -32796,13 +32831,13 @@ snapshots: remove-trailing-separator: 1.1.0 replace-ext: 1.0.1 - vite-node@1.6.0(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0): + vite-node@1.6.0(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0): dependencies: cac: 6.7.14 debug: 4.3.4 pathe: 1.1.2 picocolors: 1.0.1 - vite: 5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0) + vite: 5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0) transitivePeerDependencies: - '@types/node' - less @@ -32825,7 +32860,7 @@ snapshots: sass: 1.77.2 stylus: 0.63.0 - vite@5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0): + vite@5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0): dependencies: esbuild: 0.21.5 postcss: 8.4.39 @@ -32836,10 +32871,10 @@ snapshots: less: 4.1.3 sass: 1.77.2 stylus: 0.59.0 - sugarss: 4.0.1(postcss@8.4.38) + sugarss: 4.0.1(postcss@5.2.18) terser: 5.31.0 - vitest@1.6.0(@types/node@20.12.13)(jsdom@16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0): + vitest@1.6.0(@types/node@20.12.13)(jsdom@16.7.0(bufferutil@4.0.8)(utf-8-validate@5.0.10))(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0): dependencies: '@vitest/expect': 1.6.0 '@vitest/runner': 1.6.0 @@ -32858,8 +32893,8 @@ snapshots: strip-literal: 2.1.0 tinybench: 2.8.0 tinypool: 0.8.4 - vite: 5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0) - vite-node: 1.6.0(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@8.4.38))(terser@5.31.0) + vite: 5.3.4(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0) + vite-node: 1.6.0(@types/node@20.12.13)(less@4.1.3)(sass@1.77.2)(stylus@0.59.0)(sugarss@4.0.1(postcss@5.2.18))(terser@5.31.0) why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 20.12.13 diff --git a/src/frontend/webpack.base.js b/src/frontend/webpack.base.js index a8ae2eaa336..8f3d269ee89 100644 --- a/src/frontend/webpack.base.js +++ b/src/frontend/webpack.base.js @@ -98,7 +98,7 @@ module.exports = ({ entry, publicPath, dist, port = 8080, argv, env }) => { new BundleWebpackPlugin({ dist: envDist, isDev, - bundleName: 'assets_bundle' + entryFolderName: "entry's" }), new MiniCssExtractPlugin({ filename: '[name].[contenthash].css', diff --git a/src/frontend/webpackPlugin/bundle-webpack-plugin.js b/src/frontend/webpackPlugin/bundle-webpack-plugin.js index fdadbbb7905..474d8e78ee8 100644 --- a/src/frontend/webpackPlugin/bundle-webpack-plugin.js +++ b/src/frontend/webpackPlugin/bundle-webpack-plugin.js @@ -23,22 +23,21 @@ module.exports = class BundleWebpackPlugin { // Define `apply` as its prototype method which is supplied with compiler as its argument constructor (props) { const dist = props.dist || '.' - const bundleName = props.bundleName || 'assets_bundle' + const entryFolderName = props.entryFolderName this.isDev = props.isDev || false - this.SERVICE_ASSETS_JSON_PATH = path.join( + this.SERVICE_ASSETS_DIR = path.join( __dirname, '..', dist, - `${bundleName}.json` + entryFolderName ) - this.SERVICE_ASSETS_DIR = path.dirname(this.SERVICE_ASSETS_JSON_PATH) } apply (compiler) { compiler.hooks.done.tapAsync( 'BundleWebpackPlugin', (compilation, callback) => { - const { SERVICE_ASSETS_JSON_PATH, SERVICE_ASSETS_DIR, isDev } = this + const { SERVICE_ASSETS_DIR } = this const entryNames = Array.from( compilation.compilation.entrypoints.keys() ) @@ -82,24 +81,11 @@ module.exports = class BundleWebpackPlugin { }) assetsMap[entryName] = assets + if (!fs.existsSync(SERVICE_ASSETS_DIR)) { + fs.mkdirSync(SERVICE_ASSETS_DIR) + } + fs.writeFileSync(`${SERVICE_ASSETS_DIR}/${entryName}.json`, JSON.stringify(assetsMap)) } - - let json = {} - if (!isDev && fs.existsSync(SERVICE_ASSETS_JSON_PATH)) { - json = JSON.parse( - fs.readFileSync(SERVICE_ASSETS_JSON_PATH, 'utf-8').toString() - ) - } - json = { - ...json, - ...assetsMap - } - if (!fs.existsSync(SERVICE_ASSETS_DIR)) { - fs.mkdirSync(SERVICE_ASSETS_DIR) - } - console.log('update json', JSON.stringify(json)) - fs.writeFileSync(SERVICE_ASSETS_JSON_PATH, JSON.stringify(json)) - callback() } ) From d6cf541645d292030b3b2f56a159a1257fc616fa Mon Sep 17 00:00:00 2001 From: lockiechen <lockiechen@tencent.com> Date: Sun, 29 Sep 2024 15:50:43 +0800 Subject: [PATCH 3/3] =?UTF-8?q?fix:=20=E9=9D=9E=E7=BC=96=E8=BE=91=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E5=88=87=E6=8D=A2Code=E6=96=B9=E5=BC=8F=E6=97=B6?= =?UTF-8?q?=E6=8F=90=E7=A4=BA=E4=BF=9D=E5=AD=98=20#10933?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/BuildHistoryTable/index.vue | 2 +- .../PipelineDetailTabs/VersionDiffEntry.vue | 26 +- .../components/PipelineHeader/EditHeader.vue | 273 +++++++++++++++--- .../src/store/modules/atom/getters.js | 3 + src/frontend/locale/pipeline/en-US.json | 6 +- src/frontend/locale/pipeline/zh-CN.json | 6 +- src/frontend/pnpm-lock.yaml | 95 +++--- .../webpackPlugin/bundle-webpack-plugin.js | 14 +- 8 files changed, 348 insertions(+), 77 deletions(-) diff --git a/src/frontend/devops-pipeline/src/components/BuildHistoryTable/index.vue b/src/frontend/devops-pipeline/src/components/BuildHistoryTable/index.vue index 80c54eb693f..2e3639295e9 100755 --- a/src/frontend/devops-pipeline/src/components/BuildHistoryTable/index.vue +++ b/src/frontend/devops-pipeline/src/components/BuildHistoryTable/index.vue @@ -808,7 +808,7 @@ 'resetHistoryFilterCondition' ]), updateTableHeight () { - this.tableHeight = this.$refs.tableBox.offsetHeight + this.tableHeight = this.$refs.tableBox?.offsetHeight }, handleColumnChange (columns) { this.tableColumnKeys = columns diff --git a/src/frontend/devops-pipeline/src/components/PipelineDetailTabs/VersionDiffEntry.vue b/src/frontend/devops-pipeline/src/components/PipelineDetailTabs/VersionDiffEntry.vue index 63f68e0cc29..679948206cf 100644 --- a/src/frontend/devops-pipeline/src/components/PipelineDetailTabs/VersionDiffEntry.vue +++ b/src/frontend/devops-pipeline/src/components/PipelineDetailTabs/VersionDiffEntry.vue @@ -1,9 +1,11 @@ <template> - <span> + <span class="version-diff-entry-wrapper"> <bk-button :text="text" :outline="outline" :theme="theme" + :disabled="disabled" + :size="size" @click="initDiff" > <slot> @@ -23,7 +25,10 @@ class="diff-version-dialog-content" v-bkloading="{ isLoading: isLoadYaml, color: '#1d1d1d' }" > - <header class="diff-version-header"> + <header + class="diff-version-header" + v-if="showButton" + > <VersionSelector ext-cls="dark-theme-select-trigger" ext-popover-cls="dark-theme-select-menu" @@ -82,6 +87,10 @@ type: String, default: 'primary' }, + size: { + type: String, + default: 'normal' + }, version: { type: Number, required: true @@ -93,6 +102,14 @@ canSwitchVersion: { type: Boolean, default: true + }, + showButton: { + type: Boolean, + default: true + }, + disabled: { + type: Boolean, + default: false } }, data () { @@ -167,6 +184,11 @@ <style lang="scss"> @import "@/scss/select-dark-theme.scss"; + .version-diff-entry-wrapper { + .bk-button-text.bk-button-small { + padding: 0; + } + } .diff-version-dialog.bk-dialog-wrapper { transition: none; .bk-dialog { diff --git a/src/frontend/devops-pipeline/src/components/PipelineHeader/EditHeader.vue b/src/frontend/devops-pipeline/src/components/PipelineHeader/EditHeader.vue index 073a26d140e..4f8b16ccb84 100644 --- a/src/frontend/devops-pipeline/src/components/PipelineHeader/EditHeader.vue +++ b/src/frontend/devops-pipeline/src/components/PipelineHeader/EditHeader.vue @@ -60,18 +60,49 @@ }" @click="exec(true)" > - <span class="debug-pipeline-draft-btn"> - {{ $t("debug") }} - <b>|</b> - <i - v-bk-tooltips="$t('draftRecordEntryTitle')" - :class="['devops-icon icon-txt', { - 'icon-txt-disabled': !canDebug - }]" - @click.stop="goDraftDebugRecord" - /> - </span> + {{ $t("debug") }} </bk-button> + <bk-dropdown-menu + trigger="click" + align="center" + > + <div + slot="dropdown-trigger" + > + <i class="manage-icon manage-icon-more-fill"></i> + </div> + <div slot="dropdown-content"> + <ul + class="bk-dropdown-list" + slot="dropdown-content" + > + <li + v-for="(item, index) in actionConfMenus" + :class="['develop-txt', { + 'develop-txt-disabled': item.disabled + }]" + :key="index" + @click="item.handler" + v-bk-tooltips="{ + content: $t('noDraft'), + disabled: item.showTooltips + }" + v-perm="item.vPerm" + > + <template v-if="item.label"> + {{ item.label }} + </template> + <template v-else> + <component + :is="item.component" + v-bind="item.componentProps" + :disabled="item.disabled" + /> + </template> + </li> + </ul> + </div> + </bk-dropdown-menu> <!-- <more-actions /> --> <release-button @@ -94,22 +125,18 @@ import { mapActions, mapGetters, mapState } from 'vuex' import PipelineBreadCrumb from './PipelineBreadCrumb.vue' import ReleaseButton from './ReleaseButton' + import VersionDiffEntry from '@/components/PipelineDetailTabs/VersionDiffEntry.vue' export default { components: { PipelineBreadCrumb, ReleaseButton, - ModeSwitch + ModeSwitch, + VersionDiffEntry }, props: { isSwitchPipeline: Boolean }, - data () { - return { - isLoading: false, - isReleaseSliderShow: false - } - }, computed: { ...mapState([ 'pipelineMode' @@ -127,7 +154,9 @@ isCurPipelineLocked: 'atom/isCurPipelineLocked', isEditing: 'atom/isEditing', checkPipelineInvalid: 'atom/checkPipelineInvalid', - draftBaseVersionName: 'atom/getDraftBaseVersionName' + draftBaseVersionName: 'atom/getDraftBaseVersionName', + hasDraftPipeline: 'atom/hasDraftPipeline', + isCommittingPipeline: 'atom/isCommittingPipeline' }), projectId () { return this.$route.params.projectId @@ -170,6 +199,49 @@ }, isPipelineNameReady () { return this.pipelineSetting?.pipelineId === this.$route.params.pipelineId + }, + activeVersion () { + return this.pipelineInfo?.releaseVersion ?? '' + }, + actionConfMenus () { + const { projectId } = this.$route.params + return [ + { + component: VersionDiffEntry, + componentProps: { + version: this.currentVersion, + latestVersion: this.activeVersion, + theme: 'normal', + size: 'small', + showButton: false + }, + handler: () => {}, + disabled: !this.hasDraftPipeline, + showTooltips: true + }, + { + label: this.$t('draftExecRecords'), + handler: this.goDraftDebugRecord, + disabled: !this.canDebug, + vPerm: { + hasPermission: this.canExecute, + disablePermissionApi: true, + permissionData: { + projectId, + resourceType: 'pipeline', + resourceCode: this.pipelineId, + action: this.RESOURCE_ACTION.EXECUTE + } + }, + showTooltips: true + }, + { + label: this.$t('deleteDraft'), + handler: this.handelDelete, + disabled: !(this.hasDraftPipeline || this.isCommittingPipeline), + showTooltips: this.hasDraftPipeline || this.isCommittingPipeline + } + ] } }, watch: { @@ -192,6 +264,10 @@ 'setSaveStatus', 'updateContainer' ]), + ...mapActions('pipelines', [ + 'deletePipelineVersion', + 'patchDeletePipelines' + ]), async exec (debug) { if (debug && this.isEditing) { const result = await this.saveDraft() @@ -297,6 +373,82 @@ this.setSaveStatus(false) } }, + createSubHeader (pipelineName, draftBaseVersionName) { + const h = this.$createElement + return h('div', { class: 'draft-delete' }, [ + h('p', { + class: 'text-overflow', + directives: [ + { + name: 'bk-tooltips', + value: pipelineName + } + ] + }, [ + h('span', { class: 'label' }, `${this.$t('pipeline')} :`), + h('span', pipelineName) + ]), + h('p', [ + h('span', { class: 'label' }, `${this.$t('draft')} :`), + h('span', `${this.$t('baseOn', [draftBaseVersionName])} `) + ]) + ]) + }, + async deleteDraftConfirm () { + try { + await this.deletePipelineVersion({ + projectId: this.projectId, + pipelineId: this.pipelineId, + version: this.currentVersion + }) + + // 删除草稿时需要更新pipelineInfo + this.$store.commit(`atom/${UPDATE_PIPELINE_INFO}`, { + version: this.pipelineInfo?.releaseVersion, + versionName: this.pipelineInfo?.releaseVersionName, + canDebug: false, + canRelease: false + }) + this.$showTips({ + message: this.$t('delete') + this.$t('version') + this.$t('success'), + theme: 'success' + }) + this.$router.push({ + name: 'pipelinesHistory' + }) + } catch (err) { + this.$showTips({ + message: err.message || err, + theme: 'error' + }) + } + }, + async deletePipelineConfirm () { + try { + const params = { + projectId: this.projectId, + pipelineIds: [this.pipelineId] + } + const { data } = await this.patchDeletePipelines(params) + const hasErr = Object.keys(data)[0] !== this.pipelineId + if (hasErr) { + throw Error(this.$t('deleteFail')) + } + this.$showTips({ + message: this.$t('delete') + this.$t('version') + this.$t('success'), + theme: 'success' + }) + + this.$router.push({ + name: 'PipelineManageList' + }) + } catch (err) { + this.$showTips({ + message: err.message || err, + theme: 'error' + }) + } + }, goDraftDebugRecord () { if (this.canDebug) { this.$router.push({ @@ -304,6 +456,32 @@ }) } }, + /** + * 删除草稿 + */ + async handelDelete () { + const commonConfig = { + title: this.$t('sureDeleteDraft'), + okText: this.$t('delete'), + cancelText: this.$t('cancel'), + theme: 'danger', + width: 470, + confirmLoading: true + } + if (this.isCommittingPipeline) { + this.$bkInfo({ + ...commonConfig, + subTitle: this.$t('deleteDraftPipeline'), + confirmFn: this.deletePipelineConfirm + }) + } else if (this.hasDraftPipeline) { + this.$bkInfo({ + ...commonConfig, + subHeader: this.createSubHeader(this.pipelineSetting.pipelineName, this.draftBaseVersionName), + confirmFn: this.deleteDraftConfirm + }) + } + }, goBack () { this.$router.back() } @@ -335,20 +513,6 @@ } } } - .debug-pipeline-draft-btn { - display: flex; - align-items: center; - grid-gap: 8px; - > e { - color: #DCDEE5; - } - .icon-txt-disabled { - cursor: not-allowed; - } - > i:not(.icon-txt-disabled):hover { - color: $primaryColor; - } - } .pipeline-edit-right-aside { display: grid; grid-gap: 10px; @@ -379,5 +543,48 @@ } } } +.manage-icon-more-fill { + font-size: 20px; + padding: 3px; + + &:hover, + &.active { + background-color: #dddee6; + color: #3a85ff; + border-radius: 50%; + } +} +.bk-dropdown-list { + .develop-txt { + display: block; + height: 32px; + line-height: 33px; + padding: 0 16px; + white-space: nowrap; + font-size: 12px; + cursor: pointer; + &:hover { + background-color: #f0f1f5; + } + &.develop-txt-disabled { + cursor: not-allowed; + color: #c4c6cc; + } + } +} +.draft-delete { + text-align: center; + color: #43444a; + p { + margin-bottom: 14px; + max-width: 370px; + } + .label { + color: #76777f; + } + .text-overflow { + @include ellipsis(); + } +} </style> diff --git a/src/frontend/devops-pipeline/src/store/modules/atom/getters.js b/src/frontend/devops-pipeline/src/store/modules/atom/getters.js index f36b2b07fa7..18b2f8ed6e7 100755 --- a/src/frontend/devops-pipeline/src/store/modules/atom/getters.js +++ b/src/frontend/devops-pipeline/src/store/modules/atom/getters.js @@ -51,6 +51,9 @@ export default { onlyBranchPipeline: state => { return state.pipelineInfo?.latestVersionStatus === VERSION_STATUS_ENUM.BRANCH }, + isCommittingPipeline: state => { + return state.pipelineInfo?.latestVersionStatus === VERSION_STATUS_ENUM.COMMITTING + }, isReleaseVersion: state => { return state.activePipelineVersion?.version === state.pipelineInfo?.releaseVersion && state.activePipelineVersion?.status === VERSION_STATUS_ENUM.RELEASED }, diff --git a/src/frontend/locale/pipeline/en-US.json b/src/frontend/locale/pipeline/en-US.json index 8ce182e48d1..040957223d4 100644 --- a/src/frontend/locale/pipeline/en-US.json +++ b/src/frontend/locale/pipeline/en-US.json @@ -1577,5 +1577,9 @@ }, "debugHint": "Debugging and execution do not share build numbers, but they share concurrency control. Debug records are only valid during the draft version debugging period and will be automatically cleared after the version is released.", "templateRollbackBackTips": "The current pipeline is in constraint mode (template instance). You need to jump to the template to roll back the version.", - "versionNotMatch": "The current version is not the latest version and cannot be executed" + "versionNotMatch": "The current version is not the latest version and cannot be executed", + "deleteDraft": "Delete Draft", + "sureDeleteDraft": "Are you sure you want to delete this draft?", + "deleteDraftPipeline": "The current pipeline has not been published yet. Deleting the draft is equivalent to deleting the pipeline. Are you sure you want to proceed?", + "noDraft": "No drafts available for deletion" } diff --git a/src/frontend/locale/pipeline/zh-CN.json b/src/frontend/locale/pipeline/zh-CN.json index 1d3724cd1c1..c04ae0971c5 100644 --- a/src/frontend/locale/pipeline/zh-CN.json +++ b/src/frontend/locale/pipeline/zh-CN.json @@ -1579,5 +1579,9 @@ }, "debugHint": "调试和执行不共享构建号,但共享并发控制。调试记录仅在草稿版本调试期间有效,版本发布后将自动清理。", "templateRollbackBackTips": "当前流水线为约束模式(模板实例),需要跳转到模板进行版本回滚。", - "versionNotMatch": "当前版本非最新版本,无法执行" + "versionNotMatch": "当前版本非最新版本,无法执行", + "deleteDraft": "删除草稿", + "sureDeleteDraft": "确认删除该草稿?", + "deleteDraftPipeline": "当前流水线尚未发布,删除草稿等同于删除流水线,确认删除吗?", + "noDraft": "暂无可删除的草稿" } \ No newline at end of file diff --git a/src/frontend/pnpm-lock.yaml b/src/frontend/pnpm-lock.yaml index 242ea705ba8..0bee871d4d7 100644 --- a/src/frontend/pnpm-lock.yaml +++ b/src/frontend/pnpm-lock.yaml @@ -8249,7 +8249,7 @@ packages: engines: {node: '>= 0.6'} event-emitter@0.3.5: - resolution: {integrity: sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=} + resolution: {integrity: sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==} event-pubsub@4.3.0: resolution: {integrity: sha512-z7IyloorXvKbFx9Bpie2+vMJKKx1fH1EN5yiTfp8CiLOTptSYy1g8H4yDpGlEdshL1PBiFtBHepF2cNsqeEeFQ==} @@ -16762,13 +16762,13 @@ snapshots: '@blueking/eslint-config-bk@2.1.0-beta.12(@babel/core@7.24.6)(@vue/cli-service@5.0.8(@vue/compiler-sfc@3.4.31)(bufferutil@4.0.8)(encoding@0.1.13)(less-loader@12.2.0(less@4.2.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))))(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))(eslint-plugin-prettier@4.2.1(eslint@8.57.0)(prettier@2.8.8))(prettier@2.8.8)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))': dependencies: '@babel/eslint-parser': 7.24.6(@babel/core@7.24.6)(eslint@8.57.0) - '@typescript-eslint/eslint-plugin': 5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4) - '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.6.4) - '@vue/eslint-config-standard': 6.1.0(@vue/cli-service@5.0.8(@vue/compiler-sfc@3.4.31)(bufferutil@4.0.8)(encoding@0.1.13)(less-loader@12.2.0(less@4.2.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))))(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))) + '@typescript-eslint/eslint-plugin': 5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.9.5) + '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.9.5) + '@vue/eslint-config-standard': 6.1.0(@vue/cli-service@5.0.8(@vue/compiler-sfc@3.4.31)(bufferutil@4.0.8)(encoding@0.1.13)(less-loader@12.2.0(less@4.2.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))))(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))) '@vue/eslint-config-typescript': 10.0.0(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(typescript@4.6.4) eslint: 8.57.0 eslint-config-tencent: 1.0.4(@babel/core@7.24.6)(@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4))(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint-plugin-prettier@4.2.1(eslint@8.57.0)(prettier@2.8.8))(eslint@8.57.0)(prettier@2.8.8) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) eslint-plugin-node: 11.1.0(eslint@8.57.0) eslint-plugin-promise: 6.0.1(eslint@8.57.0) eslint-plugin-standard: 5.0.0(eslint@8.57.0) @@ -16793,7 +16793,7 @@ snapshots: '@vue/eslint-config-typescript': 10.0.0(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(typescript@4.6.4) eslint: 8.57.0 eslint-config-tencent: 1.0.4(@babel/core@7.24.6)(@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4))(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint-plugin-prettier@4.2.1(eslint@8.57.0)(prettier@2.8.8))(eslint@8.57.0)(prettier@2.8.8) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) eslint-plugin-node: 11.1.0(eslint@8.57.0) eslint-plugin-promise: 6.0.1(eslint@8.57.0) eslint-plugin-standard: 5.0.0(eslint@8.57.0) @@ -16818,7 +16818,7 @@ snapshots: '@vue/eslint-config-typescript': 10.0.0(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(typescript@4.6.4) eslint: 8.57.0 eslint-config-tencent: 1.0.4(@babel/core@7.24.6)(@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4))(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint-plugin-prettier@4.2.1(eslint@7.32.0)(prettier@2.8.8))(eslint@8.57.0)(prettier@2.8.8) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) eslint-plugin-node: 11.1.0(eslint@8.57.0) eslint-plugin-promise: 6.0.1(eslint@8.57.0) eslint-plugin-standard: 5.0.0(eslint@8.57.0) @@ -19225,7 +19225,7 @@ snapshots: '@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4)': dependencies: - '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.6.4) + '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.9.5) '@typescript-eslint/scope-manager': 5.20.0 '@typescript-eslint/type-utils': 5.20.0(eslint@8.57.0)(typescript@4.6.4) '@typescript-eslint/utils': 5.20.0(eslint@8.57.0)(typescript@4.9.5) @@ -19241,6 +19241,24 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/eslint-plugin@5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.9.5)': + dependencies: + '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.9.5) + '@typescript-eslint/scope-manager': 5.20.0 + '@typescript-eslint/type-utils': 5.20.0(eslint@8.57.0)(typescript@4.6.4) + '@typescript-eslint/utils': 5.20.0(eslint@8.57.0)(typescript@4.9.5) + debug: 4.3.4 + eslint: 8.57.0 + functional-red-black-tree: 1.0.1 + ignore: 5.3.1 + regexpp: 3.2.0 + semver: 7.6.2 + tsutils: 3.21.0(typescript@4.6.4) + optionalDependencies: + typescript: 4.9.5 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/eslint-plugin@7.11.0(@typescript-eslint/parser@7.11.0(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)(typescript@5.4.5)': dependencies: '@eslint-community/regexpp': 4.10.0 @@ -19311,6 +19329,18 @@ snapshots: transitivePeerDependencies: - supports-color + '@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5)': + dependencies: + '@typescript-eslint/scope-manager': 5.20.0 + '@typescript-eslint/types': 5.20.0 + '@typescript-eslint/typescript-estree': 5.20.0(typescript@4.6.4) + debug: 4.3.4 + eslint: 8.57.0 + optionalDependencies: + typescript: 4.9.5 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/parser@7.11.0(eslint@8.57.0)(typescript@5.4.5)': dependencies: '@typescript-eslint/scope-manager': 7.11.0 @@ -20383,13 +20413,13 @@ snapshots: - supports-color - webpack - '@vue/eslint-config-standard@6.1.0(@vue/cli-service@5.0.8(@vue/compiler-sfc@3.4.31)(bufferutil@4.0.8)(encoding@0.1.13)(less-loader@12.2.0(less@4.2.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))))(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))': + '@vue/eslint-config-standard@6.1.0(@vue/cli-service@5.0.8(@vue/compiler-sfc@3.4.31)(bufferutil@4.0.8)(encoding@0.1.13)(less-loader@12.2.0(less@4.2.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))))(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))': dependencies: eslint: 8.57.0 - eslint-config-standard: 16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0) + eslint-config-standard: 16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@7.32.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-webpack: 0.13.8(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0))(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) + eslint-import-resolver-webpack: 0.13.8(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) eslint-plugin-node: 11.1.0(eslint@8.57.0) eslint-plugin-promise: 6.0.1(eslint@8.57.0) eslint-plugin-vue: 8.7.1(eslint@8.57.0) @@ -20402,10 +20432,10 @@ snapshots: '@vue/eslint-config-standard@6.1.0(@vue/cli-service@5.0.8(@vue/compiler-sfc@3.4.31)(bufferutil@4.0.8)(encoding@0.1.13)(lodash@4.17.21)(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))': dependencies: eslint: 8.57.0 - eslint-config-standard: 16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0) + eslint-config-standard: 16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@7.32.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0) eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-webpack: 0.13.8(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0))(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) + eslint-import-resolver-webpack: 0.13.8(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) eslint-plugin-node: 11.1.0(eslint@8.57.0) eslint-plugin-promise: 6.0.1(eslint@8.57.0) eslint-plugin-vue: 8.7.1(eslint@8.57.0) @@ -20418,10 +20448,10 @@ snapshots: '@vue/eslint-config-standard@6.1.0(@vue/cli-service@5.0.8(bufferutil@4.0.8)(encoding@0.1.13)(utf-8-validate@5.0.10)(vue-template-compiler@2.7.16)(vue@3.4.31(typescript@4.9.5))(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@7.32.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint-plugin-vue@8.7.1(eslint@8.57.0))(eslint@8.57.0)(webpack@5.76.1(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1)))': dependencies: eslint: 8.57.0 - eslint-config-standard: 16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0) + eslint-config-standard: 16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@7.32.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0) eslint-import-resolver-node: 0.3.9 eslint-import-resolver-webpack: 0.13.8(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(webpack@5.76.1(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) eslint-plugin-node: 11.1.0(eslint@8.57.0) eslint-plugin-promise: 6.0.1(eslint@8.57.0) eslint-plugin-vue: 8.7.1(eslint@8.57.0) @@ -23890,17 +23920,10 @@ snapshots: eslint-plugin-node: 11.1.0(eslint@7.32.0) eslint-plugin-promise: 5.1.1(eslint@7.32.0) - eslint-config-standard@16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0): + eslint-config-standard@16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@7.32.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0): dependencies: eslint: 8.57.0 - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) - eslint-plugin-node: 11.1.0(eslint@8.57.0) - eslint-plugin-promise: 6.0.1(eslint@8.57.0) - - eslint-config-standard@16.0.3(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0))(eslint-plugin-node@11.1.0(eslint@8.57.0))(eslint-plugin-promise@6.0.1(eslint@8.57.0))(eslint@8.57.0): - dependencies: - eslint: 8.57.0 - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) eslint-plugin-node: 11.1.0(eslint@8.57.0) eslint-plugin-promise: 6.0.1(eslint@8.57.0) @@ -23919,7 +23942,7 @@ snapshots: '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.6.4) eslint: 8.57.0 eslint-plugin-chalk: 1.0.0(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) eslint-plugin-prettier: 4.2.1(eslint@7.32.0)(prettier@2.8.8) prettier: 2.8.8 transitivePeerDependencies: @@ -23931,11 +23954,11 @@ snapshots: dependencies: '@babel/core': 7.24.6 '@babel/eslint-parser': 7.24.6(@babel/core@7.24.6)(eslint@8.57.0) - '@typescript-eslint/eslint-plugin': 5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.6.4) - '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.6.4) + '@typescript-eslint/eslint-plugin': 5.20.0(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0)(typescript@4.9.5) + '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.9.5) eslint: 8.57.0 eslint-plugin-chalk: 1.0.0(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) eslint-plugin-prettier: 4.2.1(eslint@8.57.0)(prettier@2.8.8) prettier: 2.8.8 transitivePeerDependencies: @@ -23989,7 +24012,7 @@ snapshots: array.prototype.find: 2.2.3 debug: 3.2.7 enhanced-resolve: 0.9.1 - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) find-root: 1.1.0 hasown: 2.0.2 interpret: 1.4.0 @@ -24002,12 +24025,12 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0))(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))): + eslint-import-resolver-webpack@0.13.8(eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0))(webpack@5.91.0(webpack-cli@4.10.0(webpack-bundle-analyzer@4.10.2(bufferutil@4.0.8)(utf-8-validate@5.0.10))(webpack-dev-server@4.15.2)(webpack@5.76.1))): dependencies: array.prototype.find: 2.2.3 debug: 3.2.7 enhanced-resolve: 0.9.1 - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0) find-root: 1.1.0 hasown: 2.0.2 interpret: 1.4.0 @@ -24064,7 +24087,7 @@ snapshots: dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.6.4) + '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.9.5) eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 transitivePeerDependencies: @@ -24167,7 +24190,7 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.9.5))(eslint@8.57.0): + eslint-plugin-import@2.29.1(@typescript-eslint/parser@5.20.0(eslint@8.57.0)(typescript@4.6.4))(eslint@8.57.0): dependencies: array-includes: 3.1.8 array.prototype.findlastindex: 1.2.5 @@ -24188,7 +24211,7 @@ snapshots: semver: 6.3.1 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.6.4) + '@typescript-eslint/parser': 5.20.0(eslint@8.57.0)(typescript@4.9.5) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack diff --git a/src/frontend/webpackPlugin/bundle-webpack-plugin.js b/src/frontend/webpackPlugin/bundle-webpack-plugin.js index 474d8e78ee8..68ca6e6855f 100644 --- a/src/frontend/webpackPlugin/bundle-webpack-plugin.js +++ b/src/frontend/webpackPlugin/bundle-webpack-plugin.js @@ -25,12 +25,16 @@ module.exports = class BundleWebpackPlugin { const dist = props.dist || '.' const entryFolderName = props.entryFolderName this.isDev = props.isDev || false + this.DEBUG_ASSETS_BUNDLE_JSON_FILE = path.join( __dirname, '..', dist, 'assets_bundle.json') this.SERVICE_ASSETS_DIR = path.join( __dirname, '..', dist, entryFolderName ) + if (!this.isDev && !fs.existsSync(this.SERVICE_ASSETS_DIR)) { + fs.mkdirSync(this.SERVICE_ASSETS_DIR, { recursive: true }) + } } apply (compiler) { @@ -81,11 +85,15 @@ module.exports = class BundleWebpackPlugin { }) assetsMap[entryName] = assets - if (!fs.existsSync(SERVICE_ASSETS_DIR)) { - fs.mkdirSync(SERVICE_ASSETS_DIR) + if (!this.isDev) { + fs.writeFileSync(`${SERVICE_ASSETS_DIR}/${entryName}.json`, JSON.stringify(assetsMap)) + console.log(`get assets entry about ${entryName}, ${JSON.stringify(assetsMap)}`) } - fs.writeFileSync(`${SERVICE_ASSETS_DIR}/${entryName}.json`, JSON.stringify(assetsMap)) } + if (this.isDev) { + fs.writeFileSync(this.DEBUG_ASSETS_BUNDLE_JSON_FILE, JSON.stringify(assetsMap)) + } + callback() } )