giime 0.8.13 → 0.9.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.css +133 -133
- package/es/api/gstore/request.mjs +4 -8
- package/es/api/gstore/request.mjs.map +1 -1
- package/es/api/guardBasic/request.mjs +4 -7
- package/es/api/guardBasic/request.mjs.map +1 -1
- package/es/api/materialApi/request.mjs +4 -7
- package/es/api/materialApi/request.mjs.map +1 -1
- package/es/api/productCenter/request.mjs +4 -7
- package/es/api/productCenter/request.mjs.map +1 -1
- package/es/api/resource/request.mjs +4 -7
- package/es/api/resource/request.mjs.map +1 -1
- package/es/api/shopAdmin/request.mjs +4 -10
- package/es/api/shopAdmin/request.mjs.map +1 -1
- package/es/api/utils/createModes.mjs +1 -1
- package/es/api/utils/index.mjs +1 -1
- package/es/api/utils/resetAxiosBaseUrl.d.ts +2 -4
- package/es/api/utils/resetAxiosBaseUrl.mjs +10 -6
- package/es/api/utils/resetAxiosBaseUrl.mjs.map +1 -1
- package/es/components/src/business/loginDialog/LoginDialog.vue2.mjs +15 -18
- package/es/components/src/business/loginDialog/LoginDialog.vue2.mjs.map +1 -1
- package/es/giime/index.mjs +4 -2
- package/es/giime/index.mjs.map +1 -1
- package/es/giime/version.d.ts +1 -1
- package/es/giime/version.mjs +1 -1
- package/es/giime/version.mjs.map +1 -1
- package/es/hooks/base/index.mjs +1 -1
- package/es/hooks/base/useDownload/index.d.ts +20 -0
- package/es/hooks/base/useDownload/index.mjs +1 -1
- package/es/hooks/base/useDownload/index.mjs.map +1 -1
- package/es/hooks/index.mjs +1 -1
- package/es/index.css +133 -133
- package/es/utils/__tests__/http/devProxy.test.d.ts +1 -0
- package/es/utils/index.d.ts +1 -0
- package/es/utils/index.mjs +3 -1
- package/es/utils/index.mjs.map +1 -1
- package/es/utils/src/http/createModes.d.ts +23 -0
- package/es/utils/src/http/createModes.mjs +26 -13
- package/es/utils/src/http/createModes.mjs.map +1 -1
- package/es/utils/src/http/devProxy.d.ts +67 -2
- package/es/utils/src/http/devProxy.mjs +47 -52
- package/es/utils/src/http/devProxy.mjs.map +1 -1
- package/es/utils/src/http/index.d.ts +1 -0
- package/es/utils/src/http/index.mjs +2 -1
- package/es/utils/src/http/index.mjs.map +1 -1
- package/es/utils/src/tenant.d.ts +19 -0
- package/es/utils/src/tenant.mjs +22 -0
- package/es/utils/src/tenant.mjs.map +1 -0
- package/lib/api/gstore/request.js +4 -8
- package/lib/api/gstore/request.js.map +1 -1
- package/lib/api/guardBasic/request.js +4 -7
- package/lib/api/guardBasic/request.js.map +1 -1
- package/lib/api/materialApi/request.js +4 -7
- package/lib/api/materialApi/request.js.map +1 -1
- package/lib/api/productCenter/request.js +4 -7
- package/lib/api/productCenter/request.js.map +1 -1
- package/lib/api/resource/request.js +4 -7
- package/lib/api/resource/request.js.map +1 -1
- package/lib/api/shopAdmin/request.js +4 -10
- package/lib/api/shopAdmin/request.js.map +1 -1
- package/lib/api/utils/createModes.js +2 -0
- package/lib/api/utils/createModes.js.map +1 -1
- package/lib/api/utils/index.js +2 -0
- package/lib/api/utils/index.js.map +1 -1
- package/lib/api/utils/resetAxiosBaseUrl.d.ts +2 -4
- package/lib/api/utils/resetAxiosBaseUrl.js +10 -6
- package/lib/api/utils/resetAxiosBaseUrl.js.map +1 -1
- package/lib/components/src/business/loginDialog/LoginDialog.vue2.js +14 -17
- package/lib/components/src/business/loginDialog/LoginDialog.vue2.js.map +1 -1
- package/lib/giime/index.js +11 -0
- package/lib/giime/index.js.map +1 -1
- package/lib/giime/version.d.ts +1 -1
- package/lib/giime/version.js +1 -1
- package/lib/giime/version.js.map +1 -1
- package/lib/hooks/base/index.js +3 -0
- package/lib/hooks/base/index.js.map +1 -1
- package/lib/hooks/base/useDownload/index.d.ts +20 -0
- package/lib/hooks/base/useDownload/index.js +3 -0
- package/lib/hooks/base/useDownload/index.js.map +1 -1
- package/lib/hooks/index.js +3 -0
- package/lib/hooks/index.js.map +1 -1
- package/lib/index.css +133 -133
- package/lib/utils/__tests__/http/devProxy.test.d.ts +1 -0
- package/lib/utils/index.d.ts +1 -0
- package/lib/utils/index.js +8 -0
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/src/http/createModes.d.ts +23 -0
- package/lib/utils/src/http/createModes.js +27 -12
- package/lib/utils/src/http/createModes.js.map +1 -1
- package/lib/utils/src/http/devProxy.d.ts +67 -2
- package/lib/utils/src/http/devProxy.js +46 -50
- package/lib/utils/src/http/devProxy.js.map +1 -1
- package/lib/utils/src/http/index.d.ts +1 -0
- package/lib/utils/src/http/index.js +4 -0
- package/lib/utils/src/http/index.js.map +1 -1
- package/lib/utils/src/tenant.d.ts +19 -0
- package/lib/utils/src/tenant.js +26 -0
- package/lib/utils/src/tenant.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,12 +1,77 @@
|
|
|
1
1
|
import type { ProxyOptions } from 'vite';
|
|
2
|
+
/**
|
|
3
|
+
* 自动代理配置选项
|
|
4
|
+
*/
|
|
5
|
+
export interface AutoProxyOptions {
|
|
6
|
+
/** 需要排除的环境变量名称数组 */
|
|
7
|
+
excludeKeys?: string[];
|
|
8
|
+
/** 是否禁用本地开发环境代理(禁用后不会代理到 localhost) */
|
|
9
|
+
disableLocal?: boolean;
|
|
10
|
+
}
|
|
2
11
|
/**
|
|
3
12
|
* 默认开发代理配置
|
|
4
13
|
* https://cn.vitejs.dev/config/#server-proxy
|
|
5
14
|
*/
|
|
6
15
|
export declare const giimeDevProxy: Record<string, string | ProxyOptions>;
|
|
7
16
|
/**
|
|
8
|
-
*
|
|
17
|
+
* 自动生成代理配置(通过扫描环境变量)
|
|
18
|
+
* - 自动读取环境变量中以斜杠开头的 VITE_ 变量
|
|
19
|
+
* - 根据 VITE_GIIME_MODE 自动确定代理目标服务器
|
|
20
|
+
* - 支持排除特定环境变量
|
|
21
|
+
* - 支持禁用本地开发环境代理
|
|
22
|
+
*
|
|
23
|
+
* @param env 环境变量对象
|
|
24
|
+
* @param options 配置选项
|
|
25
|
+
* @param options.excludeKeys 需要排除的环境变量名称数组
|
|
26
|
+
* @param options.disableLocal 是否禁用本地开发环境代理
|
|
27
|
+
* @returns 代理配置对象
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* // 基础用法 - 自动扫描环境变量
|
|
31
|
+
* export default defineConfig({
|
|
32
|
+
* server: {
|
|
33
|
+
* proxy: autoGenerateProxy(process.env)
|
|
34
|
+
* }
|
|
35
|
+
* })
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* // 排除特定环境变量并禁用本地代理
|
|
39
|
+
* export default defineConfig({
|
|
40
|
+
* server: {
|
|
41
|
+
* proxy: autoGenerateProxy(process.env, {
|
|
42
|
+
* excludeKeys: ['VITE_APP_TITLE', 'VITE_PUBLIC_PATH'],
|
|
43
|
+
* disableLocal: true
|
|
44
|
+
* })
|
|
45
|
+
* }
|
|
46
|
+
* })
|
|
47
|
+
*/
|
|
48
|
+
export declare const autoGenerateProxy: (env: Record<string, string>, options?: AutoProxyOptions) => Record<string, string | ProxyOptions>;
|
|
49
|
+
/**
|
|
50
|
+
* 根据环境动态生成代理配置(融合版)
|
|
51
|
+
* - 包含预定义的 API 服务类型代理配置
|
|
52
|
+
* - 包含自动扫描环境变量的代理配置
|
|
53
|
+
*
|
|
9
54
|
* @param env 环境变量对象
|
|
55
|
+
* @param options 自动代理配置选项
|
|
10
56
|
* @returns 代理配置对象
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* // 基础用法
|
|
60
|
+
* export default defineConfig({
|
|
61
|
+
* server: {
|
|
62
|
+
* proxy: giimeDevProxyFn(process.env)
|
|
63
|
+
* }
|
|
64
|
+
* })
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* // 带选项
|
|
68
|
+
* export default defineConfig({
|
|
69
|
+
* server: {
|
|
70
|
+
* proxy: giimeDevProxyFn(process.env, {
|
|
71
|
+
* excludeKeys: ['VITE_APP_TITLE'],
|
|
72
|
+
* disableLocal: true
|
|
73
|
+
* })
|
|
74
|
+
* }
|
|
75
|
+
* })
|
|
11
76
|
*/
|
|
12
|
-
export declare const giimeDevProxyFn: (env: Record<string, string
|
|
77
|
+
export declare const giimeDevProxyFn: (env: Record<string, string>, options?: AutoProxyOptions) => Record<string, string | ProxyOptions>;
|
|
@@ -4,66 +4,62 @@ var resolver = require('../vue/resolver.js');
|
|
|
4
4
|
var key = require('../../../constants/key.js');
|
|
5
5
|
var createModes = require('./createModes.js');
|
|
6
6
|
|
|
7
|
-
const
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
defaultTarget: "https://third-ssl.giikin.cn/gstore/"
|
|
11
|
-
},
|
|
12
|
-
{
|
|
13
|
-
path: "/material-api",
|
|
14
|
-
defaultTarget: "https://manage-test.giikin.cn/middle",
|
|
15
|
-
serviceType: "middle"
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
path: "/shop-admin-api",
|
|
19
|
-
defaultTarget: "https://shop-admin-api-ssl.giikin.cn"
|
|
20
|
-
},
|
|
21
|
-
{
|
|
22
|
-
path: "/product-center-api",
|
|
23
|
-
defaultTarget: "https://manage-dev.giikin.cn/product-center",
|
|
24
|
-
serviceType: "product-center"
|
|
25
|
-
},
|
|
26
|
-
{
|
|
27
|
-
path: "/guard-basic-api",
|
|
28
|
-
defaultTarget: "https://manage-dev.giikin.cn/guard",
|
|
29
|
-
serviceType: "guard"
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
path: "/giime-guard-resource-api",
|
|
33
|
-
defaultTarget: "https://manage-dev.giikin.cn/guard",
|
|
34
|
-
serviceType: "guard"
|
|
35
|
-
}
|
|
36
|
-
];
|
|
37
|
-
const createProxyConfig = (path, target) => ({
|
|
38
|
-
target,
|
|
39
|
-
changeOrigin: true,
|
|
40
|
-
rewrite: (p) => p.replace(new RegExp(`^${path}`), ""),
|
|
41
|
-
bypass: resolver.bypass
|
|
42
|
-
});
|
|
43
|
-
const getTargetUrl = (config, mode) => {
|
|
44
|
-
if (!config.serviceType || !mode) {
|
|
45
|
-
return config.defaultTarget;
|
|
46
|
-
}
|
|
47
|
-
const modes = createModes.createModes({
|
|
48
|
-
developmentPath: config.path,
|
|
49
|
-
serviceType: config.serviceType
|
|
50
|
-
});
|
|
51
|
-
return modes.find((item) => item.mode === mode)?.url || `https://manage-dev.giikin.cn/${config.serviceType}`;
|
|
7
|
+
const API_SERVICE_TYPES = ["/third/gstore", "/third/am", "/guard", "fe/basic", "/middle", "/product-center"];
|
|
8
|
+
const resolveBaseUrl = (mode) => {
|
|
9
|
+
return createModes.getEnvConfig(mode).url;
|
|
52
10
|
};
|
|
53
11
|
const generateProxyConfig = (mode) => {
|
|
54
12
|
const config = {};
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
13
|
+
const giimeMode = mode || "development";
|
|
14
|
+
const baseUrl = resolveBaseUrl(giimeMode);
|
|
15
|
+
API_SERVICE_TYPES.forEach((serviceType) => {
|
|
16
|
+
config[serviceType] = {
|
|
17
|
+
target: baseUrl,
|
|
18
|
+
changeOrigin: true,
|
|
19
|
+
rewrite: (p) => p.replace(new RegExp(`^${serviceType.replace(/\//g, "\\/")}`), serviceType),
|
|
20
|
+
bypass: resolver.bypass
|
|
21
|
+
};
|
|
58
22
|
});
|
|
59
23
|
return config;
|
|
60
24
|
};
|
|
61
25
|
const giimeDevProxy = generateProxyConfig();
|
|
62
|
-
const
|
|
26
|
+
const autoGenerateProxy = (env, options) => {
|
|
27
|
+
const proxy = {};
|
|
28
|
+
const giimeMode = env.VITE_GIIME_MODE || "development";
|
|
29
|
+
const proxyTarget = resolveBaseUrl(giimeMode);
|
|
30
|
+
const processedPaths = /* @__PURE__ */ new Set();
|
|
31
|
+
const excludeKeys = options?.excludeKeys || [];
|
|
32
|
+
const disableLocal = options?.disableLocal || false;
|
|
33
|
+
for (const [key, value] of Object.entries(env)) {
|
|
34
|
+
if (!key.startsWith("VITE_")) continue;
|
|
35
|
+
if (excludeKeys.includes(key)) continue;
|
|
36
|
+
if (key === "VITE_BASE_URL") continue;
|
|
37
|
+
const cleanValue = value.replace(/['"]/g, "").trim();
|
|
38
|
+
if (!cleanValue.startsWith("/") || cleanValue === "/") continue;
|
|
39
|
+
if (disableLocal && giimeMode === "development") continue;
|
|
40
|
+
const normalizedPath = cleanValue.endsWith("/") ? cleanValue.slice(0, -1) : cleanValue;
|
|
41
|
+
if (processedPaths.has(normalizedPath)) continue;
|
|
42
|
+
proxy[normalizedPath] = {
|
|
43
|
+
target: proxyTarget,
|
|
44
|
+
changeOrigin: true,
|
|
45
|
+
rewrite: (p) => p.replace(new RegExp(`^${normalizedPath.replace(/\//g, "\\/")}`), normalizedPath),
|
|
46
|
+
bypass: resolver.bypass
|
|
47
|
+
};
|
|
48
|
+
processedPaths.add(normalizedPath);
|
|
49
|
+
}
|
|
50
|
+
return proxy;
|
|
51
|
+
};
|
|
52
|
+
const giimeDevProxyFn = (env, options) => {
|
|
63
53
|
const mode = env[key.resetEnvMode];
|
|
64
|
-
return
|
|
54
|
+
return {
|
|
55
|
+
...generateProxyConfig(mode),
|
|
56
|
+
// 预定义的服务类型配置
|
|
57
|
+
...autoGenerateProxy(env, options)
|
|
58
|
+
// 自动扫描的配置
|
|
59
|
+
};
|
|
65
60
|
};
|
|
66
61
|
|
|
62
|
+
exports.autoGenerateProxy = autoGenerateProxy;
|
|
67
63
|
exports.giimeDevProxy = giimeDevProxy;
|
|
68
64
|
exports.giimeDevProxyFn = giimeDevProxyFn;
|
|
69
65
|
//# sourceMappingURL=devProxy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"devProxy.js","sources":["../../../../../../packages/utils/src/http/devProxy.ts"],"sourcesContent":["import type { ProxyOptions } from 'vite';\nimport { bypass } from '../vue/resolver';\n// background引用,先必须使用../../\nimport { resetEnvMode } from '../../../constants/key';\nimport {
|
|
1
|
+
{"version":3,"file":"devProxy.js","sources":["../../../../../../packages/utils/src/http/devProxy.ts"],"sourcesContent":["import type { ProxyOptions } from 'vite';\nimport { bypass } from '../vue/resolver';\n// background引用,先必须使用../../\nimport { resetEnvMode } from '../../../constants/key';\nimport { getEnvConfig } from './createModes';\n\n/**\n * 自动代理配置选项\n */\nexport interface AutoProxyOptions {\n /** 需要排除的环境变量名称数组 */\n excludeKeys?: string[];\n /** 是否禁用本地开发环境代理(禁用后不会代理到 localhost) */\n disableLocal?: boolean;\n}\n\n/**\n * 预定义的 API 服务类型列表\n */\nconst API_SERVICE_TYPES = ['/third/gstore', '/third/am', '/guard', 'fe/basic', '/middle', '/product-center'];\n\n/**\n * 根据模式获取基础URL\n * @param mode 环境模式\n * @returns 基础URL\n */\nconst resolveBaseUrl = (mode?: string): string => {\n return getEnvConfig(mode).url;\n};\n\n/**\n * 生成代理配置对象\n * @param mode 环境模式(可选)\n * @returns 代理配置对象\n */\nconst generateProxyConfig = (mode?: string): Record<string, string | ProxyOptions> => {\n const config: Record<string, string | ProxyOptions> = {};\n // 使用 VITE_GIIME_MODE 确定代理目标,默认为 development\n const giimeMode = mode || 'development';\n const baseUrl = resolveBaseUrl(giimeMode);\n\n API_SERVICE_TYPES.forEach(serviceType => {\n config[serviceType] = {\n target: baseUrl,\n changeOrigin: true,\n rewrite: (p: string) => p.replace(new RegExp(`^${serviceType.replace(/\\//g, '\\\\/')}`), serviceType),\n bypass,\n };\n });\n\n return config;\n};\n\n/**\n * 默认开发代理配置\n * https://cn.vitejs.dev/config/#server-proxy\n */\nexport const giimeDevProxy: Record<string, string | ProxyOptions> = generateProxyConfig();\n\n/**\n * 自动生成代理配置(通过扫描环境变量)\n * - 自动读取环境变量中以斜杠开头的 VITE_ 变量\n * - 根据 VITE_GIIME_MODE 自动确定代理目标服务器\n * - 支持排除特定环境变量\n * - 支持禁用本地开发环境代理\n *\n * @param env 环境变量对象\n * @param options 配置选项\n * @param options.excludeKeys 需要排除的环境变量名称数组\n * @param options.disableLocal 是否禁用本地开发环境代理\n * @returns 代理配置对象\n *\n * @example\n * // 基础用法 - 自动扫描环境变量\n * export default defineConfig({\n * server: {\n * proxy: autoGenerateProxy(process.env)\n * }\n * })\n *\n * @example\n * // 排除特定环境变量并禁用本地代理\n * export default defineConfig({\n * server: {\n * proxy: autoGenerateProxy(process.env, {\n * excludeKeys: ['VITE_APP_TITLE', 'VITE_PUBLIC_PATH'],\n * disableLocal: true\n * })\n * }\n * })\n */\nexport const autoGenerateProxy = (env: Record<string, string>, options?: AutoProxyOptions): Record<string, string | ProxyOptions> => {\n const proxy: Record<string, string | ProxyOptions> = {};\n\n // 使用 VITE_GIIME_MODE 确定代理目标,默认为 development\n const giimeMode = env.VITE_GIIME_MODE || 'development';\n const proxyTarget = resolveBaseUrl(giimeMode);\n\n const processedPaths = new Set<string>();\n const excludeKeys = options?.excludeKeys || [];\n const disableLocal = options?.disableLocal || false;\n\n // 遍历所有环境变量\n for (const [key, value] of Object.entries(env)) {\n // 只处理 VITE_ 开头的变量\n if (!key.startsWith('VITE_')) continue;\n\n // 跳过被排除的环境变量\n if (excludeKeys.includes(key)) continue;\n\n // 跳过 VITE_BASE_URL\n if (key === 'VITE_BASE_URL') continue;\n\n // 移除引号并获取清理后的值\n const cleanValue = value.replace(/['\"]/g, '').trim();\n\n // 只处理以斜杠开头且后续有值的路径(排除单独的 '/')\n if (!cleanValue.startsWith('/') || cleanValue === '/') continue;\n\n // 如果禁用本地代理且当前模式是 development,跳过\n if (disableLocal && giimeMode === 'development') continue;\n\n // 标准化路径:移除尾部斜杠\n const normalizedPath = cleanValue.endsWith('/') ? cleanValue.slice(0, -1) : cleanValue;\n\n // 跳过已处理的路径(避免重复配置)\n if (processedPaths.has(normalizedPath)) continue;\n\n // 生成代理配置\n proxy[normalizedPath] = {\n target: proxyTarget,\n changeOrigin: true,\n rewrite: (p: string) => p.replace(new RegExp(`^${normalizedPath.replace(/\\//g, '\\\\/')}`), normalizedPath),\n bypass,\n };\n\n processedPaths.add(normalizedPath);\n }\n\n return proxy;\n};\n\n/**\n * 根据环境动态生成代理配置(融合版)\n * - 包含预定义的 API 服务类型代理配置\n * - 包含自动扫描环境变量的代理配置\n *\n * @param env 环境变量对象\n * @param options 自动代理配置选项\n * @returns 代理配置对象\n *\n * @example\n * // 基础用法\n * export default defineConfig({\n * server: {\n * proxy: giimeDevProxyFn(process.env)\n * }\n * })\n *\n * @example\n * // 带选项\n * export default defineConfig({\n * server: {\n * proxy: giimeDevProxyFn(process.env, {\n * excludeKeys: ['VITE_APP_TITLE'],\n * disableLocal: true\n * })\n * }\n * })\n */\nexport const giimeDevProxyFn = (env: Record<string, string>, options?: AutoProxyOptions): Record<string, string | ProxyOptions> => {\n const mode = env[resetEnvMode];\n\n // 融合两种代理配置\n return {\n ...generateProxyConfig(mode), // 预定义的服务类型配置\n ...autoGenerateProxy(env, options), // 自动扫描的配置\n };\n};\n"],"names":["getEnvConfig","bypass","resetEnvMode"],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ var errorMessage = require('./errorMessage.js');
|
|
|
5
5
|
var interceptors = require('./interceptors.js');
|
|
6
6
|
var devProxy = require('./devProxy.js');
|
|
7
7
|
var url = require('./url.js');
|
|
8
|
+
var createModes = require('./createModes.js');
|
|
8
9
|
|
|
9
10
|
|
|
10
11
|
|
|
@@ -13,9 +14,12 @@ exports.errorMessage = errorMessage.errorMessage;
|
|
|
13
14
|
exports.responseErrorMessage = errorMessage.responseErrorMessage;
|
|
14
15
|
exports.req401Interceptors = interceptors.req401Interceptors;
|
|
15
16
|
exports.res401Interceptors = interceptors.res401Interceptors;
|
|
17
|
+
exports.autoGenerateProxy = devProxy.autoGenerateProxy;
|
|
16
18
|
exports.giimeDevProxy = devProxy.giimeDevProxy;
|
|
17
19
|
exports.giimeDevProxyFn = devProxy.giimeDevProxyFn;
|
|
18
20
|
exports.getDomain = url.getDomain;
|
|
19
21
|
exports.getHeaderValue = url.getHeaderValue;
|
|
20
22
|
exports.urlJoin = url.urlJoin;
|
|
23
|
+
exports.envConfigs = createModes.envConfigs;
|
|
24
|
+
exports.getEnvConfig = createModes.getEnvConfig;
|
|
21
25
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 基于环境模式和域名的租户类型判断
|
|
3
|
+
* 优先根据环境模式获取租户类型,其次根据域名判断
|
|
4
|
+
*/
|
|
5
|
+
/** 租户类型 */
|
|
6
|
+
export type TenantType = 'giikin' | 'giiktok' | 'giimall';
|
|
7
|
+
/**
|
|
8
|
+
* 根据环境模式或域名获取租户类型
|
|
9
|
+
* 优先级:环境模式 > 域名 > 默认值(giikin)
|
|
10
|
+
*/
|
|
11
|
+
export declare const getTenantType: () => TenantType;
|
|
12
|
+
/**
|
|
13
|
+
* 判断是否为 giiktok 租户
|
|
14
|
+
*/
|
|
15
|
+
export declare const isGiiktok: () => boolean;
|
|
16
|
+
/**
|
|
17
|
+
* 判断是否为 giikin
|
|
18
|
+
*/
|
|
19
|
+
export declare const isGiikin: () => boolean;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var key = require('../../constants/key.js');
|
|
4
|
+
var index = require('../../hooks/base/useGlobalConfig/index.js');
|
|
5
|
+
var createModes = require('./http/createModes.js');
|
|
6
|
+
|
|
7
|
+
const getTenantType = () => {
|
|
8
|
+
const hostname = window.location.hostname;
|
|
9
|
+
const importMetaEnv = index.useGlobalConfig("env");
|
|
10
|
+
const mode = importMetaEnv.value[key.resetEnvMode];
|
|
11
|
+
if (mode && createModes.envConfigs[mode]) {
|
|
12
|
+
return createModes.envConfigs[mode].tenant;
|
|
13
|
+
}
|
|
14
|
+
const envConfig = Object.values(createModes.envConfigs).find((config) => config.domain === hostname);
|
|
15
|
+
if (envConfig) {
|
|
16
|
+
return envConfig.tenant;
|
|
17
|
+
}
|
|
18
|
+
return "giikin";
|
|
19
|
+
};
|
|
20
|
+
const isGiiktok = () => getTenantType() === "giiktok";
|
|
21
|
+
const isGiikin = () => getTenantType() === "giikin";
|
|
22
|
+
|
|
23
|
+
exports.getTenantType = getTenantType;
|
|
24
|
+
exports.isGiikin = isGiikin;
|
|
25
|
+
exports.isGiiktok = isGiiktok;
|
|
26
|
+
//# sourceMappingURL=tenant.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tenant.js","sources":["../../../../../packages/utils/src/tenant.ts"],"sourcesContent":["/**\n * 基于环境模式和域名的租户类型判断\n * 优先根据环境模式获取租户类型,其次根据域名判断\n */\n\nimport { resetEnvMode } from '@giime/constants/key';\nimport { useGlobalConfig } from '@giime/hooks/base/useGlobalConfig';\nimport { envConfigs } from './http/createModes';\n\n/** 租户类型 */\nexport type TenantType = 'giikin' | 'giiktok' | 'giimall';\n\n/**\n * 根据环境模式或域名获取租户类型\n * 优先级:环境模式 > 域名 > 默认值(giikin)\n */\nexport const getTenantType = (): TenantType => {\n const hostname = window.location.hostname;\n const importMetaEnv = useGlobalConfig('env');\n const mode = importMetaEnv.value[resetEnvMode];\n\n // 1. 优先根据 resetEnvMode 获取租户类型\n if (mode && envConfigs[mode]) {\n return envConfigs[mode].tenant;\n }\n\n // 2. 其次根据域名获取租户类型\n const envConfig = Object.values(envConfigs).find(config => config.domain === hostname);\n if (envConfig) {\n return envConfig.tenant;\n }\n\n // 3. 默认返回 giikin\n return 'giikin';\n};\n\n/**\n * 判断是否为 giiktok 租户\n */\nexport const isGiiktok = () => getTenantType() === 'giiktok';\n\n/**\n * 判断是否为 giikin\n */\nexport const isGiikin = () => getTenantType() === 'giikin';\n"],"names":["useGlobalConfig","resetEnvMode","envConfigs"],"mappings":";;;;;;AAgBO,MAAM,gBAAgB,MAAkB;AAC7C,EAAA,MAAM,QAAA,GAAW,OAAO,QAAA,CAAS,QAAA;AACjC,EAAA,MAAM,aAAA,GAAgBA,sBAAgB,KAAK,CAAA;AAC3C,EAAA,MAAM,IAAA,GAAO,aAAA,CAAc,KAAA,CAAMC,gBAAY,CAAA;AAG7C,EAAA,IAAI,IAAA,IAAQC,sBAAA,CAAW,IAAI,CAAA,EAAG;AAC5B,IAAA,OAAOA,sBAAA,CAAW,IAAI,CAAA,CAAE,MAAA;AAAA,EAC1B;AAGA,EAAA,MAAM,SAAA,GAAY,OAAO,MAAA,CAAOA,sBAAU,EAAE,IAAA,CAAK,CAAA,MAAA,KAAU,MAAA,CAAO,MAAA,KAAW,QAAQ,CAAA;AACrF,EAAA,IAAI,SAAA,EAAW;AACb,IAAA,OAAO,SAAA,CAAU,MAAA;AAAA,EACnB;AAGA,EAAA,OAAO,QAAA;AACT;AAKO,MAAM,SAAA,GAAY,MAAM,aAAA,EAAc,KAAM;AAK5C,MAAM,QAAA,GAAW,MAAM,aAAA,EAAc,KAAM;;;;;;"}
|