diff --git a/config/dev.ts b/config/dev.ts index d562e3f..34742cc 100644 --- a/config/dev.ts +++ b/config/dev.ts @@ -4,7 +4,27 @@ module.exports = { }, defineConstants: { }, - mini: {}, + mini: { + webpackChain: (chain, webpack) => { + chain.merge({ + plugin: { + install: { + plugin: require('terser-webpack-plugin'), + args: [ + { + terserOptions: { + compress: true, // 默认使用terser压缩 + // mangle: false, + keep_classnames: true, // 不改变class名称 + keep_fnames: true, // 不改变函数名称 + }, + }, + ], + }, + }, + }) + }, + }, h5: { esnextModules: ['taro-ui'] } diff --git a/config/index.ts b/config/index.ts index b9d9dca..d3c5171 100644 --- a/config/index.ts +++ b/config/index.ts @@ -10,7 +10,8 @@ const config = { sourceRoot: 'src', outputRoot: 'dist', plugins: [ - '@tarojs/plugin-html' + '@tarojs/plugin-html', + 'taro-plugin-compiler-optimization' ], defineConstants: { }, @@ -21,11 +22,22 @@ const config = { } }, framework: 'react', - compiler: 'webpack5', + compiler: { + type: 'webpack5', + // 依赖预编译配置 + prebundle: { + enable: true + } + }, cache: { enable: false // Webpack 持久化缓存配置,建议开启。默认配置请参考:https://docs.taro.zone/docs/config-detail#cache }, mini: { + enableExtract: true, + miniCssExtractPluginOption: { + //忽略css文件引入顺序 + ignoreOrder: true + }, postcss: { pxtransform: { enable: true, @@ -40,13 +52,16 @@ const config = { } }, cssModules: { - enable: false, // 默认为 false,如需使用 css modules 功能,则设为 true + enable: true, // 默认为 false,如需使用 css modules 功能,则设为 true config: { namingPattern: 'module', // 转换模式,取值为 global/module generateScopedName: '[name]__[local]___[hash:base64:5]' } } - } + }, + optimizeMainPackage: { + enable: true, + }, }, h5: { publicPath: '/', diff --git a/package-lock.json b/package-lock.json index 6c911dd..8bf03cc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -31,7 +31,8 @@ "react": "^18.0.0", "react-dom": "^18.0.0", "react-redux": "^9.0.3", - "taro-ui": "^3.2.0" + "taro-ui": "^3.2.0", + "terser-webpack-plugin": "^5.3.9" }, "devDependencies": { "@babel/core": "^7.8.0", @@ -45,6 +46,7 @@ "@typescript-eslint/eslint-plugin": "^5.20.0", "@typescript-eslint/parser": "^5.20.0", "babel-preset-taro": "3.6.19", + "cache-loader": "^4.1.0", "eslint": "^8.12.0", "eslint-config-taro": "3.6.19", "eslint-plugin-import": "^2.12.0", @@ -53,6 +55,8 @@ "postcss": "^8.4.18", "react-refresh": "^0.11.0", "stylelint": "9.3.0", + "taro-plugin-compiler-optimization": "^1.0.4", + "thread-loader": "^4.0.2", "ts-node": "^10.9.1", "typescript": "^4.1.0", "webpack": "^5.78.0" @@ -4966,7 +4970,6 @@ "version": "0.3.5", "resolved": "https://registry.npmmirror.com/@jridgewell/source-map/-/source-map-0.3.5.tgz", "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", - "dev": true, "license": "MIT", "dependencies": { "@jridgewell/gen-mapping": "^0.3.0", @@ -8709,7 +8712,6 @@ "version": "8.44.7", "resolved": "https://registry.npmmirror.com/@types/eslint/-/eslint-8.44.7.tgz", "integrity": "sha512-f5ORu2hcBbKei97U73mf+l9t4zTGl74IqZ0GQk4oVea/VS8tQZYkUveSYojk+frraAVYId0V2WC9O4PTNru2FQ==", - "dev": true, "license": "MIT", "dependencies": { "@types/estree": "*", @@ -8720,7 +8722,6 @@ "version": "3.7.7", "resolved": "https://registry.npmmirror.com/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", - "dev": true, "license": "MIT", "dependencies": { "@types/eslint": "*", @@ -8731,7 +8732,6 @@ "version": "1.0.5", "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.5.tgz", "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", - "dev": true, "license": "MIT" }, "node_modules/@types/expect": { @@ -8862,7 +8862,6 @@ "version": "7.0.15", "resolved": "https://registry.npmmirror.com/@types/json-schema/-/json-schema-7.0.15.tgz", "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true, "license": "MIT" }, "node_modules/@types/json5": { @@ -9604,7 +9603,6 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/ast/-/ast-1.11.6.tgz", "integrity": "sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==", - "dev": true, "license": "MIT", "dependencies": { "@webassemblyjs/helper-numbers": "1.11.6", @@ -9615,28 +9613,24 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", - "dev": true, "license": "MIT" }, "node_modules/@webassemblyjs/helper-api-error": { "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", - "dev": true, "license": "MIT" }, "node_modules/@webassemblyjs/helper-buffer": { "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz", "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==", - "dev": true, "license": "MIT" }, "node_modules/@webassemblyjs/helper-numbers": { "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", - "dev": true, "license": "MIT", "dependencies": { "@webassemblyjs/floating-point-hex-parser": "1.11.6", @@ -9648,14 +9642,12 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", - "dev": true, "license": "MIT" }, "node_modules/@webassemblyjs/helper-wasm-section": { "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz", "integrity": "sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==", - "dev": true, "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.11.6", @@ -9668,7 +9660,6 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", - "dev": true, "license": "MIT", "dependencies": { "@xtuc/ieee754": "^1.2.0" @@ -9678,7 +9669,6 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", - "dev": true, "license": "Apache-2.0", "dependencies": { "@xtuc/long": "4.2.2" @@ -9688,14 +9678,12 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", - "dev": true, "license": "MIT" }, "node_modules/@webassemblyjs/wasm-edit": { "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz", "integrity": "sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==", - "dev": true, "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.11.6", @@ -9712,7 +9700,6 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz", "integrity": "sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==", - "dev": true, "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.11.6", @@ -9726,7 +9713,6 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz", "integrity": "sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==", - "dev": true, "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.11.6", @@ -9739,7 +9725,6 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz", "integrity": "sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==", - "dev": true, "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.11.6", @@ -9754,7 +9739,6 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz", "integrity": "sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==", - "dev": true, "license": "MIT", "dependencies": { "@webassemblyjs/ast": "1.11.6", @@ -9774,14 +9758,12 @@ "version": "1.2.0", "resolved": "https://registry.npmmirror.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz", "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true, "license": "BSD-3-Clause" }, "node_modules/@xtuc/long": { "version": "4.2.2", "resolved": "https://registry.npmmirror.com/@xtuc/long/-/long-4.2.2.tgz", "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true, "license": "Apache-2.0" }, "node_modules/abab": { @@ -9856,7 +9838,6 @@ "version": "1.9.0", "resolved": "https://registry.npmmirror.com/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", - "dev": true, "license": "MIT", "peerDependencies": { "acorn": "^8" @@ -9953,7 +9934,6 @@ "version": "6.12.6", "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, "license": "MIT", "dependencies": { "fast-deep-equal": "^3.1.1", @@ -10012,7 +9992,6 @@ "version": "3.5.2", "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz", "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, "license": "MIT", "peerDependencies": { "ajv": "^6.9.1" @@ -11428,6 +11407,12 @@ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "license": "MIT" }, + "node_modules/buffer-json": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/buffer-json/-/buffer-json-2.0.0.tgz", + "integrity": "sha512-+jjPFVqyfF1esi9fvfUs3NqM0pH1ziZ36VP4hmA/y/Ssfo/5w5xHKfTw9BwQjoJ1w/oVtpLomqwUHKdefGyuHw==", + "dev": true + }, "node_modules/builtins": { "version": "5.0.1", "resolved": "https://registry.npmmirror.com/builtins/-/builtins-5.0.1.tgz", @@ -11568,6 +11553,174 @@ "node": ">=0.10.0" } }, + "node_modules/cache-loader": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/cache-loader/-/cache-loader-4.1.0.tgz", + "integrity": "sha512-ftOayxve0PwKzBF/GLsZNC9fJBXl8lkZE3TOsjkboHfVHVkL39iUEs1FO07A33mizmci5Dudt38UZrrYXDtbhw==", + "dev": true, + "dependencies": { + "buffer-json": "^2.0.0", + "find-cache-dir": "^3.0.0", + "loader-utils": "^1.2.3", + "mkdirp": "^0.5.1", + "neo-async": "^2.6.1", + "schema-utils": "^2.0.0" + }, + "engines": { + "node": ">= 8.9.0" + }, + "peerDependencies": { + "webpack": "^4.0.0" + } + }, + "node_modules/cache-loader/node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmmirror.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cache-loader/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cache-loader/node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/cache-loader/node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/cache-loader/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cache-loader/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cache-loader/node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/cache-loader/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/cache-loader/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cache-loader/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/cache-loader/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cache-loader/node_modules/schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 8.9.0" + } + }, "node_modules/cacheable-request": { "version": "2.1.4", "resolved": "https://registry.npmmirror.com/cacheable-request/-/cacheable-request-2.1.4.tgz", @@ -11971,7 +12124,6 @@ "version": "1.0.3", "resolved": "https://registry.npmmirror.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true, "license": "MIT", "engines": { "node": ">=6.0" @@ -14409,7 +14561,6 @@ "version": "5.15.0", "resolved": "https://registry.npmmirror.com/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", - "dev": true, "license": "MIT", "dependencies": { "graceful-fs": "^4.2.4", @@ -14423,7 +14574,6 @@ "version": "2.2.1", "resolved": "https://registry.npmmirror.com/tapable/-/tapable-2.2.1.tgz", "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -15329,7 +15479,6 @@ "version": "5.1.1", "resolved": "https://registry.npmmirror.com/eslint-scope/-/eslint-scope-5.1.1.tgz", "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, "license": "BSD-2-Clause", "dependencies": { "esrecurse": "^4.3.0", @@ -15343,7 +15492,6 @@ "version": "4.3.0", "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, "license": "BSD-2-Clause", "engines": { "node": ">=4.0" @@ -15545,7 +15693,6 @@ "version": "4.3.0", "resolved": "https://registry.npmmirror.com/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, "license": "BSD-2-Clause", "dependencies": { "estraverse": "^5.2.0" @@ -15558,7 +15705,6 @@ "version": "5.3.0", "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-5.3.0.tgz", "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, "license": "BSD-2-Clause", "engines": { "node": ">=4.0" @@ -15610,7 +15756,6 @@ "version": "3.3.0", "resolved": "https://registry.npmmirror.com/events/-/events-3.3.0.tgz", "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true, "license": "MIT", "engines": { "node": ">=0.8.x" @@ -16639,7 +16784,6 @@ "version": "2.1.0", "resolved": "https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true, "license": "MIT" }, "node_modules/fast-levenshtein": { @@ -17671,7 +17815,6 @@ "version": "0.4.1", "resolved": "https://registry.npmmirror.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true, "license": "BSD-2-Clause" }, "node_modules/global-dirs": { @@ -21006,7 +21149,6 @@ "version": "2.3.1", "resolved": "https://registry.npmmirror.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true, "license": "MIT" }, "node_modules/json-schema": { @@ -21050,7 +21192,6 @@ "version": "0.4.1", "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true, "license": "MIT" }, "node_modules/json-stable-stringify-without-jsonify": { @@ -21571,7 +21712,6 @@ "version": "4.3.0", "resolved": "https://registry.npmmirror.com/loader-runner/-/loader-runner-4.3.0.tgz", "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true, "license": "MIT", "engines": { "node": ">=6.11.5" @@ -27769,7 +27909,6 @@ "version": "2.3.1", "resolved": "https://registry.npmmirror.com/punycode/-/punycode-2.3.1.tgz", "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -27903,7 +28042,6 @@ "version": "2.1.0", "resolved": "https://registry.npmmirror.com/randombytes/-/randombytes-2.1.0.tgz", "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, "license": "MIT", "dependencies": { "safe-buffer": "^5.1.0" @@ -29888,7 +30026,6 @@ "version": "5.2.1", "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true, "funding": [ { "type": "github", @@ -30027,7 +30164,6 @@ "version": "3.3.0", "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.3.0.tgz", "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "dev": true, "license": "MIT", "dependencies": { "@types/json-schema": "^7.0.8", @@ -30334,7 +30470,6 @@ "version": "6.0.1", "resolved": "https://registry.npmmirror.com/serialize-javascript/-/serialize-javascript-6.0.1.tgz", "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", - "dev": true, "license": "BSD-3-Clause", "dependencies": { "randombytes": "^2.1.0" @@ -33168,6 +33303,12 @@ "license": "ISC", "peer": true }, + "node_modules/taro-plugin-compiler-optimization": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/taro-plugin-compiler-optimization/-/taro-plugin-compiler-optimization-1.0.4.tgz", + "integrity": "sha512-7aAOSWLpkPlJkCM6NPjcZEqoLXdquNy16CEEKIzAAD03OJ742rHhVzbZ0NIdMABMV7xC+gzRFq9eoZ64gm9o2g==", + "dev": true + }, "node_modules/taro-ui": { "version": "3.2.0", "resolved": "https://registry.npmmirror.com/taro-ui/-/taro-ui-3.2.0.tgz", @@ -33284,7 +33425,6 @@ "version": "5.24.0", "resolved": "https://registry.npmmirror.com/terser/-/terser-5.24.0.tgz", "integrity": "sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==", - "dev": true, "license": "BSD-2-Clause", "dependencies": { "@jridgewell/source-map": "^0.3.3", @@ -33303,8 +33443,6 @@ "version": "5.3.9", "resolved": "https://registry.npmmirror.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz", "integrity": "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==", - "dev": true, - "license": "MIT", "dependencies": { "@jridgewell/trace-mapping": "^0.3.17", "jest-worker": "^27.4.5", @@ -33315,10 +33453,6 @@ "engines": { "node": ">= 10.13.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, "peerDependencies": { "webpack": "^5.1.0" }, @@ -33338,7 +33472,6 @@ "version": "2.20.3", "resolved": "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz", "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true, "license": "MIT" }, "node_modules/text-table": { @@ -33381,6 +33514,69 @@ "node": ">=0.8" } }, + "node_modules/thread-loader": { + "version": "4.0.2", + "resolved": "https://registry.npmmirror.com/thread-loader/-/thread-loader-4.0.2.tgz", + "integrity": "sha512-UOk/KBydsQjh4Ja5kocxDUzhv11KYptHN/h8gdSwo6/MBkYrWqQua6K2qwlpXnCXS9c/uLs8F/JF8rpveF0+fA==", + "dev": true, + "dependencies": { + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^4.1.0", + "neo-async": "^2.6.2", + "schema-utils": "^4.0.1" + }, + "engines": { + "node": ">= 16.10.0" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/thread-loader/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "node_modules/thread-loader/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/thread-loader/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "node_modules/thread-loader/node_modules/schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + } + }, "node_modules/throat": { "version": "6.0.2", "resolved": "https://registry.npmmirror.com/throat/-/throat-6.0.2.tgz", @@ -34487,7 +34683,6 @@ "version": "4.4.1", "resolved": "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, "license": "BSD-2-Clause", "dependencies": { "punycode": "^2.1.0" @@ -34989,7 +35184,6 @@ "version": "2.4.0", "resolved": "https://registry.npmmirror.com/watchpack/-/watchpack-2.4.0.tgz", "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dev": true, "license": "MIT", "dependencies": { "glob-to-regexp": "^0.4.1", @@ -35032,7 +35226,6 @@ "version": "5.89.0", "resolved": "https://registry.npmmirror.com/webpack/-/webpack-5.89.0.tgz", "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==", - "dev": true, "license": "MIT", "dependencies": { "@types/eslint-scope": "^3.7.3", @@ -35467,14 +35660,12 @@ "version": "1.4.1", "resolved": "https://registry.npmmirror.com/es-module-lexer/-/es-module-lexer-1.4.1.tgz", "integrity": "sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==", - "dev": true, "license": "MIT" }, "node_modules/webpack/node_modules/tapable": { "version": "2.2.1", "resolved": "https://registry.npmmirror.com/tapable/-/tapable-2.2.1.tgz", "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -35484,7 +35675,6 @@ "version": "3.2.3", "resolved": "https://registry.npmmirror.com/webpack-sources/-/webpack-sources-3.2.3.tgz", "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true, "license": "MIT", "engines": { "node": ">=10.13.0" @@ -39502,7 +39692,6 @@ "version": "0.3.5", "resolved": "https://registry.npmmirror.com/@jridgewell/source-map/-/source-map-0.3.5.tgz", "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", - "dev": true, "requires": { "@jridgewell/gen-mapping": "^0.3.0", "@jridgewell/trace-mapping": "^0.3.9" @@ -42116,7 +42305,6 @@ "version": "8.44.7", "resolved": "https://registry.npmmirror.com/@types/eslint/-/eslint-8.44.7.tgz", "integrity": "sha512-f5ORu2hcBbKei97U73mf+l9t4zTGl74IqZ0GQk4oVea/VS8tQZYkUveSYojk+frraAVYId0V2WC9O4PTNru2FQ==", - "dev": true, "requires": { "@types/estree": "*", "@types/json-schema": "*" @@ -42126,7 +42314,6 @@ "version": "3.7.7", "resolved": "https://registry.npmmirror.com/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", - "dev": true, "requires": { "@types/eslint": "*", "@types/estree": "*" @@ -42135,8 +42322,7 @@ "@types/estree": { "version": "1.0.5", "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", - "dev": true + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==" }, "@types/expect": { "version": "1.20.4", @@ -42253,8 +42439,7 @@ "@types/json-schema": { "version": "7.0.15", "resolved": "https://registry.npmmirror.com/@types/json-schema/-/json-schema-7.0.15.tgz", - "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", - "dev": true + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==" }, "@types/json5": { "version": "0.0.29", @@ -42811,7 +42996,6 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/ast/-/ast-1.11.6.tgz", "integrity": "sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==", - "dev": true, "requires": { "@webassemblyjs/helper-numbers": "1.11.6", "@webassemblyjs/helper-wasm-bytecode": "1.11.6" @@ -42820,26 +43004,22 @@ "@webassemblyjs/floating-point-hex-parser": { "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", - "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", - "dev": true + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==" }, "@webassemblyjs/helper-api-error": { "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", - "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", - "dev": true + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==" }, "@webassemblyjs/helper-buffer": { "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz", - "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==", - "dev": true + "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==" }, "@webassemblyjs/helper-numbers": { "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", - "dev": true, "requires": { "@webassemblyjs/floating-point-hex-parser": "1.11.6", "@webassemblyjs/helper-api-error": "1.11.6", @@ -42849,14 +43029,12 @@ "@webassemblyjs/helper-wasm-bytecode": { "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", - "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", - "dev": true + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==" }, "@webassemblyjs/helper-wasm-section": { "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz", "integrity": "sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.11.6", "@webassemblyjs/helper-buffer": "1.11.6", @@ -42868,7 +43046,6 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", - "dev": true, "requires": { "@xtuc/ieee754": "^1.2.0" } @@ -42877,7 +43054,6 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", - "dev": true, "requires": { "@xtuc/long": "4.2.2" } @@ -42885,14 +43061,12 @@ "@webassemblyjs/utf8": { "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", - "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", - "dev": true + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==" }, "@webassemblyjs/wasm-edit": { "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz", "integrity": "sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.11.6", "@webassemblyjs/helper-buffer": "1.11.6", @@ -42908,7 +43082,6 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz", "integrity": "sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.11.6", "@webassemblyjs/helper-wasm-bytecode": "1.11.6", @@ -42921,7 +43094,6 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz", "integrity": "sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.11.6", "@webassemblyjs/helper-buffer": "1.11.6", @@ -42933,7 +43105,6 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz", "integrity": "sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.11.6", "@webassemblyjs/helper-api-error": "1.11.6", @@ -42947,7 +43118,6 @@ "version": "1.11.6", "resolved": "https://registry.npmmirror.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz", "integrity": "sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.11.6", "@xtuc/long": "4.2.2" @@ -42962,14 +43132,12 @@ "@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmmirror.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" }, "@xtuc/long": { "version": "4.2.2", "resolved": "https://registry.npmmirror.com/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" }, "abab": { "version": "2.0.6", @@ -43025,7 +43193,6 @@ "version": "1.9.0", "resolved": "https://registry.npmmirror.com/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", - "dev": true, "requires": {} }, "acorn-jsx": { @@ -43093,7 +43260,6 @@ "version": "6.12.6", "resolved": "https://registry.npmmirror.com/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -43134,7 +43300,6 @@ "version": "3.5.2", "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz", "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true, "requires": {} }, "anser": { @@ -44159,6 +44324,12 @@ "resolved": "https://registry.npmmirror.com/buffer-from/-/buffer-from-1.1.2.tgz", "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" }, + "buffer-json": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/buffer-json/-/buffer-json-2.0.0.tgz", + "integrity": "sha512-+jjPFVqyfF1esi9fvfUs3NqM0pH1ziZ36VP4hmA/y/Ssfo/5w5xHKfTw9BwQjoJ1w/oVtpLomqwUHKdefGyuHw==", + "dev": true + }, "builtins": { "version": "5.0.1", "resolved": "https://registry.npmmirror.com/builtins/-/builtins-5.0.1.tgz", @@ -44267,6 +44438,134 @@ "unset-value": "^1.0.0" } }, + "cache-loader": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/cache-loader/-/cache-loader-4.1.0.tgz", + "integrity": "sha512-ftOayxve0PwKzBF/GLsZNC9fJBXl8lkZE3TOsjkboHfVHVkL39iUEs1FO07A33mizmci5Dudt38UZrrYXDtbhw==", + "dev": true, + "requires": { + "buffer-json": "^2.0.0", + "find-cache-dir": "^3.0.0", + "loader-utils": "^1.2.3", + "mkdirp": "^0.5.1", + "neo-async": "^2.6.1", + "schema-utils": "^2.0.0" + }, + "dependencies": { + "find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmmirror.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "json5": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + } + }, + "loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "dev": true, + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dev": true, + "requires": { + "semver": "^6.0.0" + } + }, + "mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmmirror.com/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "requires": { + "minimist": "^1.2.6" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "requires": { + "find-up": "^4.0.0" + } + }, + "schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + } + } + } + }, "cacheable-request": { "version": "2.1.4", "resolved": "https://registry.npmmirror.com/cacheable-request/-/cacheable-request-2.1.4.tgz", @@ -44550,8 +44849,7 @@ "chrome-trace-event": { "version": "1.0.3", "resolved": "https://registry.npmmirror.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==" }, "ci-info": { "version": "3.9.0", @@ -46302,7 +46600,6 @@ "version": "5.15.0", "resolved": "https://registry.npmmirror.com/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", - "dev": true, "requires": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" @@ -46311,8 +46608,7 @@ "tapable": { "version": "2.2.1", "resolved": "https://registry.npmmirror.com/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==" } } }, @@ -46977,7 +47273,6 @@ "version": "5.1.1", "resolved": "https://registry.npmmirror.com/eslint-scope/-/eslint-scope-5.1.1.tgz", "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, "requires": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" @@ -46986,8 +47281,7 @@ "estraverse": { "version": "4.3.0", "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" } } }, @@ -47026,7 +47320,6 @@ "version": "4.3.0", "resolved": "https://registry.npmmirror.com/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, "requires": { "estraverse": "^5.2.0" } @@ -47034,8 +47327,7 @@ "estraverse": { "version": "5.3.0", "resolved": "https://registry.npmmirror.com/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==" }, "estree-walker": { "version": "2.0.2", @@ -47068,8 +47360,7 @@ "events": { "version": "3.3.0", "resolved": "https://registry.npmmirror.com/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" }, "exec-async": { "version": "2.2.0", @@ -47852,8 +48143,7 @@ "fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmmirror.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" }, "fast-levenshtein": { "version": "2.0.6", @@ -48583,8 +48873,7 @@ "glob-to-regexp": { "version": "0.4.1", "resolved": "https://registry.npmmirror.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" }, "global-dirs": { "version": "3.0.1", @@ -50897,8 +51186,7 @@ "json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmmirror.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", - "dev": true + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" }, "json-schema": { "version": "0.4.0", @@ -50938,8 +51226,7 @@ "json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" }, "json-stable-stringify-without-jsonify": { "version": "1.0.1", @@ -51264,8 +51551,7 @@ "loader-runner": { "version": "4.3.0", "resolved": "https://registry.npmmirror.com/loader-runner/-/loader-runner-4.3.0.tgz", - "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", - "dev": true + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==" }, "loader-utils": { "version": "2.0.4", @@ -55703,8 +55989,7 @@ "punycode": { "version": "2.3.1", "resolved": "https://registry.npmmirror.com/punycode/-/punycode-2.3.1.tgz", - "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==" }, "pupa": { "version": "2.1.1", @@ -55787,7 +56072,6 @@ "version": "2.1.0", "resolved": "https://registry.npmmirror.com/randombytes/-/randombytes-2.1.0.tgz", "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, "requires": { "safe-buffer": "^5.1.0" } @@ -57272,8 +57556,7 @@ "safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, "safe-json-stringify": { "version": "1.2.0", @@ -57353,7 +57636,6 @@ "version": "3.3.0", "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-3.3.0.tgz", "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", - "dev": true, "requires": { "@types/json-schema": "^7.0.8", "ajv": "^6.12.5", @@ -57585,7 +57867,6 @@ "version": "6.0.1", "resolved": "https://registry.npmmirror.com/serialize-javascript/-/serialize-javascript-6.0.1.tgz", "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", - "dev": true, "requires": { "randombytes": "^2.1.0" } @@ -59693,6 +59974,12 @@ } } }, + "taro-plugin-compiler-optimization": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/taro-plugin-compiler-optimization/-/taro-plugin-compiler-optimization-1.0.4.tgz", + "integrity": "sha512-7aAOSWLpkPlJkCM6NPjcZEqoLXdquNy16CEEKIzAAD03OJ742rHhVzbZ0NIdMABMV7xC+gzRFq9eoZ64gm9o2g==", + "dev": true + }, "taro-ui": { "version": "3.2.0", "resolved": "https://registry.npmmirror.com/taro-ui/-/taro-ui-3.2.0.tgz", @@ -59770,7 +60057,6 @@ "version": "5.24.0", "resolved": "https://registry.npmmirror.com/terser/-/terser-5.24.0.tgz", "integrity": "sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==", - "dev": true, "requires": { "@jridgewell/source-map": "^0.3.3", "acorn": "^8.8.2", @@ -59781,8 +60067,7 @@ "commander": { "version": "2.20.3", "resolved": "https://registry.npmmirror.com/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" } } }, @@ -59790,7 +60075,6 @@ "version": "5.3.9", "resolved": "https://registry.npmmirror.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz", "integrity": "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==", - "dev": true, "requires": { "@jridgewell/trace-mapping": "^0.3.17", "jest-worker": "^27.4.5", @@ -59826,6 +60110,59 @@ "thenify": ">= 3.1.0 < 4" } }, + "thread-loader": { + "version": "4.0.2", + "resolved": "https://registry.npmmirror.com/thread-loader/-/thread-loader-4.0.2.tgz", + "integrity": "sha512-UOk/KBydsQjh4Ja5kocxDUzhv11KYptHN/h8gdSwo6/MBkYrWqQua6K2qwlpXnCXS9c/uLs8F/JF8rpveF0+fA==", + "dev": true, + "requires": { + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^4.1.0", + "neo-async": "^2.6.2", + "schema-utils": "^4.0.1" + }, + "dependencies": { + "ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmmirror.com/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.3" + } + }, + "json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + }, + "schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + } + } + } + }, "throat": { "version": "6.0.2", "resolved": "https://registry.npmmirror.com/throat/-/throat-6.0.2.tgz", @@ -60609,7 +60946,6 @@ "version": "4.4.1", "resolved": "https://registry.npmmirror.com/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, "requires": { "punycode": "^2.1.0" } @@ -60974,7 +61310,6 @@ "version": "2.4.0", "resolved": "https://registry.npmmirror.com/watchpack/-/watchpack-2.4.0.tgz", "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "dev": true, "requires": { "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.1.2" @@ -61007,7 +61342,6 @@ "version": "5.89.0", "resolved": "https://registry.npmmirror.com/webpack/-/webpack-5.89.0.tgz", "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==", - "dev": true, "requires": { "@types/eslint-scope": "^3.7.3", "@types/estree": "^1.0.0", @@ -61038,20 +61372,17 @@ "es-module-lexer": { "version": "1.4.1", "resolved": "https://registry.npmmirror.com/es-module-lexer/-/es-module-lexer-1.4.1.tgz", - "integrity": "sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==", - "dev": true + "integrity": "sha512-cXLGjP0c4T3flZJKQSuziYoq7MlT+rnvfZjfp7h+I7K9BNX54kP9nyWvdbwjQ4u1iWbOL4u96fgeZLToQlZC7w==" }, "tapable": { "version": "2.2.1", "resolved": "https://registry.npmmirror.com/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "dev": true + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==" }, "webpack-sources": { "version": "3.2.3", "resolved": "https://registry.npmmirror.com/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "dev": true + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==" } } }, diff --git a/package.json b/package.json index 4b391e5..70d4d59 100644 --- a/package.json +++ b/package.json @@ -58,7 +58,8 @@ "react": "^18.0.0", "react-dom": "^18.0.0", "react-redux": "^9.0.3", - "taro-ui": "^3.2.0" + "taro-ui": "^3.2.0", + "terser-webpack-plugin": "^5.3.9" }, "devDependencies": { "@babel/core": "^7.8.0", @@ -72,6 +73,7 @@ "@typescript-eslint/eslint-plugin": "^5.20.0", "@typescript-eslint/parser": "^5.20.0", "babel-preset-taro": "3.6.19", + "cache-loader": "^4.1.0", "eslint": "^8.12.0", "eslint-config-taro": "3.6.19", "eslint-plugin-import": "^2.12.0", @@ -80,6 +82,8 @@ "postcss": "^8.4.18", "react-refresh": "^0.11.0", "stylelint": "9.3.0", + "taro-plugin-compiler-optimization": "^1.0.4", + "thread-loader": "^4.0.2", "ts-node": "^10.9.1", "typescript": "^4.1.0", "webpack": "^5.78.0" diff --git a/src/app.config.ts b/src/app.config.ts index 1384a7e..bd31c05 100644 --- a/src/app.config.ts +++ b/src/app.config.ts @@ -14,6 +14,10 @@ export default defineAppConfig({ "pages/register/register", 'pages/instrument/instrument', 'pages/privacyPolicy/privacyPolicy', + 'pages/about/about', + 'pages/message/message', + 'pages/consultant/consultant', + 'pages/integral_list/integral_list', 'pages/template/template', ], "tabBar": { @@ -55,6 +59,10 @@ export default defineAppConfig({ }, ] }, + usingComponents: { + + }, + lazyCodeLoading: 'requiredComponents', window: { backgroundTextStyle: 'light', navigationStyle: 'custom', diff --git a/src/app.less b/src/app.less index 4f0d876..1574c7d 100644 --- a/src/app.less +++ b/src/app.less @@ -130,3 +130,15 @@ page { .van-popup { z-index: 10001 !important; } + +.van-toast__container { + background: #333; + border-radius: 10rpx; + z-index: 10003 !important; +} + +page { + fontfamily: -appleSystem, BlinkMacSystemFont, "Helvetica Neue", Helvetica, + Segoe UI, Arial, Roboto, "PingFang SC", "miui", "Hiragino Sans GB", + "Microsoft Yahei", sansSerif; +} diff --git a/src/app.tsx b/src/app.tsx index b46b447..796767c 100644 --- a/src/app.tsx +++ b/src/app.tsx @@ -6,14 +6,23 @@ import "./app.less"; // import "@tarojs/taro/html5.css"; import Taro from "@tarojs/taro"; -import { go } from "./utils/traoAPI"; import { Provider } from "react-redux"; import store from "./store"; -import "@antmjs/vantui/es/index.less"; import "taro-ui/rn/style/components/icon.scss"; +import "@antmjs/vantui/es/datetime-picker/index.less"; +import "@antmjs/vantui/es/popup/index.less"; +import "@antmjs/vantui/es/dialog/index.less"; +import "@antmjs/vantui/es/transition/index.less"; +import "@antmjs/vantui/es/overlay/index.less"; +import "@antmjs/vantui/es/nav-bar/index.less"; +import "@antmjs/vantui/es/toast/index.less"; +import "@antmjs/vantui/es/picker/index.less"; +import "@antmjs/vantui/es/picker-column/index.less"; +import "@antmjs/vantui/es/style/base.less"; + class App extends Component { // 可以使用所有的 React 生命周期方法 componentDidMount() {} @@ -25,10 +34,6 @@ class App extends Component { return; } - const isFirst = Taro.getStorageSync("isWelcome"); - if (!isFirst) { - go("/pages/initiate/initiate"); - } // Taro.switchTab({ // url: "pages/index/index", // }); diff --git a/src/components/navbar/navbar.less b/src/components/navbar/navbar.less index af581a2..d98613c 100644 --- a/src/components/navbar/navbar.less +++ b/src/components/navbar/navbar.less @@ -25,18 +25,23 @@ justify-content: space-between; align-items: center; background: #fff; + padding-bottom: 10rpx; z-index: 99; .logo { display: inline-flex; align-items: center; + justify-content: center; width: 220rpx; + font-size: 32rpx; + font-weight: bold; } .back { width: 80rpx; - padding: 20rpx 0; text-align: center; color: #666; font-size: 42rpx; + display: flex; + justify-content: center; } } diff --git a/src/components/navbar/navbar.tsx b/src/components/navbar/navbar.tsx index 9c1717b..0690145 100644 --- a/src/components/navbar/navbar.tsx +++ b/src/components/navbar/navbar.tsx @@ -1,10 +1,11 @@ import { Component } from "react"; import Taro from "@tarojs/taro"; +import { Block, View, Text, Image } from "@tarojs/components"; +import { back } from "../../utils/traoAPI"; + import "./navbar.less"; -import { Block, View, Text, Image, Input, Button } from "@tarojs/components"; -import { back } from "../../utils/traoAPI"; export default class Navbar extends Component { constructor(props) { super(props); @@ -59,7 +60,7 @@ export default class Navbar extends Component { } render() { - let { isBack } = this.props; + let { isBack, leftSlot, titleSlot } = this.props; let { statusBarHeight, navigationBarHeight, navHeight } = this.state; const statusBarHeightRpx = statusBarHeight * 2; const navigationBarHeightRpx = navigationBarHeight * 2; @@ -77,13 +78,19 @@ export default class Navbar extends Component { {isBack && ( )} + {leftSlot} - + {titleSlot ? ( + titleSlot + ) : ( + + )} diff --git a/src/components/popup/popup-alert.less b/src/components/popup/popup-alert.less index e4ffc13..ec91ea6 100644 --- a/src/components/popup/popup-alert.less +++ b/src/components/popup/popup-alert.less @@ -19,6 +19,8 @@ .alert-popup-content { font-size: 28rpx; margin-bottom: 20rpx; + max-height: 600rpx; + overflow-y: auto; } .alert-popup-content.is-alert { @@ -48,12 +50,14 @@ background-color: #000; } -// .alert-popup-btn:first-child { -// margin-left: 22rpx; -// background-color: transparent; -// } +.pupup-close { + position: absolute; + right: 30rpx; + top: 30rpx; + color: #000; + font-size: 36rpx; +} -// .confirm-popup-btn:last-child { -// color: #fff; -// background-color: #000; -// } +.text-left { + text-align: left; +} diff --git a/src/components/popup/popup-alert.tsx b/src/components/popup/popup-alert.tsx index 1702d3b..2716305 100644 --- a/src/components/popup/popup-alert.tsx +++ b/src/components/popup/popup-alert.tsx @@ -1,28 +1,18 @@ import classnames from "classnames"; import { Component } from "react"; -import { - Block, - View, - Text, - Image, - Input, - Button, - PageMeta, -} from "@tarojs/components"; +import { Block, View, Button, PageMeta } from "@tarojs/components"; import { Popup } from "@antmjs/vantui"; -import "@antmjs/vantui/lib/popup/index.less"; -import "@antmjs/vantui/lib/transition/index.less"; -import "@antmjs/vantui/lib/overlay/index.less"; - -import "./popup-alert.less"; +import "./popup.less"; import { go } from "../../utils/traoAPI"; /*** props + * isLarge 是否大尺寸 * isShow 是否显示 + * isClose 右上角关闭图标 * title 弹窗标题 * content 弹窗内容 * confirmButtonText 确定按钮 @@ -49,6 +39,10 @@ export default class PopupAlert extends Component { async initData() {} + onClose = () => { + this.props.close(); + }; + onConfirm = () => { let { type } = this.props; @@ -65,21 +59,40 @@ export default class PopupAlert extends Component { }; render() { - let { title, content, confirmButtonText, textAlgin } = this.props; + let { + title, + content, + confirmButtonText, + textAlgin, + isShow, + isClose, + isLarge, + } = this.props; return ( - + - - {title} - + {isClose && ( + + )} + + {title} + { {content} - - diff --git a/src/components/popup/popup-confirm.less b/src/components/popup/popup-confirm.less index 2e026f4..0223670 100644 --- a/src/components/popup/popup-confirm.less +++ b/src/components/popup/popup-confirm.less @@ -19,6 +19,8 @@ .confirm-popup-content { font-size: 28rpx; margin-bottom: 20rpx; + max-height: 600rpx; + overflow-y: auto; } .confirm-popup-content.is-confirm { @@ -55,3 +57,11 @@ color: #fff; background-color: #000; } + +.pupup-close { + position: absolute; + right: 30rpx; + top: 30rpx; + color: #000; + font-size: 36rpx; +} diff --git a/src/components/popup/popup-confirm.tsx b/src/components/popup/popup-confirm.tsx index e2e5ae0..fff48d0 100644 --- a/src/components/popup/popup-confirm.tsx +++ b/src/components/popup/popup-confirm.tsx @@ -1,34 +1,23 @@ import classnames from "classnames"; import { Component } from "react"; -import { - Block, - View, - Text, - Image, - Input, - Button, - PageMeta, -} from "@tarojs/components"; +import { Block, View, Button, PageMeta } from "@tarojs/components"; import { Popup } from "@antmjs/vantui"; -// import "@antmjs/vantui/lib/index.less"; -import "@antmjs/vantui/lib/popup/index.less"; -import "@antmjs/vantui/lib/transition/index.less"; -import "@antmjs/vantui/lib/overlay/index.less"; - -import "./popup-confirm.less"; +import "./popup.less"; /*** props + * isLarge 是否大尺寸 * isShow 是否显示 + * isClose 右上角关闭图标 * title 弹窗标题 * content 弹窗内容 * cancelButtonText 取消按钮 * confirmButtonText 确定按钮 * textAlgin 文本对齐 left right center - * type: 1注册 - * @confirm 关闭回调 + * @close 关闭回调 + * @confirm 确定回调 * ***/ export default class PopupConfirm extends Component { constructor(props) { @@ -71,23 +60,43 @@ export default class PopupConfirm extends Component { }; render() { - let { title, content, cancelButtonText, confirmButtonText, textAlgin } = - this.props; + let { + title, + content, + cancelButtonText, + confirmButtonText, + textAlgin, + isShow, + isClose, + isLarge, + } = this.props; return ( - + - - {title} - + {isClose && ( + + )} + + + {title} + { {content} - - - diff --git a/src/components/popup/popup-drawer.less b/src/components/popup/popup-drawer.less new file mode 100644 index 0000000..ccc10a9 --- /dev/null +++ b/src/components/popup/popup-drawer.less @@ -0,0 +1,11 @@ +.common-popup-btn { + width: 690rpx; + height: 90rpx; + line-height: 90rpx; + font-size: 30rpx; + text-align: center; + border: 1rpx solid #000; + border-radius: 45rpx; + color: #fff; + background: #000000; +} diff --git a/src/components/popup/popup-drawer.tsx b/src/components/popup/popup-drawer.tsx new file mode 100644 index 0000000..e5d785c --- /dev/null +++ b/src/components/popup/popup-drawer.tsx @@ -0,0 +1,108 @@ +import classnames from "classnames"; +import { Component } from "react"; + +import { Block, View, Button, PageMeta } from "@tarojs/components"; + +import { Popup } from "@antmjs/vantui"; + +import "./popup.less"; +import "./popup-drawer.less"; +/*** props + * isLarge 是否大尺寸 + * isShow 是否显示 + * isClose 右上角关闭图标 + * postion 抽屉弹出位置 left right top bottom + * title 弹窗标题 + * content 弹窗内容 + * confirmButtonText 确定按钮 + * textAlgin 文本对齐 left right center + * @confirm 关闭回调 + * ***/ +export default class PopupDrawer extends Component { + constructor(props) { + super(props); + this.state = { + name: "抽屉组件", + }; + } + + async onLoad() {} + componentDidMount() {} + + componentWillUnmount() {} + + componentDidShow() {} + + componentDidHide() {} + + async initData() {} + + onClose = () => { + this.props.close(); + }; + + onConfirm = () => { + this.props.confirm(); + }; + + onClickStop = (e) => { + e.stopPropagation(); + }; + + render() { + let { + title, + content, + confirmButtonText, + textAlgin, + isShow, + isClose, + isLarge, + postion, + } = this.props; + + return ( + + + + {isClose && ( + + )} + + {title} + + + {content} + + + + + + + + + ); + } +} diff --git a/src/components/popup/popup-privacy.less b/src/components/popup/popup-privacy.less index 4342634..e577648 100644 --- a/src/components/popup/popup-privacy.less +++ b/src/components/popup/popup-privacy.less @@ -55,3 +55,11 @@ color: #fff; background-color: #000; } + +.pupup-close { + position: absolute; + right: 30rpx; + top: 30rpx; + color: #000; + font-size: 36rpx; +} diff --git a/src/components/popup/popup-privacy.tsx b/src/components/popup/popup-privacy.tsx index c4e62d4..6a67203 100644 --- a/src/components/popup/popup-privacy.tsx +++ b/src/components/popup/popup-privacy.tsx @@ -1,24 +1,21 @@ +import classnames from "classnames"; import { Component } from "react"; import Taro from "@tarojs/taro"; -import { - Block, - View, - Text, - Image, - Input, - Button, - PageMeta, -} from "@tarojs/components"; +import { Block, View, Button, PageMeta } from "@tarojs/components"; import { Popup } from "@antmjs/vantui"; -// import "@antmjs/vantui/lib/index.less"; -import "@antmjs/vantui/lib/popup/index.less"; -import "@antmjs/vantui/lib/transition/index.less"; -import "@antmjs/vantui/lib/overlay/index.less"; +import "./popup.less"; -import "./popup-privacy.less"; +import { go } from "../../utils/traoAPI"; + +/*** props + * isLarge 是否大尺寸 + * isShow 是否显示 + * isClose 是否显示关闭按钮 + * @closePrivacy 关闭回调 + * ***/ export default class PopupPrivacy extends Component { constructor(props) { @@ -34,15 +31,7 @@ export default class PopupPrivacy extends Component { componentWillUnmount() {} - componentDidShow() { - // 是否已授权隐私 - // if (Taro.getStorageSync("isPrivacyPopup") !== "true") { - // // this.setState({ - // // showPrivacyPopup: true, - // // }); - // this.props.closePrivacy(); - // } - } + componentDidShow() {} componentDidHide() {} @@ -53,6 +42,7 @@ export default class PopupPrivacy extends Component { }; onPrivacyTap = () => { // 跳转用户隐私协议 + go("/pages/privacyPolicy/privacyPolicy"); }; onDisagreeTap = () => { // 关闭小程序 @@ -79,43 +69,53 @@ export default class PopupPrivacy extends Component { }; render() { + let { isShow, isClose, isLarge } = this.props; return ( - + - - 用户隐私保护提示 - - + {isClose && ( + + )} + + + 用户隐私保护提示 + + 感谢您使用花至FLOSSOM小程序,您使用小程序前应当阅读并同意 《用户隐私协议》 - + 当您点击同意并开始使用小程序服务时,即表示您已理解并同意该条款内容,该条款内容将您产生法律约束力。如您拒绝,将无法使用小程序服务 - + - */} + @@ -376,6 +427,7 @@ class UserInfoDetail extends Component { { } const mapStateToProps = (state) => ({ - mobile: state.userInfo.mobile, - nickname: state.userInfo.nickname, - headimg: state.userInfo.headimg, - birthday: state.userInfo.birthday, + userInfo: state.userInfo, + // mobile: state.userInfo.mobile, + // nickname: state.userInfo.nickname, + // headimg: state.userInfo.headimg, + // birthday: state.userInfo.birthday, }); const mapDispatchToProps = (dispatch) => ({ userRefresh(data) { diff --git a/src/store/features/userInfo.js b/src/store/features/userInfo.js index 2ef996f..0849f36 100644 --- a/src/store/features/userInfo.js +++ b/src/store/features/userInfo.js @@ -6,10 +6,20 @@ import { RefreshWxUserInfo } from "../../utils/Interface"; const userInfoReducer = createSlice({ name: "userInfo", // store的名字 initialState: { + id: "", // 用户ID mobile: "", nickname: "", headimg: "", - birthday: "", + birthday: "", // 生日 + province: "", // 省 + provinceId: "", + city: "", // 市 + cityId: "", + area: "", // 区 + areaId: "", + token: "", // token + integralText: 0, // 积分 + expireCredit: 0, // 过期积分 }, reducers: { setMobile(state, { payload }) { @@ -23,11 +33,20 @@ const userInfoReducer = createSlice({ }, userRefresh(state, { payload }) { - console.log("userRefresh payload", payload); + state.id = payload.id || "001"; state.mobile = payload.mobile || ""; state.nickname = payload.nickname || ""; state.headimg = payload.headimg || ""; - state.birthday = payload.birthday || ""; + state.birthday = payload.birthday || new Date().getTime(); + state.province = payload.province || ""; + state.provinceId = payload.provinceId || ""; + state.city = payload.city || ""; + state.cityId = payload.cityId || ""; + state.area = payload.area || ""; + state.areaId = payload.areaId || ""; + state.token = payload.token || ""; + state.integralText = payload.integralText || 0; + state.expireCredit = payload.integralText || 0; }, }, }); diff --git a/src/utils/Interface.js b/src/utils/Interface.js index 235dfe2..14a76bd 100644 --- a/src/utils/Interface.js +++ b/src/utils/Interface.js @@ -74,6 +74,109 @@ export const UserInfoRegister = (data) => { }); }; +export const GetUserMobile = (data = { code: "" }) => { + if (!data.code) { + data.code = Taro.getStorageSync("token") || ""; + } + //获取用户手机号码 + return Ajax({ + url: "/hzwx/user/upgradeMember" + paramsToUrlQueryString(data), + data, + method: "post", + }); +}; + +export const getIntegralRule = (data) => { + //积分规则 + return Ajax({ + url: "/hzwx/setting/getIntegralRule", + data, + }); +}; + +export const getAboutUs = (data) => { + //关于我们 + return Ajax({ + url: "/hzwx/setting/getAboutUs", + data, + }); +}; + +export const getPrivacyAgreement = (data) => { + //用户隐私协议获取 + return Ajax({ + url: "/hzwx/setting/getPrivacyAgreement", + data, + method: "get", + }); +}; + +export const getContactWorker = (data) => { + // 联系客服 + return Ajax({ + url: "/hzwx/setting/getContactWorker", + data, + method: "get", + }); +}; + +export const SaveMessage = (data) => { + // 联系客服 + return Ajax({ + url: "/hzwx/api/leaveMessage/saveMessage", + data, + method: "post", + }); +}; + +export const GetNoReadMessageNum = (data) => { + // 查询是否有消息未读 + return Ajax({ + url: "/hzwx/userScriptLog/getNoReadMessageNum", + data, + method: "get", + }); +}; + +export const GetHasBeenRead = (data) => { + // 将消息设置为已读 + return Ajax({ + url: "/hzwx/userScriptLog/hasBeenRead", + data, + method: "get", + }); +}; + +export const GetMessageList = (data) => { + // 分页获取消息 + return Ajax({ + url: "/hzwx/userScriptLog/list" + paramsToUrlQueryString(data), + data, + method: "get", + }); +}; + +export const GetObtainUserIntegral = (data) => { + // 分页获取用户积分列表 + return Ajax({ + url: "/hzwx/integralLog/obtainUserIntegral" + paramsToUrlQueryString(data), + data, + method: "get", + }); +}; + +export const GetIntegralRule = (data) => { + // 获取积分规则 + return Ajax({ + url: "/hzwx/setting/getIntegralRule", + data, + method: "get", + }); +}; +// + +/////////// + export const UserInfoUp = (data) => { //注册保存用户信息 return Ajax({ @@ -204,18 +307,6 @@ export const ActiveInfonoroot = (data) => { }); }; -export const GetUserMobile = (data = { code: "" }) => { - if (!data.code) { - data.code = Taro.getStorageSync("token") || ""; - } - //获取用户手机号码 - return Ajax({ - url: "/hzwx/user/upgradeMember" + paramsToUrlQueryString(data), - data, - method: "post", - }); -}; - export const InstrumentBindingAdd = (data) => { //设备绑定 return Ajax({ @@ -391,15 +482,6 @@ export const OnWindowClick = (data) => { }); }; -export const getPrivacyAgreement = (data) => { - //用户隐私协议获取 - return Ajax({ - url: "/hzwx/setting/getPrivacyAgreement", - data, - method: "get", - }); -}; - export const CreationAgreement = (data) => { //共创规则 return Ajax({ @@ -512,22 +594,6 @@ export const UserLogList = (data) => { }); }; -export const getIntegralRule = (data) => { - //积分规则 - return Ajax({ - url: "/hzwx/setting/getIntegralRule", - data, - }); -}; - -export const getAboutUs = (data) => { - //关于我们 - return Ajax({ - url: "/hzwx/setting/getAboutUs", - data, - }); -}; - export const AgreementRules = (data) => { //关于我们 return Ajax({ diff --git a/src/utils/request.js b/src/utils/request.js index 04f1ffc..0d1f2da 100644 --- a/src/utils/request.js +++ b/src/utils/request.js @@ -38,11 +38,14 @@ export const Ajax = (params) => { success(res) { if (res.statusCode !== 200) { if (res.statusCode == 403) { - showModal({ - t2: "登录已过期,请重新登录", - btn1show: false, + Taro.showModal({ + title: "提示", + content: "登录已过期,请重新登录", + showCancel: false, }).then((res) => { setGlobalData("token", null); + + Taro.clearStorage(); // 清空所有缓存 Taro.reLaunch({ // url: "/pages/login/login", url: "/pages/initiate/initiate", @@ -50,9 +53,10 @@ export const Ajax = (params) => { }); return; } - showModal({ - t2: String("错误码:" + res.statusCode), - btn1show: false, + Taro.showModal({ + title: "提示", + content: String("错误码:" + res.statusCode), + showCancel: false, }); return false; } @@ -69,9 +73,10 @@ export const Ajax = (params) => { } const noTipsCodes = [5001, 5002, 5003]; if (noTipsCodes.indexOf(res.data.code) == -1) { - showModal({ - t2: msg, - btn1show: false, + Taro.showModal({ + title: "提示", + content: msg, + showCancel: false, }).then(() => { reject(res); if (res.data.code == 403 || res.data.msg === "登录状态已过期") { @@ -110,7 +115,7 @@ export const Ajax = (params) => { }; export const AjaxuploadFile = (params) => { - const app = getApp(); + const app = Taro.getApp(); const domain = getGlobalData("domain"); // Taro.showLoading({ // title: "请求中...", @@ -190,20 +195,22 @@ export const AjaxFormData = (params) => { success(res) { if (res.statusCode !== 200) { if (res.statusCode == 403) { - showModal({ - t2: "登录已过期,请重新登录", - btn1show: false, + Taro.showModal({ + title: "提示", + content: "登录已过期,请重新登录", + showCancel: false, }).then((res) => { setGlobalData("token", null); + Taro.clearStorage(); // 清空所有缓存 Taro.reLaunch({ url: "/pages/initiate/initiate", }); }); return; } - showModal({ + Taro.showModal({ t2: String("错误码:" + res.statusCode), - btn1show: false, + showCancel: false, }); return false; } @@ -216,9 +223,10 @@ export const AjaxFormData = (params) => { } const noTipsCodes = [5001, 5002, 5003]; if (noTipsCodes.indexOf(res.data.code) == -1) { - showModal({ - t2: msg, - btn1show: false, + Taro.showModal({ + title: "提示", + content: msg, + showCancel: false, }).then(() => { reject(res); if (res.data.code == 403 || res.data.msg === "登录状态已过期") { diff --git a/src/utils/traoAPI.js b/src/utils/traoAPI.js index f214946..27465d8 100644 --- a/src/utils/traoAPI.js +++ b/src/utils/traoAPI.js @@ -50,11 +50,11 @@ export const back = (delta) => { }); }; -export const msg = (title, mask) => { +export const msg = (title, mask, icon) => { Taro.showToast({ title, mask, - icon: "none", + icon: icon || "none", }); }; diff --git a/yarn.lock b/yarn.lock index 6cef234..30676b7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4595,6 +4595,11 @@ "resolved" "https://registry.npmmirror.com/buffer-from/-/buffer-from-1.1.2.tgz" "version" "1.1.2" +"buffer-json@^2.0.0": + "integrity" "sha512-+jjPFVqyfF1esi9fvfUs3NqM0pH1ziZ36VP4hmA/y/Ssfo/5w5xHKfTw9BwQjoJ1w/oVtpLomqwUHKdefGyuHw==" + "resolved" "https://registry.npmmirror.com/buffer-json/-/buffer-json-2.0.0.tgz" + "version" "2.0.0" + "buffer@^5.2.1", "buffer@^5.5.0": "integrity" "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==" "resolved" "https://registry.npmmirror.com/buffer/-/buffer-5.7.1.tgz" @@ -4664,6 +4669,18 @@ "union-value" "^1.0.0" "unset-value" "^1.0.0" +"cache-loader@^4.1.0": + "integrity" "sha512-ftOayxve0PwKzBF/GLsZNC9fJBXl8lkZE3TOsjkboHfVHVkL39iUEs1FO07A33mizmci5Dudt38UZrrYXDtbhw==" + "resolved" "https://registry.npmmirror.com/cache-loader/-/cache-loader-4.1.0.tgz" + "version" "4.1.0" + dependencies: + "buffer-json" "^2.0.0" + "find-cache-dir" "^3.0.0" + "loader-utils" "^1.2.3" + "mkdirp" "^0.5.1" + "neo-async" "^2.6.1" + "schema-utils" "^2.0.0" + "cacheable-request@^2.1.1": "integrity" "sha512-vag0O2LKZ/najSoUwDbVlnlCFvhBE/7mGTY2B5FgCBDcRD+oVV1HYTOwM6JZfMg/hIcM6IwnTZ1uQQL5/X3xIQ==" "resolved" "https://registry.npmmirror.com/cacheable-request/-/cacheable-request-2.1.4.tgz" @@ -7581,6 +7598,15 @@ "make-dir" "^2.0.0" "pkg-dir" "^3.0.0" +"find-cache-dir@^3.0.0": + "integrity" "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==" + "resolved" "https://registry.npmmirror.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz" + "version" "3.3.2" + dependencies: + "commondir" "^1.0.1" + "make-dir" "^3.0.2" + "pkg-dir" "^4.1.0" + "find-up@^2.0.0": "integrity" "sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==" "resolved" "https://registry.npmmirror.com/find-up/-/find-up-2.1.0.tgz" @@ -9805,7 +9831,7 @@ "resolved" "https://registry.npmmirror.com/json-buffer/-/json-buffer-3.0.1.tgz" "version" "3.0.1" -"json-parse-better-errors@^1.0.1": +"json-parse-better-errors@^1.0.1", "json-parse-better-errors@^1.0.2": "integrity" "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" "resolved" "https://registry.npmmirror.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz" "version" "1.0.2" @@ -10116,7 +10142,7 @@ "pify" "^4.0.1" "strip-bom" "^3.0.0" -"loader-runner@^4.2.0": +"loader-runner@^4.1.0", "loader-runner@^4.2.0": "integrity" "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==" "resolved" "https://registry.npmmirror.com/loader-runner/-/loader-runner-4.3.0.tgz" "version" "4.3.0" @@ -10399,6 +10425,13 @@ dependencies: "semver" "^6.0.0" +"make-dir@^3.0.2": + "integrity" "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==" + "resolved" "https://registry.npmmirror.com/make-dir/-/make-dir-3.1.0.tgz" + "version" "3.1.0" + dependencies: + "semver" "^6.0.0" + "make-dir@~3.1.0": "integrity" "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==" "resolved" "https://registry.npmmirror.com/make-dir/-/make-dir-3.1.0.tgz" @@ -11333,7 +11366,7 @@ "resolved" "https://registry.npmmirror.com/negotiator/-/negotiator-0.6.3.tgz" "version" "0.6.3" -"neo-async@^2.5.0", "neo-async@^2.6.2": +"neo-async@^2.5.0", "neo-async@^2.6.1", "neo-async@^2.6.2": "integrity" "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" "resolved" "https://registry.npmmirror.com/neo-async/-/neo-async-2.6.2.tgz" "version" "2.6.2" @@ -12202,6 +12235,13 @@ dependencies: "find-up" "^3.0.0" +"pkg-dir@^4.1.0": + "integrity" "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==" + "resolved" "https://registry.npmmirror.com/pkg-dir/-/pkg-dir-4.2.0.tgz" + "version" "4.2.0" + dependencies: + "find-up" "^4.0.0" + "pkg-dir@^4.2.0": "integrity" "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==" "resolved" "https://registry.npmmirror.com/pkg-dir/-/pkg-dir-4.2.0.tgz" @@ -13983,6 +14023,15 @@ dependencies: "loose-envify" "^1.1.0" +"schema-utils@^2.0.0": + "integrity" "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==" + "resolved" "https://registry.npmmirror.com/schema-utils/-/schema-utils-2.7.1.tgz" + "version" "2.7.1" + dependencies: + "@types/json-schema" "^7.0.5" + "ajv" "^6.12.4" + "ajv-keywords" "^3.5.2" + "schema-utils@^2.6.5": "integrity" "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==" "resolved" "https://registry.npmmirror.com/schema-utils/-/schema-utils-2.7.1.tgz" @@ -14011,6 +14060,16 @@ "ajv-formats" "^2.1.1" "ajv-keywords" "^5.1.0" +"schema-utils@^4.0.1": + "integrity" "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==" + "resolved" "https://registry.npmmirror.com/schema-utils/-/schema-utils-4.2.0.tgz" + "version" "4.2.0" + dependencies: + "@types/json-schema" "^7.0.9" + "ajv" "^8.9.0" + "ajv-formats" "^2.1.1" + "ajv-keywords" "^5.1.0" + "scss-bundle@^3.0.2": "integrity" "sha512-lvxTwCKDLgzmRWhGwJ834ggtnEhs0G9FxSJRWte+NwlshVvBcQ/kOHHkpAGDpCxIMNGz/Utl0yd/MWyQAOBhqg==" "resolved" "https://registry.npmmirror.com/scss-bundle/-/scss-bundle-3.1.2.tgz" @@ -15180,6 +15239,11 @@ "mkdirp" "^1.0.3" "yallist" "^4.0.0" +"taro-plugin-compiler-optimization@^1.0.4": + "integrity" "sha512-7aAOSWLpkPlJkCM6NPjcZEqoLXdquNy16CEEKIzAAD03OJ742rHhVzbZ0NIdMABMV7xC+gzRFq9eoZ64gm9o2g==" + "resolved" "https://registry.npmmirror.com/taro-plugin-compiler-optimization/-/taro-plugin-compiler-optimization-1.0.4.tgz" + "version" "1.0.4" + "taro-ui@^3.2.0": "integrity" "sha512-C3A2DaWQ7yCgQQEEEVbGQLByc4Op86py/AgIk0HLDUvp5rzLkpPSyMZWY7TvYroyyyy+ARt6BmDcLinT80xUUw==" "resolved" "https://registry.npmmirror.com/taro-ui/-/taro-ui-3.2.0.tgz" @@ -15244,7 +15308,7 @@ "ansi-escapes" "^4.2.1" "supports-hyperlinks" "^2.0.0" -"terser-webpack-plugin@^5.1.3", "terser-webpack-plugin@^5.3.7": +"terser-webpack-plugin@^5.1.3", "terser-webpack-plugin@^5.3.7", "terser-webpack-plugin@^5.3.9": "integrity" "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==" "resolved" "https://registry.npmmirror.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz" "version" "5.3.9" @@ -15289,6 +15353,16 @@ dependencies: "any-promise" "^1.0.0" +"thread-loader@^4.0.2": + "integrity" "sha512-UOk/KBydsQjh4Ja5kocxDUzhv11KYptHN/h8gdSwo6/MBkYrWqQua6K2qwlpXnCXS9c/uLs8F/JF8rpveF0+fA==" + "resolved" "https://registry.npmmirror.com/thread-loader/-/thread-loader-4.0.2.tgz" + "version" "4.0.2" + dependencies: + "json-parse-better-errors" "^1.0.2" + "loader-runner" "^4.1.0" + "neo-async" "^2.6.2" + "schema-utils" "^4.0.1" + "throat@^5.0.0": "integrity" "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==" "resolved" "https://registry.npmmirror.com/throat/-/throat-5.0.0.tgz" @@ -16290,7 +16364,7 @@ "resolved" "https://registry.npmmirror.com/webpack-virtual-modules/-/webpack-virtual-modules-0.5.0.tgz" "version" "0.5.0" -"webpack@^3.0.0 || ^4.1.0 || ^5.0.0-0", "webpack@^4.0.0 || ^5.0.0", "webpack@^4.37.0 || ^5.0.0", "webpack@^4.40.0 || ^5.0.0", "webpack@^5.0.0", "webpack@^5.1.0", "webpack@^5.20.0", "webpack@^5.78.0", "webpack@>=2", "webpack@>=4.43.0 <6.0.0", "webpack@3 || 4 || 5": +"webpack@^3.0.0 || ^4.1.0 || ^5.0.0-0", "webpack@^4.0.0", "webpack@^4.0.0 || ^5.0.0", "webpack@^4.37.0 || ^5.0.0", "webpack@^4.40.0 || ^5.0.0", "webpack@^5.0.0", "webpack@^5.1.0", "webpack@^5.20.0", "webpack@^5.78.0", "webpack@>=2", "webpack@>=4.43.0 <6.0.0", "webpack@3 || 4 || 5": "integrity" "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==" "resolved" "https://registry.npmmirror.com/webpack/-/webpack-5.89.0.tgz" "version" "5.89.0"