diff --git a/.env.example b/.env.example
deleted file mode 100644
index f53bd29e3..000000000
--- a/.env.example
+++ /dev/null
@@ -1,16 +0,0 @@
-APP_BASE_URL=https://demo-ecshopx.ishopex.cn/api/h5app/wxapp
-APP_WEBSOCKET=wss://demo-ecshopx.ishopex.cn/ws
-APP_COMPANY_ID=38
-APP_PLATFORM=standard
-APP_CUSTOM_SERVER=https://ecshopx-h5.ex-sandbox.com/
-APP_HOME_PAGE=/pages/index
-APP_TRACK=youshu
-APP_YOUSHU_TOKEN=bi281e87ab2424481a
-APP_ID=wx1e25e45145b70faa
-APP_MAP_KEY=PSPBZ-KQ5CW-CSGRF-ON2S4-K2HQJ-XEBQG
-APP_MAP_NAME=oneX新零售门店定位
-APP_IMAGE_CDN=https://b-img-cdn.yuanyuanke.cn/ecshopx-vshop
-APP_DIANWU_URL=https://demo-ecshopx-dianwu.shopex123.com
-APP_MERCHANT_URL=
-APP_ADAPAY=
-
diff --git a/.gitignore b/.gitignore
index 8e9f2798b..97484e8f5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,5 +11,4 @@ dist/
.history
.swc
.vscode
-.env
.env.local
diff --git a/companys.conf b/companys.conf
index 4f4e4d4d6..ed3ab0873 100644
--- a/companys.conf
+++ b/companys.conf
@@ -1,15 +1,3 @@
-[Ecshopx测试环境--生产标准测试版]
-appid = wx5e27f0cc25fa9898
-base_url = https://b.yuanyuanke.cn/api/h5app/wxapp
-app_name = 通用小程序
-websocket = wss://b-websocket.yuanyuanke.cn/ws
-company_id = 1
-platform = standard
-custom_server = https://b.yuanyuanke.cn
-home_page = /pages/index
-map_key = PVUBZ-E24HK-7SXJY-AGQZC-DN3IT-6EB6V
-map_name = oneX新零售门店定位
-image_cdn = https://b-img-cdn.yuanyuanke.cn/ecshopx-vshop
[Ecshopx测试环境--标准版]
appid = wx912913df9fef6ddd
@@ -1059,4 +1047,32 @@ home_page = /pages/index
map_key = NWBBZ-NKJ6J-LMOFT-D3LBD-IEYKE-JRFOY
map_name = oneX新零售门店定位
image_cdn = https://b-img-cdn.yuanyuanke.cn/ecshopx-vshop
-dianwu_url=
+dianwu_url=
+
+[辉绮-生产]
+appid = wx27fc041381fe1e0d
+base_url = https://dtc.amandax.com.cn/api/h5app/wxapp
+app_name = 通用小程序
+websocket = wss://dtc.amandax.com.cn/ws
+company_id = 1
+platform = standard
+custom_server = https://dtc.amandax.com.cn
+home_page = /pages/index
+map_key = NWBBZ-NKJ6J-LMOFT-D3LBD-IEYKE-JRFOY
+map_name = oneX新零售门店定位
+image_cdn = https://b-img-cdn.yuanyuanke.cn/ecshopx-vshop
+dianwu_url=
+
+
+[辉绮-sit]
+appid = wx27fc041381fe1e0d
+base_url = https://test-dtc-sit.amandax.com.cn/api/h5app/wxapp
+app_name = 通用小程序
+websocket = wss://test-dtc.amandax.com.cn/ws
+company_id = 1
+platform = standard
+custom_server = https://test-dtc-sit.amandax.com.cn
+home_page = /pages/index
+map_key = NWBBZ-NKJ6J-LMOFT-D3LBD-IEYKE-JRFOY
+map_name = oneX新零售门店定位
+image_cdn = https://b-img-cdn.yuanyuanke.cn/ecshopx-vshop
diff --git a/config/index.js b/config/index.js
index 4b7be1e76..5a0aa9541 100644
--- a/config/index.js
+++ b/config/index.js
@@ -2,7 +2,7 @@ import path from 'path'
import pkg from '../package.json'
const webpackPluginsAutoI18n = require('webpack-auto-i18n-plugin')
-const { YoudaoTranslator } = require('webpack-auto-i18n-plugin')
+const { YoudaoTranslator, EmptyTranslator } = require('webpack-auto-i18n-plugin')
const chalk = require('chalk')
const { getEnvs, getDefineConstants, getCacheIdentifier } = require('./utils')
@@ -82,8 +82,8 @@ const config = {
defineConstants: getDefineConstants(CONST_ENVS),
alias: {
'taro-ui$': 'taro-ui/lib/index',
- '@': path.join(__dirname, '../src'),
- '@lang': path.join(__dirname, '../lang')
+ '@': path.join(__dirname, '../src')
+ // '@lang': path.join(__dirname, '../lang')
// 'lodash': 'lodash-es'
},
copy: {
@@ -98,7 +98,6 @@ const config = {
}
},
plugins: [
- // i18nPlugin
// '@shopex/taro-plugin-modules',
// path.join(__dirname, "../src/plugin/test.js")
// path.join(__dirname, "./modify-taro.js")
@@ -106,9 +105,25 @@ const config = {
mini: {
webpackChain(chain) {
- if (process.env.APP_I18N_APP_ID && process.env.APP_I18N_APP_KEY) {
- chain.plugin('auto-i18n').use(webpackPluginsAutoI18n.default, [AutoI18nOptions])
- }
+ chain.plugin('auto-i18n').use(webpackPluginsAutoI18n.default, [
+ {
+ rewriteConfig: false, // 是否重写配置js , 小程序需要魔改配置文件,所以不要重新生成,以现在的为准
+ excludedPath: [
+ path.resolve(__dirname, './../src/lang/index.js'),
+ path.resolve(__dirname, './../src/lang/consts.js')
+ ],
+ globalPath: path.resolve(__dirname, './../src/subpages/i18n/lang'),
+ targetLangList: ['en', 'zh-tw'], // 目标语言
+ originLang: 'zh-cn', // 源语言
+ translator: process.env.APP_I18N_APP_KEY
+ ? new YoudaoTranslator({
+ appId: process.env.APP_I18N_APP_ID,
+ appKey: process.env.APP_I18N_APP_KEY
+ })
+ : new EmptyTranslator(),
+ includePath: [/src/] // 仅扫描 src 目录
+ }
+ ])
},
miniCssExtractPluginOption: {
diff --git a/package-lock.json b/package-lock.json
index 02c9d61b2..5325d16d6 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -91,13 +91,6 @@
"node": "16.16.0"
}
},
- "node_modules/@adobe/css-tools": {
- "version": "4.3.3",
- "resolved": "https://registry.npmmirror.com/@adobe/css-tools/-/css-tools-4.3.3.tgz",
- "integrity": "sha512-rE0Pygv0sEZ4vBWHlAgJLGDU7Pm8xoO6p3wsEceb7GYAjScrOHpEo8KK/eVkAcnSM+slAEtXjA2JpdjLp4fJQQ==",
- "dev": true,
- "peer": true
- },
"node_modules/@ampproject/remapping": {
"version": "2.3.0",
"resolved": "https://registry.npmmirror.com/@ampproject/remapping/-/remapping-2.3.0.tgz",
@@ -440,12 +433,12 @@
}
},
"node_modules/@babel/helpers": {
- "version": "7.27.6",
- "resolved": "https://registry.npmmirror.com/@babel/helpers/-/helpers-7.27.6.tgz",
- "integrity": "sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==",
+ "version": "7.28.2",
+ "resolved": "https://registry.npmmirror.com/@babel/helpers/-/helpers-7.28.2.tgz",
+ "integrity": "sha512-/V9771t+EgXz62aCcyofnQhGM8DQACbRhvzKFsXKC9QM+5MadF8ZmIm0crDMaz3+o0h0zXfJnd4EhbYbxsrcFw==",
"dependencies": {
"@babel/template": "^7.27.2",
- "@babel/types": "^7.27.6"
+ "@babel/types": "^7.28.2"
},
"engines": {
"node": ">=6.9.0"
@@ -2046,17 +2039,17 @@
}
},
"node_modules/@babel/runtime": {
- "version": "7.27.6",
- "resolved": "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.27.6.tgz",
- "integrity": "sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q==",
+ "version": "7.28.2",
+ "resolved": "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.28.2.tgz",
+ "integrity": "sha512-KHp2IflsnGywDjBWDkR9iEqiWSpc8GIi0lgTT3mOElT0PP1tG26P4tmFI2YvAdzgq9RGyoHZQEIEdZy6Ec5xCA==",
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/runtime-corejs3": {
- "version": "7.28.0",
- "resolved": "https://registry.npmmirror.com/@babel/runtime-corejs3/-/runtime-corejs3-7.28.0.tgz",
- "integrity": "sha512-nlIXnSqLcBij8K8TtkxbBJgfzfvi75V1pAKSM7dUXejGw12vJAqez74jZrHTsJ3Z+Aczc5Q/6JgNjKRMsVU44g==",
+ "version": "7.28.2",
+ "resolved": "https://registry.npmmirror.com/@babel/runtime-corejs3/-/runtime-corejs3-7.28.2.tgz",
+ "integrity": "sha512-FVFaVs2/dZgD3Y9ZD+AKNKjyGKzwu0C54laAXWUXgLcVXcCX6YZ6GhK2cp7FogSN2OA0Fu+QT8dP3FUdo9ShSQ==",
"dev": true,
"dependencies": {
"core-js-pure": "^3.43.0"
@@ -2096,9 +2089,9 @@
}
},
"node_modules/@babel/types": {
- "version": "7.28.1",
- "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.28.1.tgz",
- "integrity": "sha512-x0LvFTekgSX+83TI28Y9wYPUfzrnl2aT5+5QLnO6v7mSJYtEEevuDRN0F0uSHRk1G1IWZC43o00Y0xDDrpBGPQ==",
+ "version": "7.28.2",
+ "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.28.2.tgz",
+ "integrity": "sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==",
"dependencies": {
"@babel/helper-string-parser": "^7.27.1",
"@babel/helper-validator-identifier": "^7.27.1"
@@ -4653,15 +4646,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/@tarojs/mini-runner/node_modules/debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmmirror.com/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "dependencies": {
- "ms": "2.0.0"
- }
- },
"node_modules/@tarojs/mini-runner/node_modules/define-property": {
"version": "2.0.2",
"resolved": "https://registry.npmmirror.com/define-property/-/define-property-2.0.2.tgz",
@@ -4856,12 +4840,6 @@
"webpack": "^4.4.0"
}
},
- "node_modules/@tarojs/mini-runner/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true
- },
"node_modules/@tarojs/mini-runner/node_modules/normalize-url": {
"version": "1.9.1",
"resolved": "https://registry.npmmirror.com/normalize-url/-/normalize-url-1.9.1.tgz",
@@ -4943,37 +4921,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/@tarojs/mini-runner/node_modules/stylus": {
- "version": "0.55.0",
- "resolved": "https://registry.npmmirror.com/stylus/-/stylus-0.55.0.tgz",
- "integrity": "sha512-MuzIIVRSbc8XxHH7FjkvWqkIcr1BvoMZoR/oFuAJDlh7VSaNJzrB4uJ38GRQa+mWjLXODAMzeDe0xi9GYbGwnw==",
- "dev": true,
- "dependencies": {
- "css": "^3.0.0",
- "debug": "~3.1.0",
- "glob": "^7.1.6",
- "mkdirp": "~1.0.4",
- "safer-buffer": "^2.1.2",
- "sax": "~1.2.4",
- "semver": "^6.3.0",
- "source-map": "^0.7.3"
- },
- "bin": {
- "stylus": "bin/stylus"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/@tarojs/mini-runner/node_modules/stylus/node_modules/source-map": {
- "version": "0.7.6",
- "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.7.6.tgz",
- "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==",
- "dev": true,
- "engines": {
- "node": ">= 12"
- }
- },
"node_modules/@tarojs/mini-runner/node_modules/terser": {
"version": "4.8.1",
"resolved": "https://registry.npmmirror.com/terser/-/terser-4.8.1.tgz",
@@ -6104,15 +6051,6 @@
}
}
},
- "node_modules/@tarojs/webpack5-runner/node_modules/debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmmirror.com/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "dependencies": {
- "ms": "2.0.0"
- }
- },
"node_modules/@tarojs/webpack5-runner/node_modules/deepmerge": {
"version": "1.5.2",
"resolved": "https://registry.npmmirror.com/deepmerge/-/deepmerge-1.5.2.tgz",
@@ -6276,12 +6214,6 @@
"json5": "lib/cli.js"
}
},
- "node_modules/@tarojs/webpack5-runner/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true
- },
"node_modules/@tarojs/webpack5-runner/node_modules/postcss-loader": {
"version": "7.3.4",
"resolved": "https://registry.npmmirror.com/postcss-loader/-/postcss-loader-7.3.4.tgz",
@@ -6410,28 +6342,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/@tarojs/webpack5-runner/node_modules/stylus": {
- "version": "0.55.0",
- "resolved": "https://registry.npmmirror.com/stylus/-/stylus-0.55.0.tgz",
- "integrity": "sha512-MuzIIVRSbc8XxHH7FjkvWqkIcr1BvoMZoR/oFuAJDlh7VSaNJzrB4uJ38GRQa+mWjLXODAMzeDe0xi9GYbGwnw==",
- "dev": true,
- "dependencies": {
- "css": "^3.0.0",
- "debug": "~3.1.0",
- "glob": "^7.1.6",
- "mkdirp": "~1.0.4",
- "safer-buffer": "^2.1.2",
- "sax": "~1.2.4",
- "semver": "^6.3.0",
- "source-map": "^0.7.3"
- },
- "bin": {
- "stylus": "bin/stylus"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/@tarojs/webpack5-runner/node_modules/stylus-loader": {
"version": "6.2.0",
"resolved": "https://registry.npmmirror.com/stylus-loader/-/stylus-loader-6.2.0.tgz",
@@ -6454,24 +6364,6 @@
"webpack": "^5.0.0"
}
},
- "node_modules/@tarojs/webpack5-runner/node_modules/stylus/node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true,
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/@tarojs/webpack5-runner/node_modules/stylus/node_modules/source-map": {
- "version": "0.7.6",
- "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.7.6.tgz",
- "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==",
- "dev": true,
- "engines": {
- "node": ">= 12"
- }
- },
"node_modules/@tarojs/webpack5-runner/node_modules/terser-webpack-plugin": {
"version": "5.3.14",
"resolved": "https://registry.npmmirror.com/terser-webpack-plugin/-/terser-webpack-plugin-5.3.14.tgz",
@@ -6660,12 +6552,12 @@
}
},
"node_modules/@types/babel__traverse": {
- "version": "7.20.7",
- "resolved": "https://registry.npmmirror.com/@types/babel__traverse/-/babel__traverse-7.20.7.tgz",
- "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==",
+ "version": "7.28.0",
+ "resolved": "https://registry.npmmirror.com/@types/babel__traverse/-/babel__traverse-7.28.0.tgz",
+ "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==",
"devOptional": true,
"dependencies": {
- "@babel/types": "^7.20.7"
+ "@babel/types": "^7.28.2"
}
},
"node_modules/@types/body-parser": {
@@ -6820,10 +6712,9 @@
"dev": true
},
"node_modules/@types/http-errors": {
- "version": "2.0.5",
- "resolved": "https://registry.npmmirror.com/@types/http-errors/-/http-errors-2.0.5.tgz",
- "integrity": "sha512-r8Tayk8HJnX0FztbZN7oVqGccWgw98T/0neJphO91KkmOzug1KkofZURD4UaD5uH8AqcFLfdPErnBod0u71/qg==",
- "dev": true
+ "version": "1.8.2",
+ "resolved": "https://registry.npmmirror.com/@types/http-errors/-/http-errors-1.8.2.tgz",
+ "integrity": "sha512-EqX+YQxINb+MeXaIqYDASb6U6FCHbWjkj4a1CKDBks3d/QiB2+PqBLyO72vLDgAO1wUI4O+9gweRcQK11bTL/w=="
},
"node_modules/@types/http-proxy": {
"version": "1.17.16",
@@ -6954,9 +6845,9 @@
"dev": true
},
"node_modules/@types/node": {
- "version": "18.19.120",
- "resolved": "https://registry.npmmirror.com/@types/node/-/node-18.19.120.tgz",
- "integrity": "sha512-WtCGHFXnVI8WHLxDAt5TbnCM4eSE+nI0QN2NJtwzcgMhht2eNz6V9evJrk+lwC8bCY8OWV5Ym8Jz7ZEyGnKnMA==",
+ "version": "18.19.121",
+ "resolved": "https://registry.npmmirror.com/@types/node/-/node-18.19.121.tgz",
+ "integrity": "sha512-bHOrbyztmyYIi4f1R0s17QsPs1uyyYnGcXeZoGEd227oZjry0q6XQBQxd82X1I57zEfwO8h9Xo+Kl5gX1d9MwQ==",
"dependencies": {
"undici-types": "~5.26.4"
}
@@ -7341,11 +7232,6 @@
"node": ">=14"
}
},
- "node_modules/@vitalets/google-translate-api/node_modules/@types/http-errors": {
- "version": "1.8.2",
- "resolved": "https://registry.npmmirror.com/@types/http-errors/-/http-errors-1.8.2.tgz",
- "integrity": "sha512-EqX+YQxINb+MeXaIqYDASb6U6FCHbWjkj4a1CKDBks3d/QiB2+PqBLyO72vLDgAO1wUI4O+9gweRcQK11bTL/w=="
- },
"node_modules/@vue/compiler-core": {
"version": "3.5.18",
"resolved": "https://registry.npmmirror.com/@vue/compiler-core/-/compiler-core-3.5.18.tgz",
@@ -8812,9 +8698,9 @@
}
},
"node_modules/babel-preset-current-node-syntax": {
- "version": "1.1.0",
- "resolved": "https://registry.npmmirror.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz",
- "integrity": "sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==",
+ "version": "1.2.0",
+ "resolved": "https://registry.npmmirror.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.2.0.tgz",
+ "integrity": "sha512-E/VlAEzRrsLEb2+dv8yp3bo4scof3l9nR4lrld+Iy5NyVqgVYUJnDAmunkhPMisRI32Qc4iRiz425d8vM++2fg==",
"dev": true,
"dependencies": {
"@babel/plugin-syntax-async-generators": "^7.8.4",
@@ -8834,7 +8720,7 @@
"@babel/plugin-syntax-top-level-await": "^7.14.5"
},
"peerDependencies": {
- "@babel/core": "^7.0.0"
+ "@babel/core": "^7.0.0 || ^8.0.0-0"
}
},
"node_modules/babel-preset-jest": {
@@ -9692,9 +9578,9 @@
}
},
"node_modules/caniuse-lite": {
- "version": "1.0.30001727",
- "resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001727.tgz",
- "integrity": "sha512-pB68nIHmbN6L/4C6MH1DokyR3bYqFwjaSs/sWDHGj4CTcFtQUQMuJftVwWkXq7mNWOybD3KhUv3oWHoGxgP14Q==",
+ "version": "1.0.30001731",
+ "resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001731.tgz",
+ "integrity": "sha512-lDdp2/wrOmTRWuoB5DpfNkC0rJDU8DqRa6nYL6HK6sytw70QMopt/NIc/9SM7ylItlBWfACXk0tEn37UWM/+mg==",
"funding": [
{
"type": "opencollective",
@@ -11319,17 +11205,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/css/node_modules/source-map-resolve": {
- "version": "0.6.0",
- "resolved": "https://registry.npmmirror.com/source-map-resolve/-/source-map-resolve-0.6.0.tgz",
- "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==",
- "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated",
- "dev": true,
- "dependencies": {
- "atob": "^2.1.2",
- "decode-uri-component": "^0.2.0"
- }
- },
"node_modules/cssesc": {
"version": "3.0.0",
"resolved": "https://registry.npmmirror.com/cssesc/-/cssesc-3.0.0.tgz",
@@ -13045,9 +12920,9 @@
"dev": true
},
"node_modules/electron-to-chromium": {
- "version": "1.5.190",
- "resolved": "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.5.190.tgz",
- "integrity": "sha512-k4McmnB2091YIsdCgkS0fMVMPOJgxl93ltFzaryXqwip1AaxeDqKCGLxkXODDA5Ab/D+tV5EL5+aTx76RvLRxw=="
+ "version": "1.5.194",
+ "resolved": "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.5.194.tgz",
+ "integrity": "sha512-SdnWJwSUot04UR51I2oPD8kuP2VI37/CADR1OHsFOUzZIvfWJBO6q11k5P/uKNyTT3cdOsnyjkrZ+DDShqYqJA=="
},
"node_modules/elliptic": {
"version": "6.6.1",
@@ -15105,9 +14980,9 @@
}
},
"node_modules/follow-redirects": {
- "version": "1.15.9",
- "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.9.tgz",
- "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==",
+ "version": "1.15.11",
+ "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.11.tgz",
+ "integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==",
"funding": [
{
"type": "individual",
@@ -21728,9 +21603,9 @@
"dev": true
},
"node_modules/nwsapi": {
- "version": "2.2.20",
- "resolved": "https://registry.npmmirror.com/nwsapi/-/nwsapi-2.2.20.tgz",
- "integrity": "sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==",
+ "version": "2.2.21",
+ "resolved": "https://registry.npmmirror.com/nwsapi/-/nwsapi-2.2.21.tgz",
+ "integrity": "sha512-o6nIY3qwiSXl7/LuOU0Dmuctd34Yay0yeuZRLFmDPrrdHpXKFndPj3hM+YEPVHYC5fx2otBx4Ilc/gyYSAUaIA==",
"dev": true
},
"node_modules/oauth-sign": {
@@ -22208,13 +22083,6 @@
"node": ">=8"
}
},
- "node_modules/package-json-from-dist": {
- "version": "1.0.1",
- "resolved": "https://registry.npmmirror.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz",
- "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==",
- "dev": true,
- "peer": true
- },
"node_modules/package-json/node_modules/@sindresorhus/is": {
"version": "0.14.0",
"resolved": "https://registry.npmmirror.com/@sindresorhus/is/-/is-0.14.0.tgz",
@@ -26206,6 +26074,20 @@
"node": ">=0.10.0"
}
},
+ "node_modules/snapdragon/node_modules/source-map-resolve": {
+ "version": "0.5.3",
+ "resolved": "https://registry.npmmirror.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
+ "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==",
+ "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated",
+ "dev": true,
+ "dependencies": {
+ "atob": "^2.1.2",
+ "decode-uri-component": "^0.2.0",
+ "resolve-url": "^0.2.1",
+ "source-map-url": "^0.4.0",
+ "urix": "^0.1.0"
+ }
+ },
"node_modules/sockjs": {
"version": "0.3.24",
"resolved": "https://registry.npmmirror.com/sockjs/-/sockjs-0.3.24.tgz",
@@ -26269,11 +26151,11 @@
"dev": true
},
"node_modules/source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
+ "version": "0.7.6",
+ "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.7.6.tgz",
+ "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==",
"engines": {
- "node": ">= 8"
+ "node": ">= 12"
}
},
"node_modules/source-map-js": {
@@ -26285,17 +26167,14 @@
}
},
"node_modules/source-map-resolve": {
- "version": "0.5.3",
- "resolved": "https://registry.npmmirror.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
- "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==",
+ "version": "0.6.0",
+ "resolved": "https://registry.npmmirror.com/source-map-resolve/-/source-map-resolve-0.6.0.tgz",
+ "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==",
"deprecated": "See https://github.com/lydell/source-map-resolve#deprecated",
"dev": true,
"dependencies": {
"atob": "^2.1.2",
- "decode-uri-component": "^0.2.0",
- "resolve-url": "^0.2.1",
- "source-map-url": "^0.4.0",
- "urix": "^0.1.0"
+ "decode-uri-component": "^0.2.0"
}
},
"node_modules/source-map-support": {
@@ -27117,27 +26996,25 @@
}
},
"node_modules/stylus": {
- "version": "0.64.0",
- "resolved": "https://registry.npmmirror.com/stylus/-/stylus-0.64.0.tgz",
- "integrity": "sha512-ZIdT8eUv8tegmqy1tTIdJv9We2DumkNZFdCF5mz/Kpq3OcTaxSuCAYZge6HKK2CmNC02G1eJig2RV7XTw5hQrA==",
+ "version": "0.55.0",
+ "resolved": "https://registry.npmmirror.com/stylus/-/stylus-0.55.0.tgz",
+ "integrity": "sha512-MuzIIVRSbc8XxHH7FjkvWqkIcr1BvoMZoR/oFuAJDlh7VSaNJzrB4uJ38GRQa+mWjLXODAMzeDe0xi9GYbGwnw==",
"dev": true,
- "license": "MIT",
- "peer": true,
"dependencies": {
- "@adobe/css-tools": "~4.3.3",
- "debug": "^4.3.2",
- "glob": "^10.4.5",
- "sax": "~1.4.1",
+ "css": "^3.0.0",
+ "debug": "~3.1.0",
+ "glob": "^7.1.6",
+ "mkdirp": "~1.0.4",
+ "safer-buffer": "^2.1.2",
+ "sax": "~1.2.4",
+ "semver": "^6.3.0",
"source-map": "^0.7.3"
},
"bin": {
"stylus": "bin/stylus"
},
"engines": {
- "node": ">=16"
- },
- "funding": {
- "url": "https://opencollective.com/stylus"
+ "node": "*"
}
},
"node_modules/stylus-loader": {
@@ -27189,85 +27066,20 @@
"node": ">=4.0.0"
}
},
- "node_modules/stylus/node_modules/brace-expansion": {
- "version": "2.0.2",
- "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.2.tgz",
- "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==",
+ "node_modules/stylus/node_modules/debug": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmmirror.com/debug/-/debug-3.1.0.tgz",
+ "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
"dev": true,
- "peer": true,
"dependencies": {
- "balanced-match": "^1.0.0"
+ "ms": "2.0.0"
}
},
- "node_modules/stylus/node_modules/glob": {
- "version": "10.4.5",
- "resolved": "https://registry.npmmirror.com/glob/-/glob-10.4.5.tgz",
- "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
- "dev": true,
- "peer": true,
- "dependencies": {
- "foreground-child": "^3.1.0",
- "jackspeak": "^3.1.2",
- "minimatch": "^9.0.4",
- "minipass": "^7.1.2",
- "package-json-from-dist": "^1.0.0",
- "path-scurry": "^1.11.1"
- },
- "bin": {
- "glob": "dist/esm/bin.mjs"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/stylus/node_modules/jackspeak": {
- "version": "3.4.3",
- "resolved": "https://registry.npmmirror.com/jackspeak/-/jackspeak-3.4.3.tgz",
- "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==",
- "dev": true,
- "peer": true,
- "dependencies": {
- "@isaacs/cliui": "^8.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- },
- "optionalDependencies": {
- "@pkgjs/parseargs": "^0.11.0"
- }
- },
- "node_modules/stylus/node_modules/minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "dev": true,
- "peer": true,
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/stylus/node_modules/minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmmirror.com/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
- "dev": true,
- "peer": true,
- "engines": {
- "node": ">=16 || 14 >=14.17"
- }
- },
- "node_modules/stylus/node_modules/sax": {
- "version": "1.4.1",
- "resolved": "https://registry.npmmirror.com/sax/-/sax-1.4.1.tgz",
- "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==",
- "dev": true,
- "peer": true
+ "node_modules/stylus/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true
},
"node_modules/supports-color": {
"version": "7.2.0",
@@ -28594,9 +28406,9 @@
}
},
"node_modules/typescript": {
- "version": "5.8.3",
- "resolved": "https://registry.npmmirror.com/typescript/-/typescript-5.8.3.tgz",
- "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==",
+ "version": "5.9.2",
+ "resolved": "https://registry.npmmirror.com/typescript/-/typescript-5.9.2.tgz",
+ "integrity": "sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==",
"dev": true,
"bin": {
"tsc": "bin/tsc",
@@ -30004,9 +29816,9 @@
}
},
"node_modules/webpack-auto-i18n-plugin/node_modules/webpack": {
- "version": "5.100.2",
- "resolved": "https://registry.npmmirror.com/webpack/-/webpack-5.100.2.tgz",
- "integrity": "sha512-QaNKAvGCDRh3wW1dsDjeMdDXwZm2vqq3zn6Pvq4rHOEOGSaUMgOOjG2Y9ZbIGzpfkJk9ZYTHpDqgDfeBDcnLaw==",
+ "version": "5.101.0",
+ "resolved": "https://registry.npmmirror.com/webpack/-/webpack-5.101.0.tgz",
+ "integrity": "sha512-B4t+nJqytPeuZlHuIKTbalhljIFXeNRqrUGAQgTGlfOl2lXXKXw+yZu6bicycP+PUlM44CxBjCFD6aciKFT3LQ==",
"dependencies": {
"@types/eslint-scope": "^3.7.7",
"@types/estree": "^1.0.8",
@@ -30943,9 +30755,9 @@
}
},
"node_modules/yup": {
- "version": "1.6.1",
- "resolved": "https://registry.npmmirror.com/yup/-/yup-1.6.1.tgz",
- "integrity": "sha512-JED8pB50qbA4FOkDol0bYF/p60qSEDQqBD0/qeIrUCG1KbPBIQ776fCUNb9ldbPcSTxA69g/47XTo4TqWiuXOA==",
+ "version": "1.7.0",
+ "resolved": "https://registry.npmmirror.com/yup/-/yup-1.7.0.tgz",
+ "integrity": "sha512-VJce62dBd+JQvoc+fCVq+KZfPHr+hXaxCcVgotfwWvlR0Ja3ffYKaJBT8rptPOSKOGJDCUnW2C2JWpud7aRP6Q==",
"dependencies": {
"property-expr": "^2.0.5",
"tiny-case": "^1.0.3",
@@ -30966,13 +30778,6 @@
}
},
"dependencies": {
- "@adobe/css-tools": {
- "version": "4.3.3",
- "resolved": "https://registry.npmmirror.com/@adobe/css-tools/-/css-tools-4.3.3.tgz",
- "integrity": "sha512-rE0Pygv0sEZ4vBWHlAgJLGDU7Pm8xoO6p3wsEceb7GYAjScrOHpEo8KK/eVkAcnSM+slAEtXjA2JpdjLp4fJQQ==",
- "dev": true,
- "peer": true
- },
"@ampproject/remapping": {
"version": "2.3.0",
"resolved": "https://registry.npmmirror.com/@ampproject/remapping/-/remapping-2.3.0.tgz",
@@ -31216,12 +31021,12 @@
}
},
"@babel/helpers": {
- "version": "7.27.6",
- "resolved": "https://registry.npmmirror.com/@babel/helpers/-/helpers-7.27.6.tgz",
- "integrity": "sha512-muE8Tt8M22638HU31A3CgfSUciwz1fhATfoVai05aPXGor//CdWDCbnlY1yvBPo07njuVOCNGCSp/GTt12lIug==",
+ "version": "7.28.2",
+ "resolved": "https://registry.npmmirror.com/@babel/helpers/-/helpers-7.28.2.tgz",
+ "integrity": "sha512-/V9771t+EgXz62aCcyofnQhGM8DQACbRhvzKFsXKC9QM+5MadF8ZmIm0crDMaz3+o0h0zXfJnd4EhbYbxsrcFw==",
"requires": {
"@babel/template": "^7.27.2",
- "@babel/types": "^7.27.6"
+ "@babel/types": "^7.28.2"
}
},
"@babel/parser": {
@@ -32235,14 +32040,14 @@
}
},
"@babel/runtime": {
- "version": "7.27.6",
- "resolved": "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.27.6.tgz",
- "integrity": "sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q=="
+ "version": "7.28.2",
+ "resolved": "https://registry.npmmirror.com/@babel/runtime/-/runtime-7.28.2.tgz",
+ "integrity": "sha512-KHp2IflsnGywDjBWDkR9iEqiWSpc8GIi0lgTT3mOElT0PP1tG26P4tmFI2YvAdzgq9RGyoHZQEIEdZy6Ec5xCA=="
},
"@babel/runtime-corejs3": {
- "version": "7.28.0",
- "resolved": "https://registry.npmmirror.com/@babel/runtime-corejs3/-/runtime-corejs3-7.28.0.tgz",
- "integrity": "sha512-nlIXnSqLcBij8K8TtkxbBJgfzfvi75V1pAKSM7dUXejGw12vJAqez74jZrHTsJ3Z+Aczc5Q/6JgNjKRMsVU44g==",
+ "version": "7.28.2",
+ "resolved": "https://registry.npmmirror.com/@babel/runtime-corejs3/-/runtime-corejs3-7.28.2.tgz",
+ "integrity": "sha512-FVFaVs2/dZgD3Y9ZD+AKNKjyGKzwu0C54laAXWUXgLcVXcCX6YZ6GhK2cp7FogSN2OA0Fu+QT8dP3FUdo9ShSQ==",
"dev": true,
"requires": {
"core-js-pure": "^3.43.0"
@@ -32273,9 +32078,9 @@
}
},
"@babel/types": {
- "version": "7.28.1",
- "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.28.1.tgz",
- "integrity": "sha512-x0LvFTekgSX+83TI28Y9wYPUfzrnl2aT5+5QLnO6v7mSJYtEEevuDRN0F0uSHRk1G1IWZC43o00Y0xDDrpBGPQ==",
+ "version": "7.28.2",
+ "resolved": "https://registry.npmmirror.com/@babel/types/-/types-7.28.2.tgz",
+ "integrity": "sha512-ruv7Ae4J5dUYULmeXw1gmb7rYRz57OWCPM57pHojnLq/3Z1CK2lNSLTCVjxVk1F/TZHwOZZrOWi0ur95BbLxNQ==",
"requires": {
"@babel/helper-string-parser": "^7.27.1",
"@babel/helper-validator-identifier": "^7.27.1"
@@ -34036,15 +33841,6 @@
"to-regex": "^3.0.1"
}
},
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmmirror.com/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
"define-property": {
"version": "2.0.2",
"resolved": "https://registry.npmmirror.com/define-property/-/define-property-2.0.2.tgz",
@@ -34195,12 +33991,6 @@
"webpack-sources": "^1.1.0"
}
},
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true
- },
"normalize-url": {
"version": "1.9.1",
"resolved": "https://registry.npmmirror.com/normalize-url/-/normalize-url-1.9.1.tgz",
@@ -34261,30 +34051,6 @@
"integrity": "sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==",
"dev": true
},
- "stylus": {
- "version": "0.55.0",
- "resolved": "https://registry.npmmirror.com/stylus/-/stylus-0.55.0.tgz",
- "integrity": "sha512-MuzIIVRSbc8XxHH7FjkvWqkIcr1BvoMZoR/oFuAJDlh7VSaNJzrB4uJ38GRQa+mWjLXODAMzeDe0xi9GYbGwnw==",
- "dev": true,
- "requires": {
- "css": "^3.0.0",
- "debug": "~3.1.0",
- "glob": "^7.1.6",
- "mkdirp": "~1.0.4",
- "safer-buffer": "^2.1.2",
- "sax": "~1.2.4",
- "semver": "^6.3.0",
- "source-map": "^0.7.3"
- },
- "dependencies": {
- "source-map": {
- "version": "0.7.6",
- "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.7.6.tgz",
- "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==",
- "dev": true
- }
- }
- },
"terser": {
"version": "4.8.1",
"resolved": "https://registry.npmmirror.com/terser/-/terser-4.8.1.tgz",
@@ -35076,15 +34842,6 @@
"semver": "^7.5.4"
}
},
- "debug": {
- "version": "3.1.0",
- "resolved": "https://registry.npmmirror.com/debug/-/debug-3.1.0.tgz",
- "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
"deepmerge": {
"version": "1.5.2",
"resolved": "https://registry.npmmirror.com/deepmerge/-/deepmerge-1.5.2.tgz",
@@ -35200,12 +34957,6 @@
}
}
},
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true
- },
"postcss-loader": {
"version": "7.3.4",
"resolved": "https://registry.npmmirror.com/postcss-loader/-/postcss-loader-7.3.4.tgz",
@@ -35280,36 +35031,6 @@
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
},
- "stylus": {
- "version": "0.55.0",
- "resolved": "https://registry.npmmirror.com/stylus/-/stylus-0.55.0.tgz",
- "integrity": "sha512-MuzIIVRSbc8XxHH7FjkvWqkIcr1BvoMZoR/oFuAJDlh7VSaNJzrB4uJ38GRQa+mWjLXODAMzeDe0xi9GYbGwnw==",
- "dev": true,
- "requires": {
- "css": "^3.0.0",
- "debug": "~3.1.0",
- "glob": "^7.1.6",
- "mkdirp": "~1.0.4",
- "safer-buffer": "^2.1.2",
- "sax": "~1.2.4",
- "semver": "^6.3.0",
- "source-map": "^0.7.3"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmmirror.com/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true
- },
- "source-map": {
- "version": "0.7.6",
- "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.7.6.tgz",
- "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==",
- "dev": true
- }
- }
- },
"stylus-loader": {
"version": "6.2.0",
"resolved": "https://registry.npmmirror.com/stylus-loader/-/stylus-loader-6.2.0.tgz",
@@ -35456,12 +35177,12 @@
}
},
"@types/babel__traverse": {
- "version": "7.20.7",
- "resolved": "https://registry.npmmirror.com/@types/babel__traverse/-/babel__traverse-7.20.7.tgz",
- "integrity": "sha512-dkO5fhS7+/oos4ciWxyEyjWe48zmG6wbCheo/G2ZnHx4fs3EU6YC6UM8rk56gAjNJ9P3MTH2jo5jb92/K6wbng==",
+ "version": "7.28.0",
+ "resolved": "https://registry.npmmirror.com/@types/babel__traverse/-/babel__traverse-7.28.0.tgz",
+ "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==",
"devOptional": true,
"requires": {
- "@babel/types": "^7.20.7"
+ "@babel/types": "^7.28.2"
}
},
"@types/body-parser": {
@@ -35615,10 +35336,9 @@
"dev": true
},
"@types/http-errors": {
- "version": "2.0.5",
- "resolved": "https://registry.npmmirror.com/@types/http-errors/-/http-errors-2.0.5.tgz",
- "integrity": "sha512-r8Tayk8HJnX0FztbZN7oVqGccWgw98T/0neJphO91KkmOzug1KkofZURD4UaD5uH8AqcFLfdPErnBod0u71/qg==",
- "dev": true
+ "version": "1.8.2",
+ "resolved": "https://registry.npmmirror.com/@types/http-errors/-/http-errors-1.8.2.tgz",
+ "integrity": "sha512-EqX+YQxINb+MeXaIqYDASb6U6FCHbWjkj4a1CKDBks3d/QiB2+PqBLyO72vLDgAO1wUI4O+9gweRcQK11bTL/w=="
},
"@types/http-proxy": {
"version": "1.17.16",
@@ -35742,9 +35462,9 @@
"dev": true
},
"@types/node": {
- "version": "18.19.120",
- "resolved": "https://registry.npmmirror.com/@types/node/-/node-18.19.120.tgz",
- "integrity": "sha512-WtCGHFXnVI8WHLxDAt5TbnCM4eSE+nI0QN2NJtwzcgMhht2eNz6V9evJrk+lwC8bCY8OWV5Ym8Jz7ZEyGnKnMA==",
+ "version": "18.19.121",
+ "resolved": "https://registry.npmmirror.com/@types/node/-/node-18.19.121.tgz",
+ "integrity": "sha512-bHOrbyztmyYIi4f1R0s17QsPs1uyyYnGcXeZoGEd227oZjry0q6XQBQxd82X1I57zEfwO8h9Xo+Kl5gX1d9MwQ==",
"requires": {
"undici-types": "~5.26.4"
}
@@ -36052,13 +35772,6 @@
"@types/http-errors": "^1.8.2",
"http-errors": "^2.0.0",
"node-fetch": "^2.6.7"
- },
- "dependencies": {
- "@types/http-errors": {
- "version": "1.8.2",
- "resolved": "https://registry.npmmirror.com/@types/http-errors/-/http-errors-1.8.2.tgz",
- "integrity": "sha512-EqX+YQxINb+MeXaIqYDASb6U6FCHbWjkj4a1CKDBks3d/QiB2+PqBLyO72vLDgAO1wUI4O+9gweRcQK11bTL/w=="
- }
}
},
"@vue/compiler-core": {
@@ -37259,9 +36972,9 @@
}
},
"babel-preset-current-node-syntax": {
- "version": "1.1.0",
- "resolved": "https://registry.npmmirror.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz",
- "integrity": "sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==",
+ "version": "1.2.0",
+ "resolved": "https://registry.npmmirror.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.2.0.tgz",
+ "integrity": "sha512-E/VlAEzRrsLEb2+dv8yp3bo4scof3l9nR4lrld+Iy5NyVqgVYUJnDAmunkhPMisRI32Qc4iRiz425d8vM++2fg==",
"dev": true,
"requires": {
"@babel/plugin-syntax-async-generators": "^7.8.4",
@@ -37962,9 +37675,9 @@
}
},
"caniuse-lite": {
- "version": "1.0.30001727",
- "resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001727.tgz",
- "integrity": "sha512-pB68nIHmbN6L/4C6MH1DokyR3bYqFwjaSs/sWDHGj4CTcFtQUQMuJftVwWkXq7mNWOybD3KhUv3oWHoGxgP14Q=="
+ "version": "1.0.30001731",
+ "resolved": "https://registry.npmmirror.com/caniuse-lite/-/caniuse-lite-1.0.30001731.tgz",
+ "integrity": "sha512-lDdp2/wrOmTRWuoB5DpfNkC0rJDU8DqRa6nYL6HK6sytw70QMopt/NIc/9SM7ylItlBWfACXk0tEn37UWM/+mg=="
},
"capital-case": {
"version": "1.0.4",
@@ -39041,16 +38754,6 @@
"resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
- },
- "source-map-resolve": {
- "version": "0.6.0",
- "resolved": "https://registry.npmmirror.com/source-map-resolve/-/source-map-resolve-0.6.0.tgz",
- "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==",
- "dev": true,
- "requires": {
- "atob": "^2.1.2",
- "decode-uri-component": "^0.2.0"
- }
}
}
},
@@ -40542,9 +40245,9 @@
"dev": true
},
"electron-to-chromium": {
- "version": "1.5.190",
- "resolved": "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.5.190.tgz",
- "integrity": "sha512-k4McmnB2091YIsdCgkS0fMVMPOJgxl93ltFzaryXqwip1AaxeDqKCGLxkXODDA5Ab/D+tV5EL5+aTx76RvLRxw=="
+ "version": "1.5.194",
+ "resolved": "https://registry.npmmirror.com/electron-to-chromium/-/electron-to-chromium-1.5.194.tgz",
+ "integrity": "sha512-SdnWJwSUot04UR51I2oPD8kuP2VI37/CADR1OHsFOUzZIvfWJBO6q11k5P/uKNyTT3cdOsnyjkrZ+DDShqYqJA=="
},
"elliptic": {
"version": "6.6.1",
@@ -42059,9 +41762,9 @@
}
},
"follow-redirects": {
- "version": "1.15.9",
- "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.9.tgz",
- "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ=="
+ "version": "1.15.11",
+ "resolved": "https://registry.npmmirror.com/follow-redirects/-/follow-redirects-1.15.11.tgz",
+ "integrity": "sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ=="
},
"for-each": {
"version": "0.3.5",
@@ -46976,9 +46679,9 @@
"dev": true
},
"nwsapi": {
- "version": "2.2.20",
- "resolved": "https://registry.npmmirror.com/nwsapi/-/nwsapi-2.2.20.tgz",
- "integrity": "sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==",
+ "version": "2.2.21",
+ "resolved": "https://registry.npmmirror.com/nwsapi/-/nwsapi-2.2.21.tgz",
+ "integrity": "sha512-o6nIY3qwiSXl7/LuOU0Dmuctd34Yay0yeuZRLFmDPrrdHpXKFndPj3hM+YEPVHYC5fx2otBx4Ilc/gyYSAUaIA==",
"dev": true
},
"oauth-sign": {
@@ -47420,13 +47123,6 @@
}
}
},
- "package-json-from-dist": {
- "version": "1.0.1",
- "resolved": "https://registry.npmmirror.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz",
- "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==",
- "dev": true,
- "peer": true
- },
"pako": {
"version": "1.0.11",
"resolved": "https://registry.npmmirror.com/pako/-/pako-1.0.11.tgz",
@@ -50251,6 +49947,19 @@
"resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.5.7.tgz",
"integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
"dev": true
+ },
+ "source-map-resolve": {
+ "version": "0.5.3",
+ "resolved": "https://registry.npmmirror.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
+ "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==",
+ "dev": true,
+ "requires": {
+ "atob": "^2.1.2",
+ "decode-uri-component": "^0.2.0",
+ "resolve-url": "^0.2.1",
+ "source-map-url": "^0.4.0",
+ "urix": "^0.1.0"
+ }
}
}
},
@@ -50361,9 +50070,9 @@
"dev": true
},
"source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA=="
+ "version": "0.7.6",
+ "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.7.6.tgz",
+ "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ=="
},
"source-map-js": {
"version": "1.2.1",
@@ -50371,16 +50080,13 @@
"integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA=="
},
"source-map-resolve": {
- "version": "0.5.3",
- "resolved": "https://registry.npmmirror.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
- "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==",
+ "version": "0.6.0",
+ "resolved": "https://registry.npmmirror.com/source-map-resolve/-/source-map-resolve-0.6.0.tgz",
+ "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==",
"dev": true,
"requires": {
"atob": "^2.1.2",
- "decode-uri-component": "^0.2.0",
- "resolve-url": "^0.2.1",
- "source-map-url": "^0.4.0",
- "urix": "^0.1.0"
+ "decode-uri-component": "^0.2.0"
}
},
"source-map-support": {
@@ -51044,78 +50750,35 @@
}
},
"stylus": {
- "version": "0.64.0",
- "resolved": "https://registry.npmmirror.com/stylus/-/stylus-0.64.0.tgz",
- "integrity": "sha512-ZIdT8eUv8tegmqy1tTIdJv9We2DumkNZFdCF5mz/Kpq3OcTaxSuCAYZge6HKK2CmNC02G1eJig2RV7XTw5hQrA==",
+ "version": "0.55.0",
+ "resolved": "https://registry.npmmirror.com/stylus/-/stylus-0.55.0.tgz",
+ "integrity": "sha512-MuzIIVRSbc8XxHH7FjkvWqkIcr1BvoMZoR/oFuAJDlh7VSaNJzrB4uJ38GRQa+mWjLXODAMzeDe0xi9GYbGwnw==",
"dev": true,
- "peer": true,
"requires": {
- "@adobe/css-tools": "~4.3.3",
- "debug": "^4.3.2",
- "glob": "^10.4.5",
- "sax": "~1.4.1",
+ "css": "^3.0.0",
+ "debug": "~3.1.0",
+ "glob": "^7.1.6",
+ "mkdirp": "~1.0.4",
+ "safer-buffer": "^2.1.2",
+ "sax": "~1.2.4",
+ "semver": "^6.3.0",
"source-map": "^0.7.3"
},
"dependencies": {
- "brace-expansion": {
- "version": "2.0.2",
- "resolved": "https://registry.npmmirror.com/brace-expansion/-/brace-expansion-2.0.2.tgz",
- "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==",
+ "debug": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmmirror.com/debug/-/debug-3.1.0.tgz",
+ "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
"dev": true,
- "peer": true,
"requires": {
- "balanced-match": "^1.0.0"
+ "ms": "2.0.0"
}
},
- "glob": {
- "version": "10.4.5",
- "resolved": "https://registry.npmmirror.com/glob/-/glob-10.4.5.tgz",
- "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
- "dev": true,
- "peer": true,
- "requires": {
- "foreground-child": "^3.1.0",
- "jackspeak": "^3.1.2",
- "minimatch": "^9.0.4",
- "minipass": "^7.1.2",
- "package-json-from-dist": "^1.0.0",
- "path-scurry": "^1.11.1"
- }
- },
- "jackspeak": {
- "version": "3.4.3",
- "resolved": "https://registry.npmmirror.com/jackspeak/-/jackspeak-3.4.3.tgz",
- "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==",
- "dev": true,
- "peer": true,
- "requires": {
- "@isaacs/cliui": "^8.0.2",
- "@pkgjs/parseargs": "^0.11.0"
- }
- },
- "minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmmirror.com/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "dev": true,
- "peer": true,
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- },
- "minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmmirror.com/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
- "dev": true,
- "peer": true
- },
- "sax": {
- "version": "1.4.1",
- "resolved": "https://registry.npmmirror.com/sax/-/sax-1.4.1.tgz",
- "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==",
- "dev": true,
- "peer": true
+ "ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true
}
}
},
@@ -52158,9 +51821,9 @@
}
},
"typescript": {
- "version": "5.8.3",
- "resolved": "https://registry.npmmirror.com/typescript/-/typescript-5.8.3.tgz",
- "integrity": "sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==",
+ "version": "5.9.2",
+ "resolved": "https://registry.npmmirror.com/typescript/-/typescript-5.9.2.tgz",
+ "integrity": "sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==",
"dev": true
},
"uglify-js": {
@@ -53398,9 +53061,9 @@
}
},
"webpack": {
- "version": "5.100.2",
- "resolved": "https://registry.npmmirror.com/webpack/-/webpack-5.100.2.tgz",
- "integrity": "sha512-QaNKAvGCDRh3wW1dsDjeMdDXwZm2vqq3zn6Pvq4rHOEOGSaUMgOOjG2Y9ZbIGzpfkJk9ZYTHpDqgDfeBDcnLaw==",
+ "version": "5.101.0",
+ "resolved": "https://registry.npmmirror.com/webpack/-/webpack-5.101.0.tgz",
+ "integrity": "sha512-B4t+nJqytPeuZlHuIKTbalhljIFXeNRqrUGAQgTGlfOl2lXXKXw+yZu6bicycP+PUlM44CxBjCFD6aciKFT3LQ==",
"requires": {
"@types/eslint-scope": "^3.7.7",
"@types/estree": "^1.0.8",
@@ -53959,9 +53622,9 @@
"dev": true
},
"yup": {
- "version": "1.6.1",
- "resolved": "https://registry.npmmirror.com/yup/-/yup-1.6.1.tgz",
- "integrity": "sha512-JED8pB50qbA4FOkDol0bYF/p60qSEDQqBD0/qeIrUCG1KbPBIQ776fCUNb9ldbPcSTxA69g/47XTo4TqWiuXOA==",
+ "version": "1.7.0",
+ "resolved": "https://registry.npmmirror.com/yup/-/yup-1.7.0.tgz",
+ "integrity": "sha512-VJce62dBd+JQvoc+fCVq+KZfPHr+hXaxCcVgotfwWvlR0Ja3ffYKaJBT8rptPOSKOGJDCUnW2C2JWpud7aRP6Q==",
"requires": {
"property-expr": "^2.0.5",
"tiny-case": "^1.0.3",
diff --git a/package.json b/package.json
index 0b2fca3d6..0d79b8da9 100644
--- a/package.json
+++ b/package.json
@@ -8,13 +8,13 @@
"clean": "rm -rf node_modules/.cache",
"release:h5": "RELEASE=h5 npm run build:h5",
"lint": "prettier-eslint 'src/**/*.{js,jsx}' --write",
- "build:weapp": "cross-env taro build --type weapp --trace-warnings",
+ "build:weapp": "taro build --type weapp --trace-warnings",
"build:weapp:live": "cross-env APP_LIVE=true taro build --type weapp --trace-warnings",
- "build:swan": "cross-env taro build --type swan",
- "build:alipay": "cross-env taro build --type alipay",
- "build:tt": "cross-env taro build --type tt",
- "build:h5": "cross-env taro build --type h5",
- "build:rn": "cross-env taro build --type rn",
+ "build:swan": "taro build --type swan",
+ "build:alipay": "taro build --type alipay",
+ "build:tt": "taro build --type tt",
+ "build:h5": "taro build --type h5",
+ "build:rn": "taro build --type rn",
"build:app": "cross-env TARGET=app taro build --type h5",
"build:app:server": "cross-env TARGET=app SERVER=server taro build --type h5",
"dev:weapp": "npm run build:weapp -- --watch",
diff --git a/src/app.js b/src/app.js
index e849b14d1..db616685a 100644
--- a/src/app.js
+++ b/src/app.js
@@ -70,6 +70,17 @@ function App({ children }) {
checkAppVersion()
}
+ // 导购参数缓存处理
+ const guideUpdateTime = Taro.getStorageSync(SG_GUIDE_PARAMS_UPDATETIME) || 0
+ if (guideUpdateTime != 0) {
+ const diffMilliseconds = dayjs().diff(dayjs(guideUpdateTime))
+ // 参数保存超过3天,清除导购参数
+ if (diffMilliseconds > 3 * 86400000) {
+ Taro.removeStorageSync(SG_GUIDE_PARAMS)
+ Taro.removeStorageSync(SG_GUIDE_PARAMS_UPDATETIME)
+ }
+ }
+
const { show_time } = await api.promotion.getScreenAd()
let showAdv
if (show_time === 'always') {
@@ -79,34 +90,35 @@ function App({ children }) {
payload: showAdv
})
}
- getSystemConfig()
-
- // 导购参数缓存处理
- const guideUpdateTime = Taro.getStorageSync(SG_GUIDE_PARAMS_UPDATETIME) || 0
- const diffMilliseconds = dayjs().diff(dayjs(guideUpdateTime))
- // 参数保存超过3天,清除导购参数
- if (diffMilliseconds > 3 * 86400000) {
- Taro.removeStorageSync(SG_GUIDE_PARAMS)
- Taro.removeStorageSync(SG_GUIDE_PARAMS_UPDATETIME)
- }
}, [])
useLaunch((options) => {
console.log('useLaunch ***********', options)
- // __non_webpack_require__ &&
- // __non_webpack_require__('subpages/i18n/index', (res) => {
- // const langJSON = Taro['langJSON']
- // console.log('langJSON--------', langJSON)
- // langObj.setLanguagePackage(langJSON)
- // })
+
+ // 分包异步加载语言包
+ __non_webpack_require__ &&
+ __non_webpack_require__('subpages/i18n/index', (res) => {
+ const langJSON = Taro['langJSON']
+ console.log('langJSON--------', langJSON)
+ langObj.setLanguagePackage(langJSON)
+ })
})
useDidShow(async (options) => {
console.log('useDidShow &&&&&&&&&&&&', options)
entryLaunch.getRouteParams(isWeb ? { query: options } : options).then((params) => {
- console.log(`app componentDidShow:`, options, params)
Taro.setStorageSync(SG_ROUTER_PARAMS, params)
+ if (params.gu || params.gu_user_id) {
+ Taro.setStorageSync(SG_GUIDE_PARAMS, {
+ ...params,
+ gu_user_id: params.gu_user_id || params.gu.split('_')[0]
+ })
+ Taro.setStorageSync(SG_GUIDE_PARAMS_UPDATETIME, dayjs().unix() * 1000)
+ }
+
+ console.log(`app componentDidShow:`, params)
+
if (typeof params.runFlag === 'undefined') {
Taro.setStorageSync(SG_CHECK_STORE_RULE, 0)
@@ -115,11 +127,8 @@ function App({ children }) {
Taro.removeStorageSync(SG_GUIDE_PARAMS)
Taro.removeStorageSync(SG_GUIDE_PARAMS_UPDATETIME)
}
- }
- if (params.gu || params.gu_user_id) {
- Taro.setStorageSync(SG_GUIDE_PARAMS, params)
- Taro.setStorageSync(SG_GUIDE_PARAMS_UPDATETIME, dayjs().unix())
+ getSystemConfig()
}
})
})
@@ -182,7 +191,7 @@ function App({ children }) {
entryStoreByStoreCode: enterStoreRule?.distributor_code,
entryStoreByGuideMaterial: enterStoreRule?.shop_assistant,
- enterStoreWhiteList: enterStoreRule?.white_list,
+ enterStoreWhiteList: enterStoreRule?.shop_white,
entryStoreByGuide: enterStoreRule?.shop_assistant_pro,
entryStoreByLBS: enterStoreRule?.shop_lbs,
entryDefalutStore: enterStoreRule?.radio_type,
diff --git a/src/components/sp-goods-item/index.js b/src/components/sp-goods-item/index.js
index dde5d57bf..7a142bd16 100644
--- a/src/components/sp-goods-item/index.js
+++ b/src/components/sp-goods-item/index.js
@@ -152,12 +152,14 @@ function SpGoodsItem(props) {
{/* 商品价格、积分 */}
- {info.point && (
+ {info.point && info.point > 0 ? (
{info.price > 0 ? + : ''}
{info.price > 0 ? : ''}
+ ) : (
+ ''
)}
{!info.point && showPrice && (
@@ -231,13 +233,15 @@ function SpGoodsItem(props) {
)}
- {showAddCart && (
+ {showAddCart ? (
onChangeToolBar(e)}>
+ ) : (
+ ''
)}
- {info.point && 兑换}
+ {info.point && info.point > 0 ? 兑换 : ''}
diff --git a/src/components/sp-page/index.js b/src/components/sp-page/index.js
index f37406fca..9a538e8b8 100644
--- a/src/components/sp-page/index.js
+++ b/src/components/sp-page/index.js
@@ -395,6 +395,25 @@ const SpPage = memo(
/>
)
}
+ if (citem.id == 'homeSearch') {
+ return (
+ {
+ Taro.navigateTo({
+ url: '/pages/item/list'
+ })
+ }}
+ />
+ )
+ }
return (
is_point,
price: ({ price }) => price / 100, // 销售价
- activityPrice: ({ activity_price }) => activity_price / 100, // 秒杀价
+ activityPrice: ({ activity_price, act_price }) => (activity_price || act_price) / 100, // 秒杀价
marketPrice: ({ market_price }) => market_price / 100, // 原价
memberPrice: ({ member_price }) => member_price / 100, // 当前会员等级价
vipPrice: ({ vip_price }) => vip_price / 100, // vip价格
diff --git a/src/doc/point.js b/src/doc/point.js
index 74963b050..4a026333e 100644
--- a/src/doc/point.js
+++ b/src/doc/point.js
@@ -29,7 +29,7 @@ const JOURNAL_TYPE = {
export const POINT_LIST_ITEM = {
journalType: ({ journal_type }) => JOURNAL_TYPE[journal_type],
- outinType: 'outin_type',
+ outinType: ({ income, outcome }) => (income ? 'in' : outcome ? 'out' : ''),
point: ({ point }) => thousandthFormat(point),
orderId: 'order_id',
created: ({ created }) => formatDateTime(created)
diff --git a/src/hocs/withPageWrapper.js b/src/hocs/withPageWrapper.js
index 811e694f7..1325b620f 100644
--- a/src/hocs/withPageWrapper.js
+++ b/src/hocs/withPageWrapper.js
@@ -16,6 +16,7 @@ function withPageWrapper(Component) {
return function EnhancedComponent(props) {
const dispatch = useDispatch()
const { initState, entryDefalutStore, guidderTemplateId } = useSelector((state) => state.sys)
+ const { shopInfo } = useSelector((state) => state.shop)
const {
checkEnterStoreRule,
checkStoreWhiteList,
@@ -28,30 +29,44 @@ function withPageWrapper(Component) {
useEffectAsync(async () => {
if (initState) {
- // 启动时(冷启动+热启动)执行云店进店规则
- if (VERSION_STANDARD && Taro.getStorageSync(SG_CHECK_STORE_RULE) == 0) {
- // 云店进店规则
- try {
- Taro.setStorageSync(SG_CHECK_STORE_RULE, 1)
- await checkEnterStoreRule()
- setState(true)
- } catch (error) {
- // 检查店铺开启了白名单,需要登录授权
- if (error.message == 'AUTH_REQUIRED') {
- await handleToLogin()
- await handleStoreWhiteList()
- setState(true)
- } else if (error.message == 'CHECK_WHITE_LIST') {
- await handleStoreWhiteList()
- setState(true)
- }
- }
- } else {
- setState(true)
- }
+ resolveInStoreRule()
}
}, [initState])
+ useEffect(() => {
+ if (state) {
+ setState(false)
+
+ setTimeout(() => {
+ resolveInStoreRule()
+ }, 1000)
+ }
+ }, [shopInfo])
+
+ const resolveInStoreRule = async () => {
+ // 启动时(冷启动+热启动)执行云店进店规则
+ if (VERSION_STANDARD && Taro.getStorageSync(SG_CHECK_STORE_RULE) == 0) {
+ // 云店进店规则
+ try {
+ Taro.setStorageSync(SG_CHECK_STORE_RULE, 1)
+ await checkEnterStoreRule()
+ setState(true)
+ } catch (error) {
+ // 检查店铺开启了白名单,需要登录授权
+ if (error.message == 'AUTH_REQUIRED') {
+ await handleToLogin()
+ await handleStoreWhiteList()
+ setState(true)
+ } else if (error.message == 'CHECK_WHITE_LIST') {
+ await handleStoreWhiteList()
+ setState(true)
+ }
+ }
+ } else {
+ setState(true)
+ }
+ }
+
const handleToLogin = async () => {
try {
await showLoinModal()
@@ -59,14 +74,27 @@ function withPageWrapper(Component) {
const res = await showModal({
title: '提示',
content: '你还未登录,请先登录!',
- cancelText: '退出',
+ cancelText: '返回',
confirmText: '继续登录',
contentAlign: 'center'
})
if (res.confirm) {
await handleToLogin()
} else {
- Taro.exitMiniProgram()
+ // 返回兜底店铺逻辑
+ if (entryDefalutStore == '1') {
+ try {
+ await checkStoreWhiteList(null, false)
+ } catch (err) {
+ await handleToLogin()
+ }
+ } else {
+ Taro.redirectTo({
+ url: `/pages/custom/custom-page?id=${guidderTemplateId}&fromConnect=davild`
+ })
+ throw new Error('TO_STORE_GUIDE_PAGE')
+ }
+ // Taro.exitMiniProgram()
}
}
}
@@ -85,11 +113,16 @@ function withPageWrapper(Component) {
})
if (res.confirm) {
if (entryDefalutStore == '1') {
- await checkStoreWhiteList()
+ try {
+ await checkStoreWhiteList(null, false)
+ } catch (err) {
+ await handleStoreWhiteList()
+ }
} else {
Taro.redirectTo({
url: `/pages/custom/custom-page?id=${guidderTemplateId}&fromConnect=davild`
})
+ throw new Error('TO_STORE_GUIDE_PAGE')
}
// Taro.exitMiniProgram()
// throw new Error('EXIT_MINI_PROGRAM')
@@ -121,7 +154,6 @@ function withPageWrapper(Component) {
dispatch(updateShopInfo(myShopInfo))
}
}
-
if (state) {
return
} else {
diff --git a/src/hooks/useLocation.js b/src/hooks/useLocation.js
index 90b0c3e5e..b8aa5cf4e 100644
--- a/src/hooks/useLocation.js
+++ b/src/hooks/useLocation.js
@@ -8,15 +8,13 @@ import S from '@/spx'
export default (props) => {
const dispatch = useDispatch()
const { location } = useSelector((state) => state.user)
- const { open_divided } = useSelector((state) => state.sys)
/**
* 未登录状态 && 授权定位 == 定位
* 未登录状态 && 不授权定位 == 默认值
*/
const updateAddress = async () => {
- // open_divided店铺隔离,只取定位地址
- if (S.getAuthToken() && !open_divided) {
+ if (S.getAuthToken()) {
await addressLogic()
} else {
const res1 = await fetchLocation()
diff --git a/src/hooks/useWhiteShop.js b/src/hooks/useWhiteShop.js
index 195f333de..6f76a88cd 100644
--- a/src/hooks/useWhiteShop.js
+++ b/src/hooks/useWhiteShop.js
@@ -3,10 +3,11 @@ import { useSelector, useDispatch } from 'react-redux'
import Taro from '@tarojs/taro'
import api from '@/api'
import S from '@/spx'
-import { pickBy, getDistributorId } from '@/utils'
+import { pickBy, getDistributorId, entryLaunch, isEmpty } from '@/utils'
import doc from '@/doc'
import { useShopInfo } from '@/hooks'
import { updateShopInfo } from '@/store/slices/shop'
+import { updateLocation } from '@/store/slices/user'
import { SG_ROUTER_PARAMS, SG_GUIDE_PARAMS } from '@/consts/localstorage'
import configStore from '@/store'
@@ -25,28 +26,35 @@ export default () => {
const shopInfoRef = useRef(null)
- const checkStoreWhiteList = async (dtid) => {
+ const checkStoreWhiteList = async (dtid, isLocation = true) => {
const params = {}
if (dtid) {
params['distributor_id'] = dtid
- } else if (entryStoreByLBS) {
- params['lat'] = location?.lat
- params['lng'] = location?.lng
+ } else if (entryStoreByLBS && isLocation) {
+ if (isEmpty(location)) {
+ const locationInfo = await entryLaunch.getLocationInfo()
+ dispatch(updateLocation(locationInfo))
+ params['lat'] = locationInfo?.lat
+ params['lng'] = locationInfo?.lng
+ } else {
+ params['lat'] = location?.lat
+ params['lng'] = location?.lng
+ }
}
// 开启店铺码进店
const currentShopInfo = await api.shop.getShop(params)
shopInfoRef.current = currentShopInfo
-
// 如果请求的店铺ID和接口返回的店铺ID不一致(店铺可能关闭或禁用),此时需要根据兜底策略来决定跳转到引导页和默认店铺页
if (
dtid > 0 &&
currentShopInfo.distributor_id !== 0 &&
currentShopInfo.distributor_id !== dtid &&
- entryDefalutStore === '2'
+ entryDefalutStore == '2'
) {
Taro.redirectTo({
url: `/pages/custom/custom-page?id=${guidderTemplateId}&fromConnect=davild`
})
+ throw new Error('TO_STORE_GUIDE_PAGE')
}
if (currentShopInfo.distributor_id !== 0 && currentShopInfo.open_divided == '1') {
@@ -65,7 +73,6 @@ export default () => {
const checkEnterStoreRule = async () => {
const { dtid } = Taro.getStorageSync(SG_ROUTER_PARAMS)
const { gu_user_id } = Taro.getStorageSync(SG_GUIDE_PARAMS) // gu_user_id = 导购工号
-
// 路由带参
if (dtid) {
if (entryStoreByStoreCode) {
@@ -82,38 +89,42 @@ export default () => {
work_userid: gu_user_id
})
if (guideStoreInfo?.distributor_id) {
- await checkStoreWhiteList(guideStoreInfo?.distributor_id)
+ await checkStoreWhiteList(guideStoreInfo?.distributor_id, false)
} else {
// 兜底策略
- if (entryDefalutStore === '1') {
+ if (entryDefalutStore == '1') {
// 当前导购未绑定店铺
- await checkStoreWhiteList()
- } else if (entryDefalutStore === '2') {
+ await checkStoreWhiteList(null, false)
+ } else if (entryDefalutStore == '2') {
Taro.redirectTo({
url: `/pages/custom/custom-page?id=${guidderTemplateId}&fromConnect=davild`
})
+ throw new Error('TO_STORE_GUIDE_PAGE')
}
}
} else {
await checkStoreWhiteList()
}
} else {
+ // 进入专属导购所属店
if (entryStoreByGuide && S.getAuthToken()) {
const guideStoreInfo = await api.shop.checkStoreEnterRule()
if (guideStoreInfo?.distributor_id) {
await checkStoreWhiteList(guideStoreInfo?.distributor_id)
} else {
// 兜底策略
- if (entryDefalutStore === '1') {
+ if (entryDefalutStore == '1') {
// 当前导购未绑定店铺
- await checkStoreWhiteList()
- } else if (entryDefalutStore === '2') {
+ await checkStoreWhiteList(null, false)
+ } else if (entryDefalutStore == '2') {
Taro.redirectTo({
url: `/pages/custom/custom-page?id=${guidderTemplateId}&fromConnect=davild`
})
+ throw new Error('TO_STORE_GUIDE_PAGE')
}
}
} else if (enterStoreWhiteList && S.getAuthToken()) {
+ // 进入白名单会员店
const myShopInfo = await getUserWhiteShop()
if (myShopInfo) {
dispatch(updateShopInfo(myShopInfo))
@@ -143,6 +154,7 @@ export default () => {
return {
checkEnterStoreRule,
+ checkStoreWhiteList,
checkUserInStoreWhiteList,
getUserWhiteShop
}
diff --git a/src/pages/cart/espier-checkout.js b/src/pages/cart/espier-checkout.js
index 6934517c9..bdc29c3dd 100644
--- a/src/pages/cart/espier-checkout.js
+++ b/src/pages/cart/espier-checkout.js
@@ -317,9 +317,13 @@ function CartCheckout(props) {
draft.submitLoading = false
})
Taro.hideLoading()
+ Taro.showToast({
+ title: `${e?.message || '创建订单失败,请稍后再试'}`,
+ icon: 'none'
+ })
setTimeout(() => {
Taro.navigateBack()
- }, 100)
+ }, 800)
return
}
Taro.hideLoading()
diff --git a/src/pages/custom/custom-page.js b/src/pages/custom/custom-page.js
index 9f5106189..11d088760 100644
--- a/src/pages/custom/custom-page.js
+++ b/src/pages/custom/custom-page.js
@@ -42,7 +42,6 @@ function CustomPage(props) {
const MSpSkuSelect = React.memo(SpSkuSelect)
const pageRef = useRef()
const loginRef = useRef()
- const { open_divided } = useSelector((state) => state.sys)
const router = useRouter()
useEffect(() => {
@@ -108,11 +107,8 @@ function CustomPage(props) {
const { id } = await entryLaunch.getRouteParams($instance.router.params)
const { userId } = Taro.getStorageSync('userinfo')
const query = userId ? `?uid=${userId}&id=${id}` : `?id=${id}`
-
let path = `/pages/custom/custom-page${query}`
- if (open_divided) {
- path += `&tdid=${getDistributorId() || 0}`
- }
+
log.debug(`getAppShareInfo: ${path}`)
return {
title: shareInfo.page_share_title,
diff --git a/src/pages/home/wgts/full-slider.js b/src/pages/home/wgts/full-slider.js
index b61e774c5..2cf7a75fc 100644
--- a/src/pages/home/wgts/full-slider.js
+++ b/src/pages/home/wgts/full-slider.js
@@ -146,36 +146,54 @@ function WgtFullSlider(props) {
if (!config) return null
const page = Number(curIdx + 1)
const { dotbottom, indicatorText, indicatorFontSize, indicatorColor } = config
+ const currentItem = localData[curIdx]
return (
-
+ {
+ if (currentItem?.moreLink) {
+ linkPage(currentItem?.moreLink)
+ }
+ }}
+ >
{page < 10 ? '0' + page : page}
/
{localData.length < 10 ? '0' + localData.length : localData.length}
-
- {indicatorText}
-
-
+ {currentItem?.moreLink ? (
+ linkPage(currentItem?.moreLink)}
+ >
+ {indicatorText}
+
+ ) : null}
+ {currentItem?.moreLink ? (
+ linkPage(currentItem?.moreLink)}
+ style={{
+ marginRight: 4,
+ width: 0,
+ height: 0,
+ borderTop: '8px solid transparent',
+ borderBottom: '8px solid transparent',
+ borderLeft: `12px solid ${indicatorColor}`,
+ position: 'absolute',
+ right: '-22px',
+ top: indicatorText ? '40%' : '30%',
+ color: indicatorColor
+ }}
+ />
+ ) : null}
)
}
@@ -307,7 +325,7 @@ function WgtFullSlider(props) {
objectFit='cover'
showCenterPlayBtn={false}
showFullscreenBtn={false}
- muted
+ muted={false}
id={`swiperVideo_${index}${props.index}`}
onEnded={(e) => handlePlayEnd(e, item)}
onPlay={(e) => handlePlayStart(e, item, index)}
diff --git a/src/pages/home/wgts/imghot-zone.scss b/src/pages/home/wgts/imghot-zone.scss
index 17877505c..473231521 100644
--- a/src/pages/home/wgts/imghot-zone.scss
+++ b/src/pages/home/wgts/imghot-zone.scss
@@ -1,7 +1,6 @@
.wgt-imghot-zone {
.img-hotzone {
position: relative;
- border-radius: 16px;
overflow: hidden;
&_zone {
position: absolute;
diff --git a/src/pages/item/espier-detail.js b/src/pages/item/espier-detail.js
index c7ff6ebe4..ead8842f5 100644
--- a/src/pages/item/espier-detail.js
+++ b/src/pages/item/espier-detail.js
@@ -166,8 +166,11 @@ function EspierDetail(props) {
fetch()
getPackageList()
getEvaluationList()
- // 导购浏览记录
- api.member.itemHistorySave(id)
+
+ if (S.getAuthToken()) {
+ // 导购浏览记录
+ api.member.itemHistorySave(id)
+ }
}
}, [id])
@@ -301,7 +304,7 @@ function EspierDetail(props) {
distributor_id: dtid
})
- setNavigationBarTitle(data.itemName)
+ // setNavigationBarTitle(data.itemName)
console.log(ACTIVITY_LIST[data.activityType])
if (ACTIVITY_LIST[data.activityType]) {
@@ -354,11 +357,11 @@ function EspierDetail(props) {
.catch((error) => {
console.log('获取图片信息失败:', url, error)
// 返回一个默认高度或 null
- return { width: 0, height: 750 }
+ return { width: 0, height: 650 }
})
)
const results = await Promise.all(promises)
- return results.map((info) => info.height / 2)
+ return results.map((info) => (info.height / 2 > 650 ? 650 : info.height / 2))
}
const getRecommendList = async () => {
@@ -427,9 +430,10 @@ function EspierDetail(props) {
return {
height: '100%',
width: '100%',
- backgroundSize: '100% auto',
+ backgroundSize: 'cover',
backgroundImage: `url(${item})`,
- backgroundRepeat: 'no-repeat'
+ backgroundRepeat: 'no-repeat',
+ backgroundPosition: 'center'
}
}
diff --git a/src/subpages/guide/components/wgts/imghot-zone.scss b/src/subpages/guide/components/wgts/imghot-zone.scss
index 17877505c..473231521 100644
--- a/src/subpages/guide/components/wgts/imghot-zone.scss
+++ b/src/subpages/guide/components/wgts/imghot-zone.scss
@@ -1,7 +1,6 @@
.wgt-imghot-zone {
.img-hotzone {
position: relative;
- border-radius: 16px;
overflow: hidden;
&_zone {
position: absolute;
diff --git a/src/subpages/guide/item/espier-detail.js b/src/subpages/guide/item/espier-detail.js
index 0bf4a38a0..2086b4167 100644
--- a/src/subpages/guide/item/espier-detail.js
+++ b/src/subpages/guide/item/espier-detail.js
@@ -428,7 +428,7 @@ function EspierDetail(props) {
{info.itemName}
- {isWeixin && (
+ {/* {isWeixin && (
{
@@ -440,7 +440,7 @@ function EspierDetail(props) {
分享
- )}
+ )} */}
diff --git a/src/subpages/i18n/lang/index.json b/src/subpages/i18n/lang/index.json
index 461d0d49b..81d5f697c 100644
--- a/src/subpages/i18n/lang/index.json
+++ b/src/subpages/i18n/lang/index.json
@@ -12888,5 +12888,10 @@
"zh-cn": "取消1",
"en": "Cancel 1",
"zh-tw": "取消1"
+ },
+ "dai4x2c": {
+ "zh-cn": "创建订单失败,请稍后再试",
+ "en": "The order creation failed. Please try again later",
+ "zh-tw": "創建訂單失敗,請稍後再試"
}
}
\ No newline at end of file
diff --git a/src/subpages/member/index copy.js b/src/subpages/member/index copy.js
deleted file mode 100644
index 7bbd75b15..000000000
--- a/src/subpages/member/index copy.js
+++ /dev/null
@@ -1,688 +0,0 @@
-import Taro, {
- useDidShow,
- useShareAppMessage,
- getCurrentPages,
- getCurrentInstance
-} from '@tarojs/taro'
-import { useState, useEffect, useCallback, useRef } from 'react'
-import { updateUserInfo, fetchUserFavs, updateCheckChief } from '@/store/slices/user'
-import { View, ScrollView, Text, Image, Button } from '@tarojs/components'
-import { SG_APP_CONFIG, MERCHANT_TOKEN, SG_TOKEN } from '@/consts'
-import { useSelector, useDispatch } from 'react-redux'
-import { useImmer } from 'use-immer'
-
-import {
- SpLogin,
- SpImage,
- SpPrice,
- CouponModal,
- SpPrivacyModal,
- SpTabbar,
- SpPage
-} from '@/components'
-import api from '@/api'
-import {
- navigateTo,
- getThemeStyle,
- styleNames,
- classNames,
- showToast,
- showModal,
- isWeixin,
- normalizeQuerys,
- log,
- VERSION_PLATFORM,
- VERSION_STANDARD,
- getDistributorId
-} from '@/utils'
-import S from '@/spx'
-import {
- updatePurchaseShareInfo,
- updateInviteCode,
- updateCurDistributorId,
- updateIsOpenPurchase
-} from '@/store/slices/purchase'
-import { useLogin, useLocation } from '@/hooks'
-import { updateDeliveryPersonnel } from '@/store/slices/cart'
-import CompVipCard from './comps/comp-vipcard'
-import CompBanner from './comps/comp-banner'
-import CompPanel from './comps/comp-panel'
-import CompMenu from './comps/comp-menu'
-import CompHelpCenter from './comps/comp-helpcenter'
-import './index.scss'
-
-const initialConfigState = {
- banner: {
- isShow: false,
- loginBanner: '',
- noLoginBanner: '',
- pageUrl: '',
- urlOpen: false,
- appId: null
- },
- menu: {
- pointMenu: false, // 积分菜单
- activity: false, // 活动预约
- offline_order: false, // 线下订单
- boost_activity: false, // 助力活动
- boost_order: false, // 助力订单
- complaint: false, // 投诉记录
- community_order: false, // 社区团购订单
- community_group_enable: false, // 社区团购
- ext_info: false,
- group: false, // 我的拼团
- member_code: false, // 会员二维码
- recharge: false, // 储值
- ziti_order: false, // 自提
- share_enable: false, // 分享
- memberinfo_enable: false, // 个人信息
- tenants: true, //商家入驻
- purchase: true, // 员工内购
- dianwu: false, // 店务,
- community: false, // 社区
- salesman: true
- },
- infoAppId: '',
- infoPage: '',
- infoUrlIsOpen: true,
- pointAppId: '',
- pointPage: '',
- pointUrlIsOpen: true,
- memberConfig: {
- // defaultImg: null,
- vipImg: null
- },
- purchaseRes: {}
-}
-
-const initialState = {
- favCount: 0,
- point: 0,
- couponCount: 0,
- username: '',
- avatar: '',
- mobile: '',
- waitPayNum: 0,
- waitSendNum: 0,
- waitRecevieNum: 0,
- waitEvaluateNum: 0,
- afterSalesNum: 0,
- zitiNum: 0,
- deposit: 0,
- salesPersonList: {},
- deliveryStaffList: [] //配送员
-}
-
-function MemberIndex(props) {
- // console.log('===>getCurrentPages==>', getCurrentPages(), getCurrentInstance())
- const $instance = getCurrentInstance()
- const { updateAddress } = useLocation()
- const { isLogin, isNewUser, login, getUserInfoAuth } = useLogin({
- autoLogin: true,
- // policyUpdateHook: (isUpdate) => {
- // // isUpdate && setPolicyModal(true)
- // if (isUpdate) {
- // RefLogin.current._setPolicyModal()
- // }
-
- loginSuccess: () => {
- updateAddress()
- }
- })
- const [config, setConfig] = useImmer(initialConfigState)
- const [state, setState] = useImmer(initialState)
- const [policyModal, setPolicyModal] = useState(false)
-
- const { userInfo = {}, vipInfo = {} } = useSelector((state) => state.user)
- const { pointName, open_divided } = useSelector((state) => state.sys)
- const {
- shopInfo: { store_name }
- } = useSelector((state) => state.shop)
- log.debug(`store userInfo: ${JSON.stringify(userInfo)}`)
- const dispatch = useDispatch()
-
- useEffect(() => {
- if (isLogin) {
- getMemberCenterData()
- setMemberBackground()
- getEmployeeIsOpen()
- const { redirect } = $instance.router.params
- if (redirect) {
- Taro.redirectTo({ url: decodeURIComponent(redirect) })
- }
- }
- }, [isLogin])
-
- useEffect(() => {
- getMemberCenterConfig()
- // 白名单
- getSettings()
- }, [])
-
- useDidShow(() => {
- if (isLogin) {
- getMemberCenterData()
- }
- })
-
- // useDidShow(() => {
- // if (isLogin) {
- // getMemberCenterData()
- // setMemberBackground()
- // }
- // // if (S.get(MERCHANT_TOKEN, true)) {
- // // S.delete(MERCHANT_TOKEN, true)
- // // }
- // // if (S.get(SG_TOKEN)) {
- // // setHeaderBlock()
- // // }
- // })
-
- async function getSettings() {
- const { whitelist_status = false } = await api.shop.homeSetting()
- // 白名单配置
- Taro.setStorageSync(SG_APP_CONFIG, {
- whitelist_status
- })
- }
-
- // 分享
- useShareAppMessage(async (res) => {
- const { share_title, share_pic_wechatapp } = await api.member.getMemberShareConfig()
- const { logo } = await api.distribution.getDistributorInfo({
- distributor_id: 0
- })
- return {
- title: share_title,
- imageUrl: share_pic_wechatapp || logo,
- path: '/pages/index'
- }
- })
-
- const setHeaderBlock = async () => {
- const resAssets = await api.member.memberAssets()
- const { discount_total_count, fav_total_count, point_total_count } = resAssets
- setState((draft) => {
- draft.favCount = fav_total_count
- draft.point = point_total_count
- draft.couponCount = discount_total_count
- })
- }
-
- const getEmployeeIsOpen = async () => {
- const purchaseRes = await api.purchase.getEmployeeIsOpen()
- setConfig((draft) => {
- draft.purchaseRes = purchaseRes
- })
- dispatch(updateIsOpenPurchase(purchaseRes.is_open))
- }
-
- const getMemberCenterConfig = async () => {
- const [bannerRes, menuRes, redirectRes, pointShopRes] = await Promise.all([
- // 会员中心banner
- await api.shop.getPageParamsConfig({
- page_name: 'member_center_setting'
- }),
- // 菜单自定义
- await api.shop.getPageParamsConfig({
- page_name: 'member_center_menu_setting'
- }),
- // 积分跳转配置
- await api.shop.getPageParamsConfig({
- page_name: 'member_center_redirect_setting'
- }),
- // 积分商城
- await api.pointitem.getPointitemSetting()
- ])
- let banner,
- menu,
- redirectInfo = {}
-
- if (bannerRes.list.length > 0) {
- const { app_id, is_show, login_banner, no_login_banner, page, url_is_open } =
- bannerRes.list[0].params.data
- banner = {
- isShow: is_show,
- loginBanner: login_banner,
- noLoginBanner: no_login_banner,
- pageUrl: page,
- urlOpen: url_is_open,
- appId: app_id
- }
- }
- if (menuRes.list.length > 0) {
- menu = { ...menuRes.list[0].params.data }
- }
- if (S.getAuthToken() && (VERSION_PLATFORM || VERSION_STANDARD)) {
- const { result, status } = await api.member.is_admin()
- console.log('env:result', result)
- console.log('env:status', status)
- S.set('DIANWU_CONFIG', result, status)
- menu = {
- ...menu,
- dianwu: status
- }
- }
- if (redirectRes.list.length > 0) {
- const {
- info_app_id,
- info_page,
- info_url_is_open,
- point_app_id,
- point_page,
- point_url_is_open
- } = redirectRes.list[0].params.data
- redirectInfo = {
- infoAppId: info_app_id,
- infoPage: info_page,
- infoUrlIsOpen: info_url_is_open,
- pointAppId: point_app_id,
- pointPage: point_page,
- pointUrlIsOpen: point_url_is_open
- }
- }
-
- setConfig((draft) => {
- draft.banner = banner
- draft.menu = {
- ...menu,
- pointMenu: pointShopRes.entrance.mobile_openstatus
- }
- draft.infoAppId = redirectInfo.info_app_id
- draft.infoPage = redirectInfo.info_page
- draft.infoUrlIsOpen = redirectInfo.info_url_is_open
- draft.pointAppId = redirectInfo.point_app_id
- draft.pointPage = redirectInfo.point_page
- draft.pointUrlIsOpen = redirectInfo.point_url_is_open
- })
- }
-
- const setMemberBackground = async () => {
- let memberRes = await api.member.memberInfo()
- let deliveryPersonnel = memberRes?.deliveryStaffList?.list.map((item) => item.operator_id) ?? []
- setConfig((draft) => {
- draft.memberConfig = {
- // defaultImg: memberRes?.cardInfo?.background_pic_url,
- vipImg: memberRes?.vipgrade?.background_pic_url,
- backgroundImg: memberRes?.memberInfo?.gradeInfo?.background_pic_url
- }
- })
- setState((draft) => {
- draft.deposit = memberRes.deposit / 100
- draft.salesPersonList = memberRes?.salesPersonList
- draft.deliveryStaffList = memberRes?.deliveryStaffList
- })
-
- dispatch(
- updateDeliveryPersonnel({ self_delivery_operator_id: deliveryPersonnel, distributor_id: '' })
- ) //存配送员信息
- dispatch(updateUserInfo(memberRes))
- }
-
- const getMemberCenterData = async () => {
- // const resSales = await api.member.getSalesperson()
- const resTrade = await api.trade.getCount()
- // const resVip = await api.vip.getList()
- // 大转盘
- // const resTurntable = await api.wheel.getTurntableconfig()
- const resAssets = await api.member.memberAssets()
- const { discount_total_count, fav_total_count, point_total_count } = resAssets
-
- const {
- aftersales, // 待处理售后
- normal_notpay_notdelivery, // 未付款未发货
- normal_payed_daifahuo, // 待发货
- normal_payed_daishouhuo, // 待收货
- normal_payed_daiziti, // 待自提订单
- normal_not_rate // 待评论
- } = resTrade
-
- setState((draft) => {
- draft.favCount = fav_total_count
- draft.point = point_total_count
- draft.couponCount = discount_total_count
- draft.waitPayNum = normal_notpay_notdelivery
- draft.waitSendNum = normal_payed_daifahuo
- draft.waitRecevieNum = normal_payed_daishouhuo
- draft.afterSalesNum = aftersales
- draft.zitiNum = normal_payed_daiziti
- draft.waitEvaluateNum = normal_not_rate
- })
- }
-
- const handleClickLink = async (link) => {
- // await getUserInfoAuth()
- Taro.navigateTo({ url: link })
- }
-
- const handleClickPoint = () => {
- const { pointAppId, pointPage, pointUrlIsOpen } = config
- if (pointUrlIsOpen) {
- Taro.navigateToMiniProgram({
- appId: pointAppId,
- path: pointPage
- })
- }
- }
-
- const handleClickService = async (item) => {
- const { link, key } = item
- // await getUserInfoAuth(key !== 'tenants')
- // 分销推广
- if (key == 'popularize') {
- // 已经是分销员
- if (userInfo.isPromoter) {
- Taro.navigateTo({ url: link })
- } else {
- const { confirm } = await Taro.showModal({
- title: '邀请推广',
- content: '确定申请成为推广员?',
- showCancel: true,
- cancel: '取消',
- confirmText: '确认',
- confirmColor: '#0b4137'
- })
- if (!confirm) return
- const { status } = await api.distribution.become()
- if (status) {
- Taro.showModal({
- title: '恭喜',
- content: '已成为推广员',
- showCancel: false,
- confirmText: '好'
- })
- }
- }
- return
- }
- if (key == 'useinfo') {
- const { infoAppId, infoPage, infoUrlIsOpen } = config
- if (infoUrlIsOpen) {
- Taro.navigateToMiniProgram({
- appId: infoAppId,
- path: infoPage
- })
- }
- }
- if (key == 'community') {
- const res = await api.community.checkChief()
- dispatch(updateCheckChief(res))
- if (res.status) {
- Taro.navigateTo({ url: link })
- } else {
- Taro.navigateTo({ url: `/subpages/community/order` })
- }
- }
-
- if (key == 'purchase') {
- const data = await api.purchase.getUserEnterprises({
- disabled: 0,
- distributor_id: getDistributorId()
- })
- if (data?.length > 0) {
- Taro.navigateTo({ url: '/subpages/purchase/select-identity?is_redirt=1' })
- } else {
- Taro.navigateTo({ url: '/pages/purchase/auth' })
- }
- dispatch(updatePurchaseShareInfo())
- dispatch(updateInviteCode())
- dispatch(updateCurDistributorId(null))
- return
- }
-
- if (link) {
- Taro.navigateTo({ url: link })
- }
- }
- const VipGradeDom = () => {
- if (isLogin) {
- return (
-
-
- {(userInfo && (userInfo.username || userInfo.mobile)) || '获取昵称'}
-
- {
- Taro.navigateTo({ url: '/subpages/member/member-level' })
- }}
- >
- {
- {
- true: vipInfo.grade_name || '会员',
- false: userInfo?.gradeInfo?.grade_name || ''
- }[vipInfo.isVip]
- }
-
-
- )
- } else {
- return (
-
- 登录查看全部订单
-
- )
- }
- }
-
- if (!config) {
- return null
- }
-
- // console.log(`member page:`, state, config);
-
- const { memberConfig } = config
-
- console.log('====config===', config.menu)
-
- return (
- }>
-
-
- {VERSION_STANDARD && open_divided && (
- {
- Taro.navigateTo({
- url: '/subpages/store/list'
- })
- }}
- >
-
- 我的店铺 {store_name || '暂无店铺信息'}
-
-
-
- )}
-
-
-
-
-
-
- {VipGradeDom()}
-
-
-
- {config.menu.member_code && (
-
-
-
- )}
-
-
-
-
-
-
- {/* {config.menu.member_code && (
-
-
-
- )}
-
-
- */}
-
- 优惠券(张)
- {state.couponCount}
-
-
- {`${pointName}`}
- {state.point}
-
- {/* {process.env.NODE_ENV === 'development' && (
-
- 储值(¥)
-
-
-
-
- )} */}
-
- 收藏(个)
- {state.favCount}
-
-
-
- {/* 会员卡等级 */}
- {vipInfo.isOpen && (
-
-
-
- )}
-
-
-
-
- {config.banner?.isShow && (
-
- )}
-
-
- 查看全部订单
-
- }
- >
- {config.menu.ziti_order && (
-
-
-
- 自提订单
-
- 您有{state.zitiNum}
- 个等待自提的订单
-
-
-
-
-
- )}
-
-
-
-
- {state.waitPayNum > 0 && (
-
- {state.waitPayNum}
-
- )}
- 待支付
-
-
-
- {state.waitRecevieNum + state.waitSendNum > 0 && (
-
- {state.waitRecevieNum + state.waitSendNum}
-
- )}
- 待收货
-
-
-
- {state.waitEvaluateNum > 0 && (
-
- {state.waitEvaluateNum}
-
- )}
- 待评价
-
-
-
- {state.afterSalesNum > 0 && (
-
- {state.afterSalesNum}
-
- )}
- 售后
-
-
-
-
-
-
-
-
-
-
-
-
-
- )
-}
-
-export default MemberIndex
diff --git a/src/subpages/member/point-detail.js b/src/subpages/member/point-detail.js
index 1e3740db5..b27a2b94b 100644
--- a/src/subpages/member/point-detail.js
+++ b/src/subpages/member/point-detail.js
@@ -7,7 +7,6 @@ import { SpPage, SpScrollView, SpImage } from '@/components'
import api from '@/api'
import doc from '@/doc'
import { classNames, pickBy, thousandthFormat } from '@/utils'
-import { POINT_TYPE } from '@/consts'
import './point-detail.scss'
const btns = [
diff --git a/src/subpages/member/user-info.js b/src/subpages/member/user-info.js
index ba7525eed..dcabed105 100644
--- a/src/subpages/member/user-info.js
+++ b/src/subpages/member/user-info.js
@@ -10,7 +10,6 @@ import { SG_POLICY } from '@/consts'
import { classNames, showToast, formatTime, isWeixin, isWeb, VERSION_SHUYUN } from '@/utils'
import imgUploader from '@/utils/upload'
import { View, Input, Picker, Button } from '@tarojs/components'
-import { updateLang } from '@/store/slices/user'
import i18n from '@/lang/consts'
import './user-info.scss'
diff --git a/src/subpages/pointshop/espier-detail.js b/src/subpages/pointshop/espier-detail.js
index ec4c6038f..29fd8a0cd 100644
--- a/src/subpages/pointshop/espier-detail.js
+++ b/src/subpages/pointshop/espier-detail.js
@@ -322,6 +322,19 @@ function PointShopEspierDetail(props) {
+ {info.video && (
+
+
+
+
+
+ )}
{info.imgs.map((img, idx) => (
{info.imgs.length > 1 && (
- {`${curImgIdx + 1}/${info.imgs.length}`}
+ {`${curImgIdx + 1}/${
+ info.imgs.length + (info.video ? 1 : 0)
+ }`}
)}
- {info.video && play && (
-
-
-
- )}
-
- {info.video && (
+ {/* {info.video && (
{!play && }
{play ? '退出视频' : '播放视频'}
-
- )}
+ */}
+ {/* )} */}
diff --git a/src/subpages/pointshop/espier-detail.scss b/src/subpages/pointshop/espier-detail.scss
index 823e50139..1e7ea03bf 100644
--- a/src/subpages/pointshop/espier-detail.scss
+++ b/src/subpages/pointshop/espier-detail.scss
@@ -14,12 +14,7 @@
bottom: 0;
.item-video {
width: 100%;
- position: absolute;
- top: 50%;
- left: 50%;
- transform: translate(-50%, -50%);
- z-index: 100;
- // height: auto;
+ height: 100%;
}
.btn-play {
position: absolute;
@@ -92,7 +87,7 @@
}
}
.goods-desc {
- margin: 24px 16px;
+ margin: 24px 0px;
background-color: #fff;
box-shadow: 0px 2px 10px 0px #eae7e0;
.desc-hd {
diff --git a/src/subpages/pointshop/list.js b/src/subpages/pointshop/list.js
index 9f438ec78..f2d3996ef 100644
--- a/src/subpages/pointshop/list.js
+++ b/src/subpages/pointshop/list.js
@@ -250,7 +250,15 @@ function PointShopList() {
{userInfo?.username}
-
+ {
+ console.log('point-total')
+ Taro.navigateTo({
+ url: '/subpages/member/point-detail'
+ })
+ }}
+ >
diff --git a/src/subpages/store/comps/comp-shopitem.js b/src/subpages/store/comps/comp-shopitem.js
index f7dfa88f5..cdde14884 100644
--- a/src/subpages/store/comps/comp-shopitem.js
+++ b/src/subpages/store/comps/comp-shopitem.js
@@ -6,7 +6,6 @@ import './comp-shopitem.scss'
function CompShopItem(props) {
const { info } = props
- const { open_divided } = useSelector((state) => state.sys)
if (!info) {
return null
@@ -19,7 +18,7 @@ function CompShopItem(props) {
*/}
- {!open_divided && {info.distance || '100km'}}
+ {info.distance || '100km'}
{info.store_name}
{info.isOpenDivided && (
diff --git a/src/subpages/store/list.js b/src/subpages/store/list.js
index a7a683809..f93f8e500 100644
--- a/src/subpages/store/list.js
+++ b/src/subpages/store/list.js
@@ -8,7 +8,7 @@ import { updateLocation, updateChooseAddress } from '@/store/slices/user'
import { updateShopInfo } from '@/store/slices/shop'
import api from '@/api'
import { useLogin } from '@/hooks'
-import { SG_ROUTER_PARAMS } from '@/consts/localstorage'
+import { SG_ROUTER_PARAMS, SG_CHECK_STORE_RULE } from '@/consts/localstorage'
import doc from '@/doc'
import { entryLaunch, pickBy, classNames, showToast, log, isArray, isObject } from '@/utils'
import CompShopItem from './comps/comp-shopitem'
@@ -61,7 +61,6 @@ function NearlyShop(props) {
const [policyModal, setPolicyModal] = useState(false)
const { location = {}, address } = useSelector((state) => state.user)
const { shopInfo } = useSelector((state) => state.shop)
- const { open_divided } = useSelector((state) => state.sys)
const shopRef = useRef()
const pageRef = useRef()
const dispatch = useDispatch()
@@ -226,6 +225,7 @@ function NearlyShop(props) {
const handleClickShop = (info) => {
dispatch(updateShopInfo(info)) //新增非门店自提,开启distributor_id 取值为store_id
+ Taro.setStorageSync(SG_CHECK_STORE_RULE, 0)
// 清空小程序启动时携带的参数
Taro.setStorageSync(SG_ROUTER_PARAMS, {})
setTimeout(() => {
@@ -250,87 +250,79 @@ function NearlyShop(props) {
return (
- {!open_divided && (
- <>
-
-
-
- {
- setState((draft) => {
- draft.isSpAddressOpened = true
- })
- }}
- >
-
- {chooseValue.join('') || '选择地区'}
- {/* */}
-
-
-
-
-
-
- {state.keyword && state.keyword.length > 0 && (
-
- )}
-
+
+
+
+ {
+ setState((draft) => {
+ draft.isSpAddressOpened = true
+ })
+ }}
+ >
+
+ {chooseValue.join('') || '选择地区'}
+ {/* */}
- {isRecommend && (
-
-
- 您想要地区的店铺暂时未入驻网上商城
-
- )}
-
-
- 当前定位地址
-
-
- {location?.address || '无法获取您的位置信息'}
-
-
-
- {location?.address ? (state.locationIng ? '定位中...' : '重新定位') : '开启定位'}
-
-
- {address && (
-
- 我的收货地址
-
+
+
+
+ {state.keyword && state.keyword.length > 0 && (
+
)}
-
-
- {address && (
- onLocationChange(address)}
- >{`${address.province}${address.city}${address.county}${address.adrdetail}`}
- )}
-
- >
+
+
+
+ {isRecommend && (
+
+
+ 您想要地区的店铺暂时未入驻网上商城
+
)}
-
-
- {!open_divided ? (location?.address ? '附近门店' : '推荐门店') : ''}
+
+ 当前定位地址
+
+ {location?.address || '无法获取您的位置信息'}
+
+
+ {location?.address ? (state.locationIng ? '定位中...' : '重新定位') : '开启定位'}
+
+ {address && (
+
+ 我的收货地址
+
+ )}
+
+
+ {address && (
+ onLocationChange(address)}
+ >{`${address.province}${address.city}${address.county}${address.adrdetail}`}
+ )}
+
+
+
+
+ {location?.address ? '附近门店' : '推荐门店'}
{state.shopList.map((item, index) => (
- {headquarters && !open_divided && (
+ {headquarters && (
handleClickShop(headquarters)}>
{headquarters.store_name}
@@ -352,17 +344,15 @@ function NearlyShop(props) {
)}
- {!open_divided && (
- {
- setState((draft) => {
- draft.isSpAddressOpened = false
- })
- }}
- onChange={onPickerChange}
- />
- )}
+ {
+ setState((draft) => {
+ draft.isSpAddressOpened = false
+ })
+ }}
+ onChange={onPickerChange}
+ />
)
}
diff --git a/src/subpages/trade/after-sale.js b/src/subpages/trade/after-sale.js
index 3810e2b58..565b71b17 100644
--- a/src/subpages/trade/after-sale.js
+++ b/src/subpages/trade/after-sale.js
@@ -471,6 +471,7 @@ function TradeAfterSale(props) {
value={description}
placeholder='请输入您的补充描述(选填)'
maxLength={200}
+ placeholderStyle='padding-left: 10px;'
onChange={(e) => {
setState((draft) => {
draft.description = e
diff --git a/src/subpages/trade/after-sale.scss b/src/subpages/trade/after-sale.scss
index 967eef6cc..2840f9154 100644
--- a/src/subpages/trade/after-sale.scss
+++ b/src/subpages/trade/after-sale.scss
@@ -184,7 +184,6 @@
padding-bottom: 10px;
border-bottom: 1px solid #f5f5f5;
-
&::after {
content: '';
/* prettier-ignore */
@@ -209,7 +208,6 @@
margin-bottom: 40px;
}
-
.return-goods-type {
margin: 24px 16px 0;
border-radius: 6px;
@@ -249,19 +247,27 @@
margin: 0 32px;
display: flex;
overflow: hidden;
- }
+ position: relative;
- .icon-bianji1 {
- color: #aaaaaa;
- }
+ .icon-bianji1 {
+ color: #aaaaaa;
+ position: absolute;
+ z-index: 999;
+ top: 13px;
+ left: 10px;
+ }
- .at-textarea {
- border-width: 0;
- padding: 0;
- margin: 6px 0 0 10px;
+ .at-textarea {
+ border-width: 0;
+ padding: 0;
+ margin: 0;
+ width: 100%;
- &__textarea {
- font-size: 24px;
+ &__textarea {
+ font-size: 24px;
+ line-height: normal;
+ padding: 0px 10px 20px 40px;
+ }
}
}
@@ -390,7 +396,7 @@
margin-left: 30px;
}
}
- .prescription-drug{
+ .prescription-drug {
font-size: 22px;
color: var(--color-primary);
padding: 0 4px;
diff --git a/src/subpages/trade/comps/comp-aftertrade-item.js b/src/subpages/trade/comps/comp-aftertrade-item.js
index 64476bcae..40d1f7046 100644
--- a/src/subpages/trade/comps/comp-aftertrade-item.js
+++ b/src/subpages/trade/comps/comp-aftertrade-item.js
@@ -52,7 +52,7 @@ function CompTradeItem(props) {
-
+ {/*
{distributorInfo?.name}
diff --git a/src/subpages/trade/comps/comp-aftertrade-item.scss b/src/subpages/trade/comps/comp-aftertrade-item.scss
index 43346e0a3..3493e4216 100644
--- a/src/subpages/trade/comps/comp-aftertrade-item.scss
+++ b/src/subpages/trade/comps/comp-aftertrade-item.scss
@@ -11,7 +11,6 @@
.trade-no {
font-size: 24px;
color: #333;
- margin-top: 24px;
}
.trade-time {
diff --git a/src/subpages/trade/logistics-info.js b/src/subpages/trade/logistics-info.js
index 8e87fa413..7e6295c21 100644
--- a/src/subpages/trade/logistics-info.js
+++ b/src/subpages/trade/logistics-info.js
@@ -1,13 +1,12 @@
import React, { useEffect } from 'react'
-import { useSelector } from 'react-redux'
import { useImmer } from 'use-immer'
import Taro, { getCurrentInstance } from '@tarojs/taro'
import { AtButton } from 'taro-ui'
import api from '@/api'
-import doc from '@/doc'
+import S from '@/spx'
import { View, Picker } from '@tarojs/components'
import { LOGISTICS_CODE } from '@/consts'
-import { SpPage, SpCell, SpInput as AtInput } from '@/components'
+import { SpPage, SpCell, SpInput as AtInput, SpToast } from '@/components'
import { showToast } from '@/utils'
import './logistics-info.scss'
@@ -44,19 +43,25 @@ function TradeLogisticsInfo(props) {
showToast('请填写物流单号')
return
}
- await api.aftersales.sendback({
- item_id,
- order_id,
- aftersales_bn,
- logi_no,
- corp_code
- })
- showToast('操作成功')
- setTimeout(() => {
- Taro.navigateBack({
- delta: 2
+ try {
+ await api.aftersales.sendback({
+ item_id,
+ order_id,
+ aftersales_bn,
+ logi_no,
+ corp_code,
+ showError: false
})
- }, 1000)
+ showToast('操作成功')
+ setTimeout(() => {
+ Taro.navigateBack({
+ delta: 2
+ })
+ }, 1000)
+ } catch (error) {
+ console.log(error)
+ S.toast(error.message)
+ }
}
const onChangeExpress = (e) => {
@@ -109,6 +114,7 @@ function TradeLogisticsInfo(props) {
/>
}
>
+
)
}
diff --git a/src/utils/entryLaunch.js b/src/utils/entryLaunch.js
index 9f95ff29e..9d21ea570 100644
--- a/src/utils/entryLaunch.js
+++ b/src/utils/entryLaunch.js
@@ -379,7 +379,6 @@ class EntryLaunch {
async postGuideUV() {
const routerParams =
Taro.getStorageSync(SG_ROUTER_PARAMS) || Taro.getStorageSync(SG_GUIDE_PARAMS)
-
const { gu, gu_user_id } = routerParams || {}
let work_userid = ''
if (gu) {
diff --git a/src/utils/log copy.js b/src/utils/log copy.js
new file mode 100644
index 000000000..a279a8737
--- /dev/null
+++ b/src/utils/log copy.js
@@ -0,0 +1,101 @@
+const log = wx.getRealtimeLogManager ? wx.getRealtimeLogManager() : null // 手机端点击投诉可以在平台看到日志
+
+const levels = {
+ DEBUG: 'debug', // 开发和调试阶段使用
+ INFO: 'info', // 记录程序正常运行情况
+ WARN: 'warn', // 记录程序运行出现的潜在问题
+ ERROR: 'error' // 程序运行过程出现严重错误
+}
+
+const prefixes = {
+ DEBUG: '[DEBUG]',
+ INFO: '[INFO]',
+ WARN: '[WARN]',
+ ERROR: '[ERROR]'
+}
+
+class Logger {
+ constructor(level = levels.INFO) {
+ this.level = level
+ }
+
+ setLevel(level) {
+ this.level = level
+ }
+
+ log(level, ...args) {
+ if (this.shouldLog(level)) {
+ const timestamp = new Date().toLocaleString()
+ const prefix = prefixes[level.toUpperCase()] || ''
+ const logMessage = `[${timestamp}] ${prefix} ${args.join(' ')}`
+ console.log(logMessage)
+ this.sendToRealtimeLog(level, ...args)
+ }
+ }
+
+ debug(...args) {
+ this.log(levels.DEBUG, ...args)
+ }
+
+ info(...args) {
+ this.log(levels.INFO, ...args)
+ }
+
+ warn(...args) {
+ this.log(levels.WARN, ...args)
+ }
+
+ error(...args) {
+ this.log(levels.ERROR, ...args)
+ }
+
+ shouldLog(level) {
+ const levelOrder = [levels.DEBUG, levels.INFO, levels.WARN, levels.ERROR]
+ return levelOrder.indexOf(level) >= levelOrder.indexOf(this.level)
+ }
+
+ sendToRealtimeLog(level, ...args) {
+ if (!log) {
+ return
+ }
+ switch (level) {
+ case levels.INFO:
+ log.info.apply(log, args)
+ break
+ case levels.WARN:
+ log.warn.apply(log, args)
+ break
+ case levels.ERROR:
+ log.error.apply(log, args)
+ break
+ default:
+ log.debug ? log.debug.apply(log, args) : log.info.apply(log, args)
+ break
+ }
+ }
+
+ setFilterMsg(msg) {
+ if (!log || !log.setFilterMsg) {
+ return
+ }
+ if (typeof msg !== 'string') {
+ return
+ }
+ log.setFilterMsg(msg)
+ }
+
+ addFilterMsg(msg) {
+ if (!log || !log.addFilterMsg) {
+ return
+ }
+ if (typeof msg !== 'string') {
+ return
+ }
+ log.addFilterMsg(msg)
+ }
+}
+
+const logger = new Logger(levels.DEBUG) // 默认日志级别为 DEBUG
+
+export default logger
+export { levels }