@boteteam/utils 0.0.23 → 0.0.24

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.
@@ -12,6 +12,20 @@ export declare const getFileUrlById: (fileId: string, { prefix, isSecurity, para
12
12
  isSecurity?: boolean | undefined;
13
13
  params?: Record<string, any> | undefined;
14
14
  }) => any;
15
+ /**
16
+ * 根据文件ID生成文件URL地址
17
+ * @param fileId 文件ID
18
+ * @param options 配置选项
19
+ * @param options.prefix 自定义请求前缀(默认使用环境变量配置)
20
+ * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签
21
+ * @param options.params 自定义参数,将添加到query参数中
22
+ * @returns 文件URL地址
23
+ */
24
+ export declare const getFileUrlByFileInfoId: (fileInfoId: string, { prefix, isSecurity, params, }?: {
25
+ prefix?: string | undefined;
26
+ isSecurity?: boolean | undefined;
27
+ params?: Record<string, any> | undefined;
28
+ }) => any;
15
29
  declare const getRemoteComponentUrl: ({ prefix, isSecurity, params, }?: {
16
30
  prefix?: string | undefined;
17
31
  isSecurity?: boolean | undefined;
package/dist/cjs/file.js CHANGED
@@ -29,6 +29,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
29
29
  // src/file.ts
30
30
  var file_exports = {};
31
31
  __export(file_exports, {
32
+ getFileUrlByFileInfoId: () => getFileUrlByFileInfoId,
32
33
  getFileUrlById: () => getFileUrlById,
33
34
  getRemoteComponentUrlByCode: () => getRemoteComponentUrlByCode,
34
35
  getRemoteComponentUrlById: () => getRemoteComponentUrlById
@@ -56,6 +57,27 @@ var getFileUrlById = (fileId, {
56
57
  const url = `${baseUrl}/file/download?${query}`;
57
58
  return isSecurity ? import_security.default.autoSecurityWithUrl(url) : url;
58
59
  };
60
+ var getFileUrlByFileInfoId = (fileInfoId, {
61
+ prefix,
62
+ isSecurity = true,
63
+ params
64
+ } = {}) => {
65
+ const baseUrl = prefix ? prefix.replace(/\/$/, "") : DEFAULT_PREFIX;
66
+ const { token, tenantId } = (0, import_pathArgsUtils.getSearchObj)() || {};
67
+ const queryParams = {
68
+ fileInfoId,
69
+ ...params
70
+ };
71
+ if (token) {
72
+ queryParams.token = token;
73
+ }
74
+ if (tenantId) {
75
+ queryParams.tenantId = tenantId;
76
+ }
77
+ const query = (0, import_pathArgsUtils.argsToString)(queryParams);
78
+ const url = `${baseUrl}/file/downloadByFileInfoId?${query}`;
79
+ return isSecurity ? import_security.default.autoSecurityWithUrl(url) : url;
80
+ };
59
81
  var getRemoteComponentUrl = ({
60
82
  prefix,
61
83
  isSecurity = true,
@@ -80,6 +102,7 @@ var getRemoteComponentUrlById = (fileInfoId, options) => {
80
102
  };
81
103
  // Annotate the CommonJS export names for ESM import in node:
82
104
  0 && (module.exports = {
105
+ getFileUrlByFileInfoId,
83
106
  getFileUrlById,
84
107
  getRemoteComponentUrlByCode,
85
108
  getRemoteComponentUrlById
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/file.ts"],
4
- "sourcesContent": ["import security from '@lingxiteam/security';\r\nimport { argsToString, getSearchObj } from './pathArgsUtils';\r\n\r\n// 暂时放到utils中,后续考虑独立在@boteteam/service包\r\n\r\nconst DEFAULT_PREFIX = `${process.env.REACT_APP_REQ_PREFIX}/bote`;\r\n\r\n/**\r\n * 根据文件ID生成文件URL地址\r\n * @param fileId 文件ID\r\n * @param options 配置选项\r\n * @param options.prefix 自定义请求前缀(默认使用环境变量配置)\r\n * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签\r\n * @param options.params 自定义参数,将添加到query参数中\r\n * @returns 文件URL地址\r\n */\r\nexport const getFileUrlById = (\r\n fileId: string,\r\n {\r\n prefix,\r\n isSecurity = true,\r\n params,\r\n }: {\r\n prefix?: string;\r\n isSecurity?: boolean;\r\n params?: Record<string, any>;\r\n } = {},\r\n) => {\r\n const baseUrl = prefix ? prefix.replace(/\\/$/, '') : DEFAULT_PREFIX;\r\n // 如果url中存在token,则把token添加到query参数中\r\n const token = getSearchObj()?.token || '';\r\n const queryParams:{[key:string]:any} = {\r\n fileId,\r\n ...params,\r\n };\r\n if (token) {\r\n queryParams.token = token;\r\n }\r\n const query = argsToString(queryParams);\r\n const url = `${baseUrl}/file/download?${query}`;\r\n return isSecurity ? security.autoSecurityWithUrl(url) : url;\r\n};\r\n\r\nconst getRemoteComponentUrl = ({\r\n prefix,\r\n isSecurity = true,\r\n params = {},\r\n}: {\r\n prefix?: string;\r\n isSecurity?: boolean;\r\n params?: Record<string, any>;\r\n} = {}) => {\r\n const baseUrl = prefix ? prefix.replace(/\\/$/, '') : DEFAULT_PREFIX;\r\n const query = argsToString(params);\r\n const url = `${baseUrl}/manager/skill/page/getRemoteComponent?${query}`;\r\n return isSecurity ? security.autoSecurityWithUrl(url) : url;\r\n};\r\n\r\n/**\r\n * 根据页面编码生成远程组件URL地址\r\n * @param pageCode 页面编码\r\n * @param options 配置选项\r\n * @param options.prefix 自定义请求前缀(默认使用环境变量配置)\r\n * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签\r\n * @param options.params 自定义参数,将添加到query参数中\r\n * @returns 文件URL地址\r\n */\r\nexport const getRemoteComponentUrlByCode = (\r\n pageCode: string,\r\n options: Parameters<typeof getRemoteComponentUrl>[0],\r\n) => {\r\n return getRemoteComponentUrl({\r\n ...options,\r\n params: { botePageCode: pageCode, ...options?.params },\r\n });\r\n};\r\n\r\n/**\r\n * 根据文件ID生成远程组件URL地址\r\n * @param fileInfoId 文件ID\r\n * @param options 配置选项\r\n * @param options.prefix 自定义请求前缀(默认使用环境变量配置)\r\n * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签\r\n * @param options.params 自定义参数,将添加到query参数中\r\n * @returns 文件URL地址\r\n */\r\nexport const getRemoteComponentUrlById = (\r\n fileInfoId: string,\r\n options: Parameters<typeof getRemoteComponentUrl>[0],\r\n) => {\r\n return getRemoteComponentUrl({\r\n ...options,\r\n params: { fileInfoId, ...options?.params },\r\n });\r\n};\r\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAqB;AACrB,2BAA2C;AAI3C,IAAM,iBAAiB,GAAG,QAAQ,IAAI;AAW/B,IAAM,iBAAiB,CAC5B,QACA;AAAA,EACE;AAAA,EACA,aAAa;AAAA,EACb;AACF,IAII,CAAC,MACF;AA3BL;AA4BE,QAAM,UAAU,SAAS,OAAO,QAAQ,OAAO,EAAE,IAAI;AAErD,QAAM,UAAQ,4CAAa,MAAb,mBAAgB,UAAS;AACvC,QAAM,cAAiC;AAAA,IACrC;AAAA,IACA,GAAG;AAAA,EACL;AACA,MAAI,OAAO;AACT,gBAAY,QAAQ;AAAA,EACtB;AACA,QAAM,YAAQ,mCAAa,WAAW;AACtC,QAAM,MAAM,GAAG,yBAAyB;AACxC,SAAO,aAAa,gBAAAA,QAAS,oBAAoB,GAAG,IAAI;AAC1D;AAEA,IAAM,wBAAwB,CAAC;AAAA,EAC7B;AAAA,EACA,aAAa;AAAA,EACb,SAAS,CAAC;AACZ,IAII,CAAC,MAAM;AACT,QAAM,UAAU,SAAS,OAAO,QAAQ,OAAO,EAAE,IAAI;AACrD,QAAM,YAAQ,mCAAa,MAAM;AACjC,QAAM,MAAM,GAAG,iDAAiD;AAChE,SAAO,aAAa,gBAAAA,QAAS,oBAAoB,GAAG,IAAI;AAC1D;AAWO,IAAM,8BAA8B,CACzC,UACA,YACG;AACH,SAAO,sBAAsB;AAAA,IAC3B,GAAG;AAAA,IACH,QAAQ,EAAE,cAAc,UAAU,GAAG,mCAAS,OAAO;AAAA,EACvD,CAAC;AACH;AAWO,IAAM,4BAA4B,CACvC,YACA,YACG;AACH,SAAO,sBAAsB;AAAA,IAC3B,GAAG;AAAA,IACH,QAAQ,EAAE,YAAY,GAAG,mCAAS,OAAO;AAAA,EAC3C,CAAC;AACH;",
4
+ "sourcesContent": ["import security from '@lingxiteam/security';\r\nimport { argsToString, getSearchObj } from './pathArgsUtils';\r\n\r\n// 暂时放到utils中,后续考虑独立在@boteteam/service包\r\n\r\nconst DEFAULT_PREFIX = `${process.env.REACT_APP_REQ_PREFIX}/bote`;\r\n\r\n/**\r\n * 根据文件ID生成文件URL地址\r\n * @param fileId 文件ID\r\n * @param options 配置选项\r\n * @param options.prefix 自定义请求前缀(默认使用环境变量配置)\r\n * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签\r\n * @param options.params 自定义参数,将添加到query参数中\r\n * @returns 文件URL地址\r\n */\r\nexport const getFileUrlById = (\r\n fileId: string,\r\n {\r\n prefix,\r\n isSecurity = true,\r\n params,\r\n }: {\r\n prefix?: string;\r\n isSecurity?: boolean;\r\n params?: Record<string, any>;\r\n } = {},\r\n) => {\r\n const baseUrl = prefix ? prefix.replace(/\\/$/, '') : DEFAULT_PREFIX;\r\n // 如果url中存在token,则把token添加到query参数中\r\n const token = getSearchObj()?.token || '';\r\n const queryParams:{[key:string]:any} = {\r\n fileId,\r\n ...params,\r\n };\r\n if (token) {\r\n queryParams.token = token;\r\n }\r\n const query = argsToString(queryParams);\r\n const url = `${baseUrl}/file/download?${query}`;\r\n return isSecurity ? security.autoSecurityWithUrl(url) : url;\r\n};\r\n\r\n/**\r\n * 根据文件ID生成文件URL地址\r\n * @param fileId 文件ID\r\n * @param options 配置选项\r\n * @param options.prefix 自定义请求前缀(默认使用环境变量配置)\r\n * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签\r\n * @param options.params 自定义参数,将添加到query参数中\r\n * @returns 文件URL地址\r\n */\r\nexport const getFileUrlByFileInfoId = (\r\n fileInfoId: string,\r\n {\r\n prefix,\r\n isSecurity = true,\r\n params,\r\n }: {\r\n prefix?: string;\r\n isSecurity?: boolean;\r\n params?: Record<string, any>;\r\n } = {},\r\n) => {\r\n const baseUrl = prefix ? prefix.replace(/\\/$/, '') : DEFAULT_PREFIX;\r\n // 如果url中存在token,则把token添加到query参数中\r\n const { token, tenantId } = getSearchObj() || {};\r\n const queryParams:{[key:string]:any} = {\r\n fileInfoId,\r\n ...params,\r\n };\r\n if (token) {\r\n queryParams.token = token;\r\n }\r\n if (tenantId) {\r\n queryParams.tenantId = tenantId;\r\n }\r\n const query = argsToString(queryParams);\r\n const url = `${baseUrl}/file/downloadByFileInfoId?${query}`;\r\n return isSecurity ? security.autoSecurityWithUrl(url) : url;\r\n};\r\n\r\nconst getRemoteComponentUrl = ({\r\n prefix,\r\n isSecurity = true,\r\n params = {},\r\n}: {\r\n prefix?: string;\r\n isSecurity?: boolean;\r\n params?: Record<string, any>;\r\n} = {}) => {\r\n const baseUrl = prefix ? prefix.replace(/\\/$/, '') : DEFAULT_PREFIX;\r\n const query = argsToString(params);\r\n const url = `${baseUrl}/manager/skill/page/getRemoteComponent?${query}`;\r\n return isSecurity ? security.autoSecurityWithUrl(url) : url;\r\n};\r\n\r\n/**\r\n * 根据页面编码生成远程组件URL地址\r\n * @param pageCode 页面编码\r\n * @param options 配置选项\r\n * @param options.prefix 自定义请求前缀(默认使用环境变量配置)\r\n * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签\r\n * @param options.params 自定义参数,将添加到query参数中\r\n * @returns 文件URL地址\r\n */\r\nexport const getRemoteComponentUrlByCode = (\r\n pageCode: string,\r\n options: Parameters<typeof getRemoteComponentUrl>[0],\r\n) => {\r\n return getRemoteComponentUrl({\r\n ...options,\r\n params: { botePageCode: pageCode, ...options?.params },\r\n });\r\n};\r\n\r\n/**\r\n * 根据文件ID生成远程组件URL地址\r\n * @param fileInfoId 文件ID\r\n * @param options 配置选项\r\n * @param options.prefix 自定义请求前缀(默认使用环境变量配置)\r\n * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签\r\n * @param options.params 自定义参数,将添加到query参数中\r\n * @returns 文件URL地址\r\n */\r\nexport const getRemoteComponentUrlById = (\r\n fileInfoId: string,\r\n options: Parameters<typeof getRemoteComponentUrl>[0],\r\n) => {\r\n return getRemoteComponentUrl({\r\n ...options,\r\n params: { fileInfoId, ...options?.params },\r\n });\r\n};\r\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sBAAqB;AACrB,2BAA2C;AAI3C,IAAM,iBAAiB,GAAG,QAAQ,IAAI;AAW/B,IAAM,iBAAiB,CAC5B,QACA;AAAA,EACE;AAAA,EACA,aAAa;AAAA,EACb;AACF,IAII,CAAC,MACF;AA3BL;AA4BE,QAAM,UAAU,SAAS,OAAO,QAAQ,OAAO,EAAE,IAAI;AAErD,QAAM,UAAQ,4CAAa,MAAb,mBAAgB,UAAS;AACvC,QAAM,cAAiC;AAAA,IACrC;AAAA,IACA,GAAG;AAAA,EACL;AACA,MAAI,OAAO;AACT,gBAAY,QAAQ;AAAA,EACtB;AACA,QAAM,YAAQ,mCAAa,WAAW;AACtC,QAAM,MAAM,GAAG,yBAAyB;AACxC,SAAO,aAAa,gBAAAA,QAAS,oBAAoB,GAAG,IAAI;AAC1D;AAWO,IAAM,yBAAyB,CACpC,YACA;AAAA,EACE;AAAA,EACA,aAAa;AAAA,EACb;AACF,IAII,CAAC,MACF;AACH,QAAM,UAAU,SAAS,OAAO,QAAQ,OAAO,EAAE,IAAI;AAErD,QAAM,EAAE,OAAO,SAAS,QAAI,mCAAa,KAAK,CAAC;AAC/C,QAAM,cAAiC;AAAA,IACrC;AAAA,IACA,GAAG;AAAA,EACL;AACA,MAAI,OAAO;AACT,gBAAY,QAAQ;AAAA,EACtB;AACA,MAAI,UAAU;AACZ,gBAAY,WAAW;AAAA,EACzB;AACA,QAAM,YAAQ,mCAAa,WAAW;AACtC,QAAM,MAAM,GAAG,qCAAqC;AACpD,SAAO,aAAa,gBAAAA,QAAS,oBAAoB,GAAG,IAAI;AAC1D;AAEA,IAAM,wBAAwB,CAAC;AAAA,EAC7B;AAAA,EACA,aAAa;AAAA,EACb,SAAS,CAAC;AACZ,IAII,CAAC,MAAM;AACT,QAAM,UAAU,SAAS,OAAO,QAAQ,OAAO,EAAE,IAAI;AACrD,QAAM,YAAQ,mCAAa,MAAM;AACjC,QAAM,MAAM,GAAG,iDAAiD;AAChE,SAAO,aAAa,gBAAAA,QAAS,oBAAoB,GAAG,IAAI;AAC1D;AAWO,IAAM,8BAA8B,CACzC,UACA,YACG;AACH,SAAO,sBAAsB;AAAA,IAC3B,GAAG;AAAA,IACH,QAAQ,EAAE,cAAc,UAAU,GAAG,mCAAS,OAAO;AAAA,EACvD,CAAC;AACH;AAWO,IAAM,4BAA4B,CACvC,YACA,YACG;AACH,SAAO,sBAAsB;AAAA,IAC3B,GAAG;AAAA,IACH,QAAQ,EAAE,YAAY,GAAG,mCAAS,OAAO;AAAA,EAC3C,CAAC;AACH;",
6
6
  "names": ["security"]
7
7
  }
@@ -23,7 +23,7 @@ declare const request: {
23
23
  referenceDocUrl: ({ tenantId, docId, token, }: {
24
24
  [key: string]: string;
25
25
  }) => string;
26
- referenceDocChunkUrl: ({ tenantId, docId, chunkId, token, score, rank, docType, }: {
26
+ referenceDocChunkUrl: ({ tenantId, docId, chunkId, token, score, rank, docType, botId, }: {
27
27
  [key: string]: string;
28
28
  }) => string;
29
29
  downloadDocUrl: ({ tenantId, docId, token, isSecurity, }: {
package/dist/cjs/http.js CHANGED
@@ -186,9 +186,13 @@ var request = {
186
186
  token,
187
187
  score,
188
188
  rank,
189
- docType
189
+ docType,
190
+ botId
190
191
  }) => {
191
192
  let url = `${managerUrl}#/documentChunk?tenantId=${tenantId}&docId=${docId}&chunkId=${chunkId}&score=${score}&rank=${rank}&docType=${docType}`;
193
+ if (botId) {
194
+ url += `&botId=${botId}`;
195
+ }
192
196
  if (token) {
193
197
  url += `&token=${token}`;
194
198
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/http.ts"],
4
- "sourcesContent": ["// import CookieUtil from './CookieUtils';\r\nimport security from '@lingxiteam/security';\r\nimport { getLocation } from './environment';\r\n\r\nexport const tenantIdSessionKey: string = 'botSelectedTenantID';\r\n\r\nconst http = (url: string, config: any) => {\r\n // const token = localStorage.getItem('X-Auth-Token');\r\n // config.headers['X-Auth-Token'] = token;\r\n config.headers['content-type'] = 'application/json;charset=UTF-8';\r\n\r\n // 获取 token\r\n const token = sessionStorage.getItem('token') as string;\r\n if (token) {\r\n config.headers.Authorization = `Bearer ${token}`;\r\n }\r\n\r\n // 兼容生产环境\r\n config.headers['Tenant-Id'] = currentTenantId;\r\n\r\n return new Promise((resolve, rejects) => {\r\n fetch(url, config)\r\n .then((response) => {\r\n const contentType: string | null = response.headers.get('content-type');\r\n if (contentType) {\r\n if (\r\n /application\\/octet-stream/.test(contentType) ||\r\n /application\\/zip/.test(contentType) ||\r\n /application\\/vnd\\.ms-excel/.test(contentType)\r\n ) {\r\n return response.blob();\r\n }\r\n if (/application\\/json/.test(contentType)) {\r\n return response.json();\r\n }\r\n if (/text\\/html/.test(contentType)) {\r\n return response.text();\r\n }\r\n }\r\n return response;\r\n })\r\n .then((data) => {\r\n if (Object.prototype.toString.call(data) === '[object Blob]') {\r\n if (\r\n typeof data === 'object' &&\r\n Object.hasOwnProperty.call(data, 'resultCode') &&\r\n String(data.resultCode) !== '0'\r\n ) {\r\n return Promise.reject(data);\r\n }\r\n return data;\r\n }\r\n if (Array.isArray(data)) return data;\r\n if (String(data?.resultCode) === '0') {\r\n resolve(data?.resultObject);\r\n }\r\n return data;\r\n })\r\n .catch((err) => {\r\n rejects(err);\r\n });\r\n });\r\n};\r\n\r\nlet baseUrl = `${process.env.REACT_APP_REQ_PREFIX}/bote`;\r\nconst getUrl = (url: string, params: any = {}) => {\r\n let paramsArr = '';\r\n if (params && Object.keys(params).length > 0) {\r\n paramsArr = Object.keys(params)\r\n .map((item) => `${item}=${params[item]}`)\r\n .join('&');\r\n }\r\n return `${baseUrl}${url}${paramsArr ? `?${paramsArr}` : ''}`;\r\n};\r\n\r\n// 当前租户ID\r\nlet currentTenantId = '';\r\n\r\n/**\r\n * 构造管理平台或机器人工程的完整访问地址\r\n * @param url 环境变量中配置的地址\r\n */\r\nexport const getAccessUrl = (url: string | undefined) => {\r\n // 未配置,表示使用当前工程地址,去掉 hash 部分\r\n if (!url) {\r\n const location = getLocation();\r\n if (location) {\r\n return new URL('', location.href).toString();\r\n }\r\n return null;\r\n }\r\n // 一串数字表示是端口号,与当前工程使用相同的 hostname 以兼容使用不同 IP (回环地址、内网 IP)访问的情况\r\n if (/^\\d+$/.test(url)) {\r\n const location = getLocation();\r\n if (location) {\r\n return `http://${location.hostname}:${url}/`;\r\n }\r\n return `http://localhost:${url}/`;\r\n }\r\n const location = getLocation();\r\n if (location) {\r\n return new URL(url, location.href).toString();\r\n }\r\n return url;\r\n};\r\n\r\n// 管理平台访问地址\r\nconst managerUrl = getAccessUrl(process.env.BOTE_MANAGER_URL);\r\n// 机器人工程访问地址\r\nconst botUrl = getAccessUrl(process.env.BOTE_BOT_URL);\r\n\r\n/**\r\n * 获取管理平台地址\r\n *\r\n * @param route 路由(\"#\" 后面的部分),可选\r\n */\r\nconst getManagerUrl = (route?: string | null) => route ? `${managerUrl}#${route}` : managerUrl;\r\n\r\n/**\r\n * 获取机器人工程访问地址\r\n *\r\n * @param route 路由(\"#\" 后面的部分),可选\r\n */\r\nconst getBotUrl = (route?: string | null) => route ? `${botUrl}#${route}` : botUrl;\r\n\r\nconst request = {\r\n getBaseUrl: () => baseUrl,\r\n setUrlPrefix: (prefix: string) => {\r\n baseUrl = `${prefix}${baseUrl}`;\r\n },\r\n setTenantId: (tenantId: string) => {\r\n currentTenantId = tenantId;\r\n },\r\n getManagerUrl,\r\n getBotUrl,\r\n // 获取智能应用图标地址\r\n getBotIconUrl: (tenantId?: string, botId?: string, updatedTime?: string, isSecurity = true) => {\r\n if (tenantId && botId) {\r\n let url = `${baseUrl}/manager/bot/botIcon?tenantId=${tenantId}&botId=${botId}`;\r\n // 管理平台构造图标链接时加上更新时间参数,可以确保修改图标后浏览器能立即请求新图标\r\n // 浏览器的缓存策略有些激进,不刷新页面不会重新请求图片(单页应用很少会刷新页面),即使后端返回了 Cache-Control: no-cache\r\n if (updatedTime) {\r\n url += `&_=${updatedTime.replace(/\\D/g, '')}`;\r\n }\r\n if (isSecurity) {\r\n url = security.autoSecurityWithUrl(url);\r\n }\r\n return url;\r\n }\r\n return undefined;\r\n },\r\n // 获取智能体图标地址\r\n getSceneIconUrl: (\r\n tenantId?: string,\r\n sceneId?: string,\r\n updatedTime?: string,\r\n isSecurity = true,\r\n ) => {\r\n if (tenantId && sceneId) {\r\n let url = `${baseUrl}/manager/scene/sceneIcon?tenantId=${tenantId}&sceneId=${sceneId}`;\r\n if (updatedTime) {\r\n url += `&_=${updatedTime.replace(/\\D/g, '')}`;\r\n }\r\n if (isSecurity) {\r\n url = security.autoSecurityWithUrl(url);\r\n }\r\n return url;\r\n }\r\n return undefined;\r\n },\r\n // 获取机器人配置图标\r\n getBotPageSettingIcon: ({\r\n botId,\r\n tenantId,\r\n type,\r\n updatedTime,\r\n isSecurity = true,\r\n }: {\r\n botId: string,\r\n tenantId?: string,\r\n type: 'welcomeBannerlg' | 'welcomeBannerxs' | 'welcomeIcon',\r\n updatedTime?: string,\r\n isSecurity?: boolean,\r\n }) => {\r\n let url = `${baseUrl}/manager/bot/getPageSettingIconByType?tenantId=${tenantId}&botId=${botId}&type=${type}`;\r\n if (updatedTime) {\r\n url += `&_=${updatedTime.replace(/\\D/g, '')}`;\r\n }\r\n if (isSecurity) {\r\n url = security.autoSecurityWithUrl(url);\r\n }\r\n return url;\r\n },\r\n // 构造 DocChain 相关地址的辅助方法\r\n docChain: {\r\n referenceDocUrl: ({\r\n tenantId,\r\n docId,\r\n token,\r\n }: {\r\n [key: string]: string;\r\n }) => {\r\n let url = `${managerUrl}#/referencesDetail?tenantId=${tenantId}&docId=${docId}`;\r\n if (token) {\r\n url += `&token=${token}`;\r\n }\r\n return url;\r\n },\r\n referenceDocChunkUrl: ({\r\n tenantId,\r\n docId,\r\n chunkId,\r\n token,\r\n score,\r\n rank,\r\n docType,\r\n }: {\r\n [key: string]: string;\r\n }) => {\r\n let url = `${managerUrl}#/documentChunk?tenantId=${tenantId}&docId=${docId}&chunkId=${chunkId}&score=${score}&rank=${rank}&docType=${docType}`;\r\n if (token) {\r\n url += `&token=${token}`;\r\n }\r\n return url;\r\n },\r\n // 下载文档接口地址\r\n downloadDocUrl: ({\r\n tenantId,\r\n docId,\r\n token,\r\n isSecurity = true,\r\n }: {\r\n [key: string]: string | boolean;\r\n }) => {\r\n let url = `${baseUrl}/docchain/v1/doc/read?tenantId=${tenantId}&read_format=src&doc_id=${docId}`;\r\n if (token) {\r\n url += `&token=${token}`;\r\n }\r\n if (isSecurity) {\r\n url = security.autoSecurityWithUrl(url);\r\n }\r\n return url;\r\n },\r\n // 图片地址\r\n imageUrl: ({\r\n tenantId,\r\n docId,\r\n token,\r\n path,\r\n isSecurity = true,\r\n }: {\r\n [key: string]: string | boolean;\r\n }) => {\r\n let url = `${baseUrl}/docchain/v1/doc/read?tenantId=${tenantId}&read_format=path&doc_id=${docId}&path=${encodeURIComponent(\r\n path,\r\n )}`;\r\n if (token) {\r\n url += `&token=${token}`;\r\n }\r\n if (isSecurity) {\r\n url = security.autoSecurityWithUrl(url);\r\n }\r\n return url;\r\n },\r\n },\r\n // 构造 tenantKnowledge 相关地址的辅助方法\r\n tenantKnowledge: {\r\n referenceDocUrl: ({\r\n tenantId,\r\n docId,\r\n token,\r\n knowledgeType,\r\n docName,\r\n }: {\r\n [key: string]: string;\r\n }) => {\r\n let url = `${managerUrl}#/referencesDetail?tenantId=${tenantId}&docId=${docId}&knowledgeType=${knowledgeType}&casPortal=true&docName=${docName}`;\r\n if (token) {\r\n url += `&token=${token}`;\r\n }\r\n return url;\r\n },\r\n // 下载文档接口地址\r\n downloadDocUrl: ({ knowledgeType, docId }: { [key: string]: string }) => {\r\n const url = `${baseUrl}/knowledge/access/downloadKnowledgeDoc?knowledgeType=${knowledgeType}&docId=${docId}`;\r\n\r\n return url;\r\n },\r\n },\r\n get: (url: string, cfg: any) => {\r\n const { params, ...rest }: any = cfg || {};\r\n // 拼租户ID 到参数中\r\n if (!params.tenantId && currentTenantId) {\r\n params.tenantId = currentTenantId;\r\n }\r\n\r\n const _url = getUrl(url, params);\r\n return http(_url, {\r\n method: 'GET',\r\n headers: {},\r\n ...rest,\r\n });\r\n },\r\n post: (url: string, cfg: any) => {\r\n const { data, params, ...rest }: any = cfg || {};\r\n let _body;\r\n\r\n if (data instanceof FormData) {\r\n // 拼租户ID 到参数中\r\n if (!data.get('tenantId') && currentTenantId) {\r\n data.append('tenantId', currentTenantId);\r\n }\r\n\r\n _body = data;\r\n } else {\r\n // 拼租户ID 到参数中\r\n if (!data.tenantId && currentTenantId) {\r\n data.tenantId = currentTenantId;\r\n }\r\n\r\n _body = JSON.stringify(data || {});\r\n }\r\n\r\n const _url = getUrl(url, params);\r\n return http(_url, {\r\n body: _body,\r\n method: 'POST',\r\n headers: {},\r\n ...rest,\r\n });\r\n },\r\n};\r\n\r\nexport { request };\r\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["// import CookieUtil from './CookieUtils';\r\nimport security from '@lingxiteam/security';\r\nimport { getLocation } from './environment';\r\n\r\nexport const tenantIdSessionKey: string = 'botSelectedTenantID';\r\n\r\nconst http = (url: string, config: any) => {\r\n // const token = localStorage.getItem('X-Auth-Token');\r\n // config.headers['X-Auth-Token'] = token;\r\n config.headers['content-type'] = 'application/json;charset=UTF-8';\r\n\r\n // 获取 token\r\n const token = sessionStorage.getItem('token') as string;\r\n if (token) {\r\n config.headers.Authorization = `Bearer ${token}`;\r\n }\r\n\r\n // 兼容生产环境\r\n config.headers['Tenant-Id'] = currentTenantId;\r\n\r\n return new Promise((resolve, rejects) => {\r\n fetch(url, config)\r\n .then((response) => {\r\n const contentType: string | null = response.headers.get('content-type');\r\n if (contentType) {\r\n if (\r\n /application\\/octet-stream/.test(contentType) ||\r\n /application\\/zip/.test(contentType) ||\r\n /application\\/vnd\\.ms-excel/.test(contentType)\r\n ) {\r\n return response.blob();\r\n }\r\n if (/application\\/json/.test(contentType)) {\r\n return response.json();\r\n }\r\n if (/text\\/html/.test(contentType)) {\r\n return response.text();\r\n }\r\n }\r\n return response;\r\n })\r\n .then((data) => {\r\n if (Object.prototype.toString.call(data) === '[object Blob]') {\r\n if (\r\n typeof data === 'object' &&\r\n Object.hasOwnProperty.call(data, 'resultCode') &&\r\n String(data.resultCode) !== '0'\r\n ) {\r\n return Promise.reject(data);\r\n }\r\n return data;\r\n }\r\n if (Array.isArray(data)) return data;\r\n if (String(data?.resultCode) === '0') {\r\n resolve(data?.resultObject);\r\n }\r\n return data;\r\n })\r\n .catch((err) => {\r\n rejects(err);\r\n });\r\n });\r\n};\r\n\r\nlet baseUrl = `${process.env.REACT_APP_REQ_PREFIX}/bote`;\r\nconst getUrl = (url: string, params: any = {}) => {\r\n let paramsArr = '';\r\n if (params && Object.keys(params).length > 0) {\r\n paramsArr = Object.keys(params)\r\n .map((item) => `${item}=${params[item]}`)\r\n .join('&');\r\n }\r\n return `${baseUrl}${url}${paramsArr ? `?${paramsArr}` : ''}`;\r\n};\r\n\r\n// 当前租户ID\r\nlet currentTenantId = '';\r\n\r\n/**\r\n * 构造管理平台或机器人工程的完整访问地址\r\n * @param url 环境变量中配置的地址\r\n */\r\nexport const getAccessUrl = (url: string | undefined) => {\r\n // 未配置,表示使用当前工程地址,去掉 hash 部分\r\n if (!url) {\r\n const location = getLocation();\r\n if (location) {\r\n return new URL('', location.href).toString();\r\n }\r\n return null;\r\n }\r\n // 一串数字表示是端口号,与当前工程使用相同的 hostname 以兼容使用不同 IP (回环地址、内网 IP)访问的情况\r\n if (/^\\d+$/.test(url)) {\r\n const location = getLocation();\r\n if (location) {\r\n return `http://${location.hostname}:${url}/`;\r\n }\r\n return `http://localhost:${url}/`;\r\n }\r\n const location = getLocation();\r\n if (location) {\r\n return new URL(url, location.href).toString();\r\n }\r\n return url;\r\n};\r\n\r\n// 管理平台访问地址\r\nconst managerUrl = getAccessUrl(process.env.BOTE_MANAGER_URL);\r\n// 机器人工程访问地址\r\nconst botUrl = getAccessUrl(process.env.BOTE_BOT_URL);\r\n\r\n/**\r\n * 获取管理平台地址\r\n *\r\n * @param route 路由(\"#\" 后面的部分),可选\r\n */\r\nconst getManagerUrl = (route?: string | null) => route ? `${managerUrl}#${route}` : managerUrl;\r\n\r\n/**\r\n * 获取机器人工程访问地址\r\n *\r\n * @param route 路由(\"#\" 后面的部分),可选\r\n */\r\nconst getBotUrl = (route?: string | null) => route ? `${botUrl}#${route}` : botUrl;\r\n\r\nconst request = {\r\n getBaseUrl: () => baseUrl,\r\n setUrlPrefix: (prefix: string) => {\r\n baseUrl = `${prefix}${baseUrl}`;\r\n },\r\n setTenantId: (tenantId: string) => {\r\n currentTenantId = tenantId;\r\n },\r\n getManagerUrl,\r\n getBotUrl,\r\n // 获取智能应用图标地址\r\n getBotIconUrl: (tenantId?: string, botId?: string, updatedTime?: string, isSecurity = true) => {\r\n if (tenantId && botId) {\r\n let url = `${baseUrl}/manager/bot/botIcon?tenantId=${tenantId}&botId=${botId}`;\r\n // 管理平台构造图标链接时加上更新时间参数,可以确保修改图标后浏览器能立即请求新图标\r\n // 浏览器的缓存策略有些激进,不刷新页面不会重新请求图片(单页应用很少会刷新页面),即使后端返回了 Cache-Control: no-cache\r\n if (updatedTime) {\r\n url += `&_=${updatedTime.replace(/\\D/g, '')}`;\r\n }\r\n if (isSecurity) {\r\n url = security.autoSecurityWithUrl(url);\r\n }\r\n return url;\r\n }\r\n return undefined;\r\n },\r\n // 获取智能体图标地址\r\n getSceneIconUrl: (\r\n tenantId?: string,\r\n sceneId?: string,\r\n updatedTime?: string,\r\n isSecurity = true,\r\n ) => {\r\n if (tenantId && sceneId) {\r\n let url = `${baseUrl}/manager/scene/sceneIcon?tenantId=${tenantId}&sceneId=${sceneId}`;\r\n if (updatedTime) {\r\n url += `&_=${updatedTime.replace(/\\D/g, '')}`;\r\n }\r\n if (isSecurity) {\r\n url = security.autoSecurityWithUrl(url);\r\n }\r\n return url;\r\n }\r\n return undefined;\r\n },\r\n // 获取机器人配置图标\r\n getBotPageSettingIcon: ({\r\n botId,\r\n tenantId,\r\n type,\r\n updatedTime,\r\n isSecurity = true,\r\n }: {\r\n botId: string,\r\n tenantId?: string,\r\n type: 'welcomeBannerlg' | 'welcomeBannerxs' | 'welcomeIcon',\r\n updatedTime?: string,\r\n isSecurity?: boolean,\r\n }) => {\r\n let url = `${baseUrl}/manager/bot/getPageSettingIconByType?tenantId=${tenantId}&botId=${botId}&type=${type}`;\r\n if (updatedTime) {\r\n url += `&_=${updatedTime.replace(/\\D/g, '')}`;\r\n }\r\n if (isSecurity) {\r\n url = security.autoSecurityWithUrl(url);\r\n }\r\n return url;\r\n },\r\n // 构造 DocChain 相关地址的辅助方法\r\n docChain: {\r\n referenceDocUrl: ({\r\n tenantId,\r\n docId,\r\n token,\r\n }: {\r\n [key: string]: string;\r\n }) => {\r\n let url = `${managerUrl}#/referencesDetail?tenantId=${tenantId}&docId=${docId}`;\r\n if (token) {\r\n url += `&token=${token}`;\r\n }\r\n return url;\r\n },\r\n referenceDocChunkUrl: ({\r\n tenantId,\r\n docId,\r\n chunkId,\r\n token,\r\n score,\r\n rank,\r\n docType,\r\n botId,\r\n }: {\r\n [key: string]: string;\r\n }) => {\r\n let url = `${managerUrl}#/documentChunk?tenantId=${tenantId}&docId=${docId}&chunkId=${chunkId}&score=${score}&rank=${rank}&docType=${docType}`;\r\n if (botId) {\r\n url += `&botId=${botId}`;\r\n }\r\n if (token) {\r\n url += `&token=${token}`;\r\n }\r\n return url;\r\n },\r\n // 下载文档接口地址\r\n downloadDocUrl: ({\r\n tenantId,\r\n docId,\r\n token,\r\n isSecurity = true,\r\n }: {\r\n [key: string]: string | boolean;\r\n }) => {\r\n let url = `${baseUrl}/docchain/v1/doc/read?tenantId=${tenantId}&read_format=src&doc_id=${docId}`;\r\n if (token) {\r\n url += `&token=${token}`;\r\n }\r\n if (isSecurity) {\r\n url = security.autoSecurityWithUrl(url);\r\n }\r\n return url;\r\n },\r\n // 图片地址\r\n imageUrl: ({\r\n tenantId,\r\n docId,\r\n token,\r\n path,\r\n isSecurity = true,\r\n }: {\r\n [key: string]: string | boolean;\r\n }) => {\r\n let url = `${baseUrl}/docchain/v1/doc/read?tenantId=${tenantId}&read_format=path&doc_id=${docId}&path=${encodeURIComponent(\r\n path,\r\n )}`;\r\n if (token) {\r\n url += `&token=${token}`;\r\n }\r\n if (isSecurity) {\r\n url = security.autoSecurityWithUrl(url);\r\n }\r\n return url;\r\n },\r\n },\r\n // 构造 tenantKnowledge 相关地址的辅助方法\r\n tenantKnowledge: {\r\n referenceDocUrl: ({\r\n tenantId,\r\n docId,\r\n token,\r\n knowledgeType,\r\n docName,\r\n }: {\r\n [key: string]: string;\r\n }) => {\r\n let url = `${managerUrl}#/referencesDetail?tenantId=${tenantId}&docId=${docId}&knowledgeType=${knowledgeType}&casPortal=true&docName=${docName}`;\r\n if (token) {\r\n url += `&token=${token}`;\r\n }\r\n return url;\r\n },\r\n // 下载文档接口地址\r\n downloadDocUrl: ({ knowledgeType, docId }: { [key: string]: string }) => {\r\n const url = `${baseUrl}/knowledge/access/downloadKnowledgeDoc?knowledgeType=${knowledgeType}&docId=${docId}`;\r\n\r\n return url;\r\n },\r\n },\r\n get: (url: string, cfg: any) => {\r\n const { params, ...rest }: any = cfg || {};\r\n // 拼租户ID 到参数中\r\n if (!params.tenantId && currentTenantId) {\r\n params.tenantId = currentTenantId;\r\n }\r\n\r\n const _url = getUrl(url, params);\r\n return http(_url, {\r\n method: 'GET',\r\n headers: {},\r\n ...rest,\r\n });\r\n },\r\n post: (url: string, cfg: any) => {\r\n const { data, params, ...rest }: any = cfg || {};\r\n let _body;\r\n\r\n if (data instanceof FormData) {\r\n // 拼租户ID 到参数中\r\n if (!data.get('tenantId') && currentTenantId) {\r\n data.append('tenantId', currentTenantId);\r\n }\r\n\r\n _body = data;\r\n } else {\r\n // 拼租户ID 到参数中\r\n if (!data.tenantId && currentTenantId) {\r\n data.tenantId = currentTenantId;\r\n }\r\n\r\n _body = JSON.stringify(data || {});\r\n }\r\n\r\n const _url = getUrl(url, params);\r\n return http(_url, {\r\n body: _body,\r\n method: 'POST',\r\n headers: {},\r\n ...rest,\r\n });\r\n },\r\n};\r\n\r\nexport { request };\r\n"],
5
+ "mappings": "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",
6
6
  "names": ["location", "security"]
7
7
  }
@@ -8,9 +8,10 @@ import formatModuleData from './formatModule/formatModuleData';
8
8
  import { patternTransitionRegExp, stringPramarsValTransition, stringScriptExecution } from './formatModule/helpers';
9
9
  import loopPageStaticCodeMap from './loopPageStaticCodeMap';
10
10
  import scriptExecution, { type scriptExecutionType } from './scriptExecution';
11
- import { getFileUrlById, getRemoteComponentUrlByCode, getRemoteComponentUrlById } from './file';
11
+ import { getFileUrlById, getFileUrlByFileInfoId, getRemoteComponentUrlByCode, getRemoteComponentUrlById } from './file';
12
12
  import { isValidUrl, sanitizeRedirectUrl, safeRedirect, sanitizeEventHandler } from './securityUtils';
13
13
  import { isReactNative, isWeb, isNode, getEnvironment, getWindow, getDocument, getLocation, isMobile } from './environment';
14
+ import watchMatchMedia, { type pageSizeType } from './watchMatchMedia';
14
15
  import { request, tenantIdSessionKey } from './http';
15
- export type { fileToBase64Type, asyncLocalStorageType, asyncSessionStorageType, scriptExecutionType, };
16
- export { fileToBase64, CookieUtils, argsToString, argsToObject, getSearchObj, asyncLocalStorage, asyncSessionStorage, camelToSnake, underscoreToCamelCase, generateRandom18Int, formatModuleData, patternTransitionRegExp, stringPramarsValTransition, loopPageStaticCodeMap, getDataArr, replaceParamsValue, replaceParamsValueForEvent, getParamsContentByParamKeys, getFileUrlById, getRemoteComponentUrlByCode, getRemoteComponentUrlById, stringScriptExecution, scriptExecution, isValidUrl, sanitizeRedirectUrl, safeRedirect, sanitizeEventHandler, isReactNative, isWeb, isNode, getEnvironment, getWindow, getDocument, getLocation, isMobile, request, tenantIdSessionKey, };
16
+ export type { fileToBase64Type, asyncLocalStorageType, asyncSessionStorageType, scriptExecutionType, pageSizeType, };
17
+ export { fileToBase64, CookieUtils, argsToString, argsToObject, getSearchObj, asyncLocalStorage, asyncSessionStorage, camelToSnake, underscoreToCamelCase, generateRandom18Int, formatModuleData, patternTransitionRegExp, stringPramarsValTransition, loopPageStaticCodeMap, getDataArr, replaceParamsValue, replaceParamsValueForEvent, getParamsContentByParamKeys, getFileUrlById, getFileUrlByFileInfoId, getRemoteComponentUrlByCode, getRemoteComponentUrlById, stringScriptExecution, scriptExecution, isValidUrl, sanitizeRedirectUrl, safeRedirect, sanitizeEventHandler, isReactNative, isWeb, isNode, getEnvironment, getWindow, getDocument, getLocation, isMobile, watchMatchMedia, request, tenantIdSessionKey, };
package/dist/cjs/index.js CHANGED
@@ -41,6 +41,7 @@ __export(src_exports, {
41
41
  getDataArr: () => import_treeUtils.getDataArr,
42
42
  getDocument: () => import_environment.getDocument,
43
43
  getEnvironment: () => import_environment.getEnvironment,
44
+ getFileUrlByFileInfoId: () => import_file.getFileUrlByFileInfoId,
44
45
  getFileUrlById: () => import_file.getFileUrlById,
45
46
  getLocation: () => import_environment.getLocation,
46
47
  getParamsContentByParamKeys: () => import_treeUtils.getParamsContentByParamKeys,
@@ -65,7 +66,8 @@ __export(src_exports, {
65
66
  stringPramarsValTransition: () => import_helpers.stringPramarsValTransition,
66
67
  stringScriptExecution: () => import_helpers.stringScriptExecution,
67
68
  tenantIdSessionKey: () => import_http.tenantIdSessionKey,
68
- underscoreToCamelCase: () => import_stringUtils.underscoreToCamelCase
69
+ underscoreToCamelCase: () => import_stringUtils.underscoreToCamelCase,
70
+ watchMatchMedia: () => import_watchMatchMedia.default
69
71
  });
70
72
  module.exports = __toCommonJS(src_exports);
71
73
  var import_fileToBase64 = __toESM(require("./fileToBase64"));
@@ -81,6 +83,7 @@ var import_scriptExecution = __toESM(require("./scriptExecution"));
81
83
  var import_file = require("./file");
82
84
  var import_securityUtils = require("./securityUtils");
83
85
  var import_environment = require("./environment");
86
+ var import_watchMatchMedia = __toESM(require("./watchMatchMedia"));
84
87
  var import_http = require("./http");
85
88
  var _ = require("lodash");
86
89
  _.noConflict();
@@ -98,6 +101,7 @@ _.noConflict();
98
101
  getDataArr,
99
102
  getDocument,
100
103
  getEnvironment,
104
+ getFileUrlByFileInfoId,
101
105
  getFileUrlById,
102
106
  getLocation,
103
107
  getParamsContentByParamKeys,
@@ -122,6 +126,7 @@ _.noConflict();
122
126
  stringPramarsValTransition,
123
127
  stringScriptExecution,
124
128
  tenantIdSessionKey,
125
- underscoreToCamelCase
129
+ underscoreToCamelCase,
130
+ watchMatchMedia
126
131
  });
127
132
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
- "sourcesContent": ["import fileToBase64, { type fileToBase64Type } from './fileToBase64';\r\nimport CookieUtils from './CookieUtils';\r\nimport { argsToString, argsToObject, getSearchObj } from './pathArgsUtils';\r\nimport {\r\n asyncLocalStorage,\r\n asyncSessionStorage,\r\n type asyncLocalStorageType,\r\n type asyncSessionStorageType,\r\n} from './asyncStorage';\r\nimport {\r\n camelToSnake,\r\n underscoreToCamelCase,\r\n generateRandom18Int,\r\n} from './stringUtils';\r\nimport {\r\n getDataArr,\r\n replaceParamsValue,\r\n getParamsContentByParamKeys,\r\n replaceParamsValueForEvent,\r\n} from './treeUtils';\r\nimport formatModuleData from './formatModule/formatModuleData';\r\nimport {\r\n patternTransitionRegExp,\r\n stringPramarsValTransition,\r\n stringScriptExecution,\r\n} from './formatModule/helpers';\r\nimport loopPageStaticCodeMap from './loopPageStaticCodeMap';\r\nimport scriptExecution, { type scriptExecutionType } from './scriptExecution';\r\nimport {\r\n getFileUrlById,\r\n getRemoteComponentUrlByCode,\r\n getRemoteComponentUrlById,\r\n} from './file';\r\nimport {\r\n isValidUrl,\r\n sanitizeRedirectUrl,\r\n safeRedirect,\r\n sanitizeEventHandler,\r\n} from './securityUtils';\r\nimport {\r\n isReactNative,\r\n isWeb,\r\n isNode,\r\n getEnvironment,\r\n getWindow,\r\n getDocument,\r\n getLocation,\r\n isMobile,\r\n} from './environment';\r\n\r\nimport { request, tenantIdSessionKey } from './http';\r\n\r\n// 避免 _对象 和其他库冲突\r\nconst _ = require('lodash');\r\n\r\n_.noConflict();\r\n\r\nexport type {\r\n fileToBase64Type,\r\n asyncLocalStorageType,\r\n asyncSessionStorageType,\r\n scriptExecutionType,\r\n};\r\n\r\nexport {\r\n fileToBase64,\r\n CookieUtils,\r\n argsToString,\r\n argsToObject,\r\n getSearchObj,\r\n asyncLocalStorage,\r\n asyncSessionStorage,\r\n camelToSnake,\r\n underscoreToCamelCase,\r\n generateRandom18Int,\r\n formatModuleData,\r\n patternTransitionRegExp,\r\n stringPramarsValTransition,\r\n loopPageStaticCodeMap,\r\n getDataArr,\r\n replaceParamsValue,\r\n replaceParamsValueForEvent,\r\n getParamsContentByParamKeys,\r\n getFileUrlById,\r\n getRemoteComponentUrlByCode,\r\n getRemoteComponentUrlById,\r\n stringScriptExecution,\r\n scriptExecution,\r\n isValidUrl,\r\n sanitizeRedirectUrl,\r\n safeRedirect,\r\n sanitizeEventHandler,\r\n isReactNative,\r\n isWeb,\r\n isNode,\r\n getEnvironment,\r\n getWindow,\r\n getDocument,\r\n getLocation,\r\n isMobile,\r\n request,\r\n tenantIdSessionKey,\r\n};\r\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,wCAAAA;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0CAAAC;AAAA,EAAA,gDAAAC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4DAAAC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gDAAAC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAAoD;AACpD,yBAAwB;AACxB,2BAAyD;AACzD,0BAKO;AACP,yBAIO;AACP,uBAKO;AACP,8BAA6B;AAC7B,qBAIO;AACP,mCAAkC;AAClC,6BAA0D;AAC1D,kBAIO;AACP,2BAKO;AACP,yBASO;AAEP,kBAA4C;AAG5C,IAAM,IAAI,QAAQ,QAAQ;AAE1B,EAAE,WAAW;",
6
- "names": ["CookieUtils", "fileToBase64", "formatModuleData", "loopPageStaticCodeMap", "scriptExecution"]
4
+ "sourcesContent": ["import fileToBase64, { type fileToBase64Type } from './fileToBase64';\r\nimport CookieUtils from './CookieUtils';\r\nimport { argsToString, argsToObject, getSearchObj } from './pathArgsUtils';\r\nimport {\r\n asyncLocalStorage,\r\n asyncSessionStorage,\r\n type asyncLocalStorageType,\r\n type asyncSessionStorageType,\r\n} from './asyncStorage';\r\nimport {\r\n camelToSnake,\r\n underscoreToCamelCase,\r\n generateRandom18Int,\r\n} from './stringUtils';\r\nimport {\r\n getDataArr,\r\n replaceParamsValue,\r\n getParamsContentByParamKeys,\r\n replaceParamsValueForEvent,\r\n} from './treeUtils';\r\nimport formatModuleData from './formatModule/formatModuleData';\r\nimport {\r\n patternTransitionRegExp,\r\n stringPramarsValTransition,\r\n stringScriptExecution,\r\n} from './formatModule/helpers';\r\nimport loopPageStaticCodeMap from './loopPageStaticCodeMap';\r\nimport scriptExecution, { type scriptExecutionType } from './scriptExecution';\r\nimport {\r\n getFileUrlById,\r\n getFileUrlByFileInfoId,\r\n getRemoteComponentUrlByCode,\r\n getRemoteComponentUrlById,\r\n} from './file';\r\nimport {\r\n isValidUrl,\r\n sanitizeRedirectUrl,\r\n safeRedirect,\r\n sanitizeEventHandler,\r\n} from './securityUtils';\r\nimport {\r\n isReactNative,\r\n isWeb,\r\n isNode,\r\n getEnvironment,\r\n getWindow,\r\n getDocument,\r\n getLocation,\r\n isMobile,\r\n} from './environment';\r\n\r\nimport watchMatchMedia, { type pageSizeType } from './watchMatchMedia';\r\n\r\nimport { request, tenantIdSessionKey } from './http';\r\n\r\n// 避免 _对象 和其他库冲突\r\nconst _ = require('lodash');\r\n\r\n_.noConflict();\r\n\r\nexport type {\r\n fileToBase64Type,\r\n asyncLocalStorageType,\r\n asyncSessionStorageType,\r\n scriptExecutionType,\r\n pageSizeType,\r\n};\r\n\r\nexport {\r\n fileToBase64,\r\n CookieUtils,\r\n argsToString,\r\n argsToObject,\r\n getSearchObj,\r\n asyncLocalStorage,\r\n asyncSessionStorage,\r\n camelToSnake,\r\n underscoreToCamelCase,\r\n generateRandom18Int,\r\n formatModuleData,\r\n patternTransitionRegExp,\r\n stringPramarsValTransition,\r\n loopPageStaticCodeMap,\r\n getDataArr,\r\n replaceParamsValue,\r\n replaceParamsValueForEvent,\r\n getParamsContentByParamKeys,\r\n getFileUrlById,\r\n getFileUrlByFileInfoId,\r\n getRemoteComponentUrlByCode,\r\n getRemoteComponentUrlById,\r\n stringScriptExecution,\r\n scriptExecution,\r\n isValidUrl,\r\n sanitizeRedirectUrl,\r\n safeRedirect,\r\n sanitizeEventHandler,\r\n isReactNative,\r\n isWeb,\r\n isNode,\r\n getEnvironment,\r\n getWindow,\r\n getDocument,\r\n getLocation,\r\n isMobile,\r\n watchMatchMedia,\r\n request,\r\n tenantIdSessionKey,\r\n};\r\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA,wCAAAA;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0CAAAC;AAAA,EAAA,gDAAAC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4DAAAC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gDAAAC;AAAA,EAAA;AAAA;AAAA;AAAA;AAAA,gDAAAC;AAAA;AAAA;AAAA,0BAAoD;AACpD,yBAAwB;AACxB,2BAAyD;AACzD,0BAKO;AACP,yBAIO;AACP,uBAKO;AACP,8BAA6B;AAC7B,qBAIO;AACP,mCAAkC;AAClC,6BAA0D;AAC1D,kBAKO;AACP,2BAKO;AACP,yBASO;AAEP,6BAAmD;AAEnD,kBAA4C;AAG5C,IAAM,IAAI,QAAQ,QAAQ;AAE1B,EAAE,WAAW;",
6
+ "names": ["CookieUtils", "fileToBase64", "formatModuleData", "loopPageStaticCodeMap", "scriptExecution", "watchMatchMedia"]
7
7
  }
@@ -0,0 +1,4 @@
1
+ type pageSizeType = 'default' | 'mobile' | 'mini' | 'compact' | 'middle' | 'large' | 'tablet';
2
+ declare const watchMatchMedia: () => pageSizeType;
3
+ export { type pageSizeType, };
4
+ export default watchMatchMedia;
@@ -0,0 +1,77 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // src/watchMatchMedia.ts
30
+ var watchMatchMedia_exports = {};
31
+ __export(watchMatchMedia_exports, {
32
+ default: () => watchMatchMedia_default
33
+ });
34
+ module.exports = __toCommonJS(watchMatchMedia_exports);
35
+ var import_theme = __toESM(require("@boteteam/theme/bin/default/theme.json"));
36
+ var watchMatchMedia = () => {
37
+ const mobileWidth = import_theme.default["media-mobile-width"];
38
+ const miniWidth = import_theme.default["media-mini-width"];
39
+ const tabletWidth = import_theme.default["media-tablet-width"];
40
+ const compactWidth = import_theme.default["media-compact-width"];
41
+ const middleWidth = import_theme.default["media-middle-width"];
42
+ const largeWidth = import_theme.default["media-large-width"];
43
+ const defaultMatches = { matches: false };
44
+ const { matches: mobileMatches } = mobileWidth ? window.matchMedia(`(max-width: ${mobileWidth})`) : defaultMatches;
45
+ const { matches: miniMatches } = miniWidth ? window.matchMedia(`(max-width: ${miniWidth})`) : defaultMatches;
46
+ const { matches: tabletMatches } = tabletWidth ? window.matchMedia(`(max-width: ${tabletWidth})`) : defaultMatches;
47
+ const { matches: compactMatches } = compactWidth ? window.matchMedia(`(max-width: ${compactWidth})`) : defaultMatches;
48
+ const { matches: middleMatches } = middleWidth ? window.matchMedia(`(max-width: ${middleWidth})`) : defaultMatches;
49
+ const { matches: largeMatches } = largeWidth ? window.matchMedia(`(min-width: ${largeWidth})`) : defaultMatches;
50
+ let pageSize = "default";
51
+ switch (true) {
52
+ case largeMatches:
53
+ pageSize = "large";
54
+ break;
55
+ case mobileMatches:
56
+ pageSize = "mobile";
57
+ break;
58
+ case miniMatches:
59
+ pageSize = "mini";
60
+ break;
61
+ case tabletMatches:
62
+ pageSize = "tablet";
63
+ break;
64
+ case compactMatches:
65
+ pageSize = "compact";
66
+ break;
67
+ case middleMatches:
68
+ pageSize = "middle";
69
+ break;
70
+ default:
71
+ pageSize = "default";
72
+ break;
73
+ }
74
+ return pageSize;
75
+ };
76
+ var watchMatchMedia_default = watchMatchMedia;
77
+ //# sourceMappingURL=watchMatchMedia.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/watchMatchMedia.ts"],
4
+ "sourcesContent": ["import theme from '@boteteam/theme/bin/default/theme.json';\r\n\r\ntype pageSizeType = 'default' | 'mobile' | 'mini' | 'compact' | 'middle' | 'large' | 'tablet';\r\n\r\nconst watchMatchMedia = () => {\r\n const mobileWidth = theme['media-mobile-width'];\r\n const miniWidth = theme['media-mini-width'];\r\n const tabletWidth = theme['media-tablet-width'];\r\n const compactWidth = theme['media-compact-width'];\r\n const middleWidth = theme['media-middle-width'];\r\n const largeWidth = theme['media-large-width'];\r\n const defaultMatches = { matches: false };\r\n const { matches: mobileMatches } = mobileWidth ? window.matchMedia(`(max-width: ${mobileWidth})`) : defaultMatches; // 移动端: 小于等于移动端尺寸才适配\r\n const { matches: miniMatches } = miniWidth ? window.matchMedia(`(max-width: ${miniWidth})`) : defaultMatches; // 迷你: 小于等于迷你尺寸才适配\r\n const { matches: tabletMatches } = tabletWidth ? window.matchMedia(`(max-width: ${tabletWidth})`) : defaultMatches; // 平板: 小于等于平板尺寸才适配\r\n const { matches: compactMatches } = compactWidth ? window.matchMedia(`(max-width: ${compactWidth})`) : defaultMatches; // 紧凑: 小于等于紧凑尺寸才适配\r\n const { matches: middleMatches } = middleWidth ? window.matchMedia(`(max-width: ${middleWidth})`) : defaultMatches; // 中: 大于紧凑尺寸,且小于等于中尺寸才适配\r\n const { matches: largeMatches } = largeWidth ? window.matchMedia(`(min-width: ${largeWidth})`) : defaultMatches; // 宽松: 大于等于宽松尺寸才适配\r\n let pageSize: pageSizeType = 'default';\r\n switch (true) {\r\n case largeMatches:\r\n pageSize = 'large';\r\n break;\r\n case mobileMatches:\r\n pageSize = 'mobile';\r\n break;\r\n case miniMatches:\r\n pageSize = 'mini';\r\n break;\r\n case tabletMatches:\r\n pageSize = 'tablet';\r\n break;\r\n case compactMatches:\r\n pageSize = 'compact';\r\n break;\r\n case middleMatches:\r\n pageSize = 'middle';\r\n break;\r\n default:\r\n pageSize = 'default';\r\n break;\r\n }\r\n return pageSize;\r\n};\r\n\r\nexport {\r\n type pageSizeType,\r\n};\r\n\r\nexport default watchMatchMedia;\r\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkB;AAIlB,IAAM,kBAAkB,MAAM;AAC5B,QAAM,cAAc,aAAAA,QAAM,oBAAoB;AAC9C,QAAM,YAAY,aAAAA,QAAM,kBAAkB;AAC1C,QAAM,cAAc,aAAAA,QAAM,oBAAoB;AAC9C,QAAM,eAAe,aAAAA,QAAM,qBAAqB;AAChD,QAAM,cAAc,aAAAA,QAAM,oBAAoB;AAC9C,QAAM,aAAa,aAAAA,QAAM,mBAAmB;AAC5C,QAAM,iBAAiB,EAAE,SAAS,MAAM;AACxC,QAAM,EAAE,SAAS,cAAc,IAAI,cAAc,OAAO,WAAW,eAAe,cAAc,IAAI;AACpG,QAAM,EAAE,SAAS,YAAY,IAAI,YAAY,OAAO,WAAW,eAAe,YAAY,IAAI;AAC9F,QAAM,EAAE,SAAS,cAAc,IAAI,cAAc,OAAO,WAAW,eAAe,cAAc,IAAI;AACpG,QAAM,EAAE,SAAS,eAAe,IAAI,eAAe,OAAO,WAAW,eAAe,eAAe,IAAI;AACvG,QAAM,EAAE,SAAS,cAAc,IAAI,cAAc,OAAO,WAAW,eAAe,cAAc,IAAI;AACpG,QAAM,EAAE,SAAS,aAAa,IAAI,aAAa,OAAO,WAAW,eAAe,aAAa,IAAI;AACjG,MAAI,WAAyB;AAC7B,UAAQ,MAAM;AAAA,IACZ,KAAK;AACH,iBAAW;AACX;AAAA,IACF,KAAK;AACH,iBAAW;AACX;AAAA,IACF,KAAK;AACH,iBAAW;AACX;AAAA,IACF,KAAK;AACH,iBAAW;AACX;AAAA,IACF,KAAK;AACH,iBAAW;AACX;AAAA,IACF,KAAK;AACH,iBAAW;AACX;AAAA,IACF;AACE,iBAAW;AACX;AAAA,EACJ;AACA,SAAO;AACT;AAMA,IAAO,0BAAQ;",
6
+ "names": ["theme"]
7
+ }
@@ -12,6 +12,20 @@ export declare const getFileUrlById: (fileId: string, { prefix, isSecurity, para
12
12
  isSecurity?: boolean | undefined;
13
13
  params?: Record<string, any> | undefined;
14
14
  }) => any;
15
+ /**
16
+ * 根据文件ID生成文件URL地址
17
+ * @param fileId 文件ID
18
+ * @param options 配置选项
19
+ * @param options.prefix 自定义请求前缀(默认使用环境变量配置)
20
+ * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签
21
+ * @param options.params 自定义参数,将添加到query参数中
22
+ * @returns 文件URL地址
23
+ */
24
+ export declare const getFileUrlByFileInfoId: (fileInfoId: string, { prefix, isSecurity, params, }?: {
25
+ prefix?: string | undefined;
26
+ isSecurity?: boolean | undefined;
27
+ params?: Record<string, any> | undefined;
28
+ }) => any;
15
29
  declare const getRemoteComponentUrl: ({ prefix, isSecurity, params, }?: {
16
30
  prefix?: string | undefined;
17
31
  isSecurity?: boolean | undefined;
package/dist/esm/file.js CHANGED
@@ -40,13 +40,47 @@ export var getFileUrlById = function getFileUrlById(fileId) {
40
40
  var url = "".concat(baseUrl, "/file/download?").concat(query);
41
41
  return isSecurity ? security.autoSecurityWithUrl(url) : url;
42
42
  };
43
- var getRemoteComponentUrl = function getRemoteComponentUrl() {
44
- var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
43
+
44
+ /**
45
+ * 根据文件ID生成文件URL地址
46
+ * @param fileId 文件ID
47
+ * @param options 配置选项
48
+ * @param options.prefix 自定义请求前缀(默认使用环境变量配置)
49
+ * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签
50
+ * @param options.params 自定义参数,将添加到query参数中
51
+ * @returns 文件URL地址
52
+ */
53
+ export var getFileUrlByFileInfoId = function getFileUrlByFileInfoId(fileInfoId) {
54
+ var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
45
55
  prefix = _ref2.prefix,
46
56
  _ref2$isSecurity = _ref2.isSecurity,
47
57
  isSecurity = _ref2$isSecurity === void 0 ? true : _ref2$isSecurity,
48
- _ref2$params = _ref2.params,
49
- params = _ref2$params === void 0 ? {} : _ref2$params;
58
+ params = _ref2.params;
59
+ var baseUrl = prefix ? prefix.replace(/\/$/, '') : DEFAULT_PREFIX;
60
+ // 如果url中存在token,则把token添加到query参数中
61
+ var _ref3 = getSearchObj() || {},
62
+ token = _ref3.token,
63
+ tenantId = _ref3.tenantId;
64
+ var queryParams = _objectSpread({
65
+ fileInfoId: fileInfoId
66
+ }, params);
67
+ if (token) {
68
+ queryParams.token = token;
69
+ }
70
+ if (tenantId) {
71
+ queryParams.tenantId = tenantId;
72
+ }
73
+ var query = argsToString(queryParams);
74
+ var url = "".concat(baseUrl, "/file/downloadByFileInfoId?").concat(query);
75
+ return isSecurity ? security.autoSecurityWithUrl(url) : url;
76
+ };
77
+ var getRemoteComponentUrl = function getRemoteComponentUrl() {
78
+ var _ref4 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
79
+ prefix = _ref4.prefix,
80
+ _ref4$isSecurity = _ref4.isSecurity,
81
+ isSecurity = _ref4$isSecurity === void 0 ? true : _ref4$isSecurity,
82
+ _ref4$params = _ref4.params,
83
+ params = _ref4$params === void 0 ? {} : _ref4$params;
50
84
  var baseUrl = prefix ? prefix.replace(/\/$/, '') : DEFAULT_PREFIX;
51
85
  var query = argsToString(params);
52
86
  var url = "".concat(baseUrl, "/manager/skill/page/getRemoteComponent?").concat(query);
@@ -1 +1 @@
1
- {"version":3,"names":["security","argsToString","getSearchObj","DEFAULT_PREFIX","concat","process","env","REACT_APP_REQ_PREFIX","getFileUrlById","fileId","_getSearchObj","_ref","arguments","length","undefined","prefix","_ref$isSecurity","isSecurity","params","baseUrl","replace","token","queryParams","_objectSpread","query","url","autoSecurityWithUrl","getRemoteComponentUrl","_ref2","_ref2$isSecurity","_ref2$params","getRemoteComponentUrlByCode","pageCode","options","botePageCode","getRemoteComponentUrlById","fileInfoId"],"sources":["../../src/file.ts"],"sourcesContent":["import security from '@lingxiteam/security';\r\nimport { argsToString, getSearchObj } from './pathArgsUtils';\r\n\r\n// 暂时放到utils中,后续考虑独立在@boteteam/service包\r\n\r\nconst DEFAULT_PREFIX = `${process.env.REACT_APP_REQ_PREFIX}/bote`;\r\n\r\n/**\r\n * 根据文件ID生成文件URL地址\r\n * @param fileId 文件ID\r\n * @param options 配置选项\r\n * @param options.prefix 自定义请求前缀(默认使用环境变量配置)\r\n * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签\r\n * @param options.params 自定义参数,将添加到query参数中\r\n * @returns 文件URL地址\r\n */\r\nexport const getFileUrlById = (\r\n fileId: string,\r\n {\r\n prefix,\r\n isSecurity = true,\r\n params,\r\n }: {\r\n prefix?: string;\r\n isSecurity?: boolean;\r\n params?: Record<string, any>;\r\n } = {},\r\n) => {\r\n const baseUrl = prefix ? prefix.replace(/\\/$/, '') : DEFAULT_PREFIX;\r\n // 如果url中存在token,则把token添加到query参数中\r\n const token = getSearchObj()?.token || '';\r\n const queryParams:{[key:string]:any} = {\r\n fileId,\r\n ...params,\r\n };\r\n if (token) {\r\n queryParams.token = token;\r\n }\r\n const query = argsToString(queryParams);\r\n const url = `${baseUrl}/file/download?${query}`;\r\n return isSecurity ? security.autoSecurityWithUrl(url) : url;\r\n};\r\n\r\nconst getRemoteComponentUrl = ({\r\n prefix,\r\n isSecurity = true,\r\n params = {},\r\n}: {\r\n prefix?: string;\r\n isSecurity?: boolean;\r\n params?: Record<string, any>;\r\n} = {}) => {\r\n const baseUrl = prefix ? prefix.replace(/\\/$/, '') : DEFAULT_PREFIX;\r\n const query = argsToString(params);\r\n const url = `${baseUrl}/manager/skill/page/getRemoteComponent?${query}`;\r\n return isSecurity ? security.autoSecurityWithUrl(url) : url;\r\n};\r\n\r\n/**\r\n * 根据页面编码生成远程组件URL地址\r\n * @param pageCode 页面编码\r\n * @param options 配置选项\r\n * @param options.prefix 自定义请求前缀(默认使用环境变量配置)\r\n * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签\r\n * @param options.params 自定义参数,将添加到query参数中\r\n * @returns 文件URL地址\r\n */\r\nexport const getRemoteComponentUrlByCode = (\r\n pageCode: string,\r\n options: Parameters<typeof getRemoteComponentUrl>[0],\r\n) => {\r\n return getRemoteComponentUrl({\r\n ...options,\r\n params: { botePageCode: pageCode, ...options?.params },\r\n });\r\n};\r\n\r\n/**\r\n * 根据文件ID生成远程组件URL地址\r\n * @param fileInfoId 文件ID\r\n * @param options 配置选项\r\n * @param options.prefix 自定义请求前缀(默认使用环境变量配置)\r\n * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签\r\n * @param options.params 自定义参数,将添加到query参数中\r\n * @returns 文件URL地址\r\n */\r\nexport const getRemoteComponentUrlById = (\r\n fileInfoId: string,\r\n options: Parameters<typeof getRemoteComponentUrl>[0],\r\n) => {\r\n return getRemoteComponentUrl({\r\n ...options,\r\n params: { fileInfoId, ...options?.params },\r\n });\r\n};\r\n"],"mappings":"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"}
1
+ {"version":3,"names":["security","argsToString","getSearchObj","DEFAULT_PREFIX","concat","process","env","REACT_APP_REQ_PREFIX","getFileUrlById","fileId","_getSearchObj","_ref","arguments","length","undefined","prefix","_ref$isSecurity","isSecurity","params","baseUrl","replace","token","queryParams","_objectSpread","query","url","autoSecurityWithUrl","getFileUrlByFileInfoId","fileInfoId","_ref2","_ref2$isSecurity","_ref3","tenantId","getRemoteComponentUrl","_ref4","_ref4$isSecurity","_ref4$params","getRemoteComponentUrlByCode","pageCode","options","botePageCode","getRemoteComponentUrlById"],"sources":["../../src/file.ts"],"sourcesContent":["import security from '@lingxiteam/security';\r\nimport { argsToString, getSearchObj } from './pathArgsUtils';\r\n\r\n// 暂时放到utils中,后续考虑独立在@boteteam/service包\r\n\r\nconst DEFAULT_PREFIX = `${process.env.REACT_APP_REQ_PREFIX}/bote`;\r\n\r\n/**\r\n * 根据文件ID生成文件URL地址\r\n * @param fileId 文件ID\r\n * @param options 配置选项\r\n * @param options.prefix 自定义请求前缀(默认使用环境变量配置)\r\n * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签\r\n * @param options.params 自定义参数,将添加到query参数中\r\n * @returns 文件URL地址\r\n */\r\nexport const getFileUrlById = (\r\n fileId: string,\r\n {\r\n prefix,\r\n isSecurity = true,\r\n params,\r\n }: {\r\n prefix?: string;\r\n isSecurity?: boolean;\r\n params?: Record<string, any>;\r\n } = {},\r\n) => {\r\n const baseUrl = prefix ? prefix.replace(/\\/$/, '') : DEFAULT_PREFIX;\r\n // 如果url中存在token,则把token添加到query参数中\r\n const token = getSearchObj()?.token || '';\r\n const queryParams:{[key:string]:any} = {\r\n fileId,\r\n ...params,\r\n };\r\n if (token) {\r\n queryParams.token = token;\r\n }\r\n const query = argsToString(queryParams);\r\n const url = `${baseUrl}/file/download?${query}`;\r\n return isSecurity ? security.autoSecurityWithUrl(url) : url;\r\n};\r\n\r\n/**\r\n * 根据文件ID生成文件URL地址\r\n * @param fileId 文件ID\r\n * @param options 配置选项\r\n * @param options.prefix 自定义请求前缀(默认使用环境变量配置)\r\n * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签\r\n * @param options.params 自定义参数,将添加到query参数中\r\n * @returns 文件URL地址\r\n */\r\nexport const getFileUrlByFileInfoId = (\r\n fileInfoId: string,\r\n {\r\n prefix,\r\n isSecurity = true,\r\n params,\r\n }: {\r\n prefix?: string;\r\n isSecurity?: boolean;\r\n params?: Record<string, any>;\r\n } = {},\r\n) => {\r\n const baseUrl = prefix ? prefix.replace(/\\/$/, '') : DEFAULT_PREFIX;\r\n // 如果url中存在token,则把token添加到query参数中\r\n const { token, tenantId } = getSearchObj() || {};\r\n const queryParams:{[key:string]:any} = {\r\n fileInfoId,\r\n ...params,\r\n };\r\n if (token) {\r\n queryParams.token = token;\r\n }\r\n if (tenantId) {\r\n queryParams.tenantId = tenantId;\r\n }\r\n const query = argsToString(queryParams);\r\n const url = `${baseUrl}/file/downloadByFileInfoId?${query}`;\r\n return isSecurity ? security.autoSecurityWithUrl(url) : url;\r\n};\r\n\r\nconst getRemoteComponentUrl = ({\r\n prefix,\r\n isSecurity = true,\r\n params = {},\r\n}: {\r\n prefix?: string;\r\n isSecurity?: boolean;\r\n params?: Record<string, any>;\r\n} = {}) => {\r\n const baseUrl = prefix ? prefix.replace(/\\/$/, '') : DEFAULT_PREFIX;\r\n const query = argsToString(params);\r\n const url = `${baseUrl}/manager/skill/page/getRemoteComponent?${query}`;\r\n return isSecurity ? security.autoSecurityWithUrl(url) : url;\r\n};\r\n\r\n/**\r\n * 根据页面编码生成远程组件URL地址\r\n * @param pageCode 页面编码\r\n * @param options 配置选项\r\n * @param options.prefix 自定义请求前缀(默认使用环境变量配置)\r\n * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签\r\n * @param options.params 自定义参数,将添加到query参数中\r\n * @returns 文件URL地址\r\n */\r\nexport const getRemoteComponentUrlByCode = (\r\n pageCode: string,\r\n options: Parameters<typeof getRemoteComponentUrl>[0],\r\n) => {\r\n return getRemoteComponentUrl({\r\n ...options,\r\n params: { botePageCode: pageCode, ...options?.params },\r\n });\r\n};\r\n\r\n/**\r\n * 根据文件ID生成远程组件URL地址\r\n * @param fileInfoId 文件ID\r\n * @param options 配置选项\r\n * @param options.prefix 自定义请求前缀(默认使用环境变量配置)\r\n * @param options.isSecurity 是否启用安全处理(默认true), 将对url地址参数加密或加签\r\n * @param options.params 自定义参数,将添加到query参数中\r\n * @returns 文件URL地址\r\n */\r\nexport const getRemoteComponentUrlById = (\r\n fileInfoId: string,\r\n options: Parameters<typeof getRemoteComponentUrl>[0],\r\n) => {\r\n return getRemoteComponentUrl({\r\n ...options,\r\n params: { fileInfoId, ...options?.params },\r\n });\r\n};\r\n"],"mappings":"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"}
@@ -23,7 +23,7 @@ declare const request: {
23
23
  referenceDocUrl: ({ tenantId, docId, token, }: {
24
24
  [key: string]: string;
25
25
  }) => string;
26
- referenceDocChunkUrl: ({ tenantId, docId, chunkId, token, score, rank, docType, }: {
26
+ referenceDocChunkUrl: ({ tenantId, docId, chunkId, token, score, rank, docType, botId, }: {
27
27
  [key: string]: string;
28
28
  }) => string;
29
29
  downloadDocUrl: ({ tenantId, docId, token, isSecurity, }: {
package/dist/esm/http.js CHANGED
@@ -202,8 +202,12 @@ var request = {
202
202
  token = _ref3.token,
203
203
  score = _ref3.score,
204
204
  rank = _ref3.rank,
205
- docType = _ref3.docType;
205
+ docType = _ref3.docType,
206
+ botId = _ref3.botId;
206
207
  var url = "".concat(managerUrl, "#/documentChunk?tenantId=").concat(tenantId, "&docId=").concat(docId, "&chunkId=").concat(chunkId, "&score=").concat(score, "&rank=").concat(rank, "&docType=").concat(docType);
208
+ if (botId) {
209
+ url += "&botId=".concat(botId);
210
+ }
207
211
  if (token) {
208
212
  url += "&token=".concat(token);
209
213
  }