@qxs-bns/utils 0.0.43 → 0.0.45
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/es/src/api-client/axios-client.mjs +1 -1
- package/es/src/api-client/axios-client.mjs.map +1 -1
- package/es/src/api-client/fetch-client.mjs +1 -1
- package/es/src/api-client/fetch-client.mjs.map +1 -1
- package/es/src/argo-log.mjs +1 -1
- package/es/src/argo-log.mjs.map +1 -1
- package/lib/src/api-client/axios-client.cjs +1 -1
- package/lib/src/api-client/axios-client.cjs.map +1 -1
- package/lib/src/api-client/fetch-client.cjs +1 -1
- package/lib/src/api-client/fetch-client.cjs.map +1 -1
- package/lib/src/argo-log.cjs +1 -1
- package/lib/src/argo-log.cjs.map +1 -1
- package/package.json +2 -2
- package/types/src/api-client/axios-client.d.ts +2 -2
- package/types/src/api-client/axios-client.d.ts.map +1 -1
- package/types/src/api-client/fetch-client.d.ts +2 -1
- package/types/src/api-client/fetch-client.d.ts.map +1 -1
- package/types/src/argo-log.d.ts +9 -2
- package/types/src/argo-log.d.ts.map +1 -1
- package/types/tsconfig.tsbuildinfo +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{isPlainObject as e}from"../types.mjs";var s=Object.defineProperty,
|
|
1
|
+
import{isPlainObject as e}from"../types.mjs";var s=Object.defineProperty,r=(e,r,t)=>((e,r,t)=>r in e?s(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t)(e,"symbol"!=typeof r?r+"":r,t);class t{constructor(e,s){var t=this;this.apiInstance=e,this.isWholeResponse=s,r(this,"useApi",async function(e,s){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t.isWholeResponse,o=null,i=null;try{const i={...e,...s?e.method&&["GET"].includes(e.method.toUpperCase())?{params:s}:{data:s}:{}};i.url=(i.proxyPrefix||"")+e.url,delete i.proxyPrefix;const n=await t.apiInstance(i),a=t.toSuccessEnvelope(n.data);o=r?a:a.data}catch(e){const s=e?.response?.data;t.isErrorResponse(s)?i=s:t.isAxiosResponse(e)?i=e.data:t.isErrorResponse(e)&&(i=e)}return{res:o,error:i}}),r(this,"apiClient",async(e,s,r)=>{r??this.isWholeResponse;const t={...e,...s?e.method&&["GET"].includes(e.method.toUpperCase())?{params:s}:{data:s}:{}};return t.proxyPrefix&&(t.url=(t.proxyPrefix||"")+e.url,delete t.proxyPrefix),await this.apiInstance(t)})}toSuccessEnvelope(e){return e}isBusinessError(s){return e(s)&&"string"==typeof s.message&&("number"==typeof s.code||"string"==typeof s.code)&&"0"!==String(s.code)}isAxiosResponse(s){return e(s)&&void 0!==s.data&&this.isBusinessError(s.data)&&void 0!==s.status&&void 0!==s.statusText&&void 0!==s.headers&&void 0!==s.config&&void 0!==s.request}isErrorResponse(s){return e(s)&&"code"in s&&"message"in s&&"0"!==String(s.code)}}export{t as ApiService};
|
|
2
2
|
//# sourceMappingURL=axios-client.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"axios-client.mjs","sources":["../../../../../packages/utils/src/api-client/axios-client.ts"],"sourcesContent":["import type { AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios'\nimport type {\n ApiTypeMap,\n BaseErrorResponse,\n BaseSuccessResponse,\n ErrorResponse,\n RequestParams,\n RequestPayload,\n SuccessResponse,\n UrlObjectType,\n} from './types'\nimport { isPlainObject } from '../types'\n\n/**\n * Axios API 响应的统一封装\n * @template W - 是否返回完整响应,true 返回完整响应,false 只返回 data\n * @template T - 响应数据的类型\n * @template S - 自定义成功响应类型\n * @template E - 自定义错误响应类型\n */\nexport interface AxiosUseApiResponse<\n W extends boolean = false,\n T = unknown,\n S extends BaseSuccessResponse<T> = SuccessResponse<T>,\n E extends BaseErrorResponse = ErrorResponse,\n> {\n res: W extends true ? S : T\n error: E | null\n}\n\n/**\n * API 服务类,提供统一的请求处理和错误处理\n * @template T - API 类型映射\n * @template U - URL 配置对象类型\n * @template S - 自定义成功响应类型\n * @template E - 自定义错误响应类型\n *\n * @example\n * ```typescript\n * // 定义 API 类型映射\n * interface UserApi extends ApiTypeMap<UserUrlObject> {\n * '/user/list': {\n * request: { page: number; size: number }\n * response: User[]\n * }\n * }\n *\n * // 使用默认响应类型\n * const api = new ApiService<UserApi, UserUrlObject>(axios.create(), false)\n *\n * // 使用自定义响应类型\n * interface CustomSuccessResponse<T> {\n * status: number\n * result: T\n * msg: string\n * }\n *\n * interface CustomErrorResponse {\n * status: number\n * result: null\n * msg: string\n * }\n *\n * const customApi = new ApiService<\n * UserApi,\n * UserUrlObject,\n * CustomSuccessResponse<unknown>,\n * CustomErrorResponse\n * >(axios.create(), false)\n *\n * // 发起请求\n * const { res, error } = await api.useApi({\n * url: '/user/list',\n * method: 'GET',\n * params: { page: 1, size: 10 }\n * })\n * ```\n */\nexport class ApiService<\n T extends ApiTypeMap<U>,\n U extends UrlObjectType,\n S extends BaseSuccessResponse = SuccessResponse<unknown>,\n E extends BaseErrorResponse = ErrorResponse,\n> {\n private
|
|
1
|
+
{"version":3,"file":"axios-client.mjs","sources":["../../../../../packages/utils/src/api-client/axios-client.ts"],"sourcesContent":["import type { AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios'\nimport type {\n ApiTypeMap,\n BaseErrorResponse,\n BaseSuccessResponse,\n ErrorResponse,\n RequestParams,\n RequestPayload,\n SuccessResponse,\n UrlObjectType,\n} from './types'\nimport { isPlainObject } from '../types'\n\n/**\n * Axios API 响应的统一封装\n * @template W - 是否返回完整响应,true 返回完整响应,false 只返回 data\n * @template T - 响应数据的类型\n * @template S - 自定义成功响应类型\n * @template E - 自定义错误响应类型\n */\nexport interface AxiosUseApiResponse<\n W extends boolean = false,\n T = unknown,\n S extends BaseSuccessResponse<T> = SuccessResponse<T>,\n E extends BaseErrorResponse = ErrorResponse,\n> {\n res: W extends true ? S : T\n error: E | null\n}\n\n/**\n * API 服务类,提供统一的请求处理和错误处理\n * @template T - API 类型映射\n * @template U - URL 配置对象类型\n * @template S - 自定义成功响应类型\n * @template E - 自定义错误响应类型\n *\n * @example\n * ```typescript\n * // 定义 API 类型映射\n * interface UserApi extends ApiTypeMap<UserUrlObject> {\n * '/user/list': {\n * request: { page: number; size: number }\n * response: User[]\n * }\n * }\n *\n * // 使用默认响应类型\n * const api = new ApiService<UserApi, UserUrlObject>(axios.create(), false)\n *\n * // 使用自定义响应类型\n * interface CustomSuccessResponse<T> {\n * status: number\n * result: T\n * msg: string\n * }\n *\n * interface CustomErrorResponse {\n * status: number\n * result: null\n * msg: string\n * }\n *\n * const customApi = new ApiService<\n * UserApi,\n * UserUrlObject,\n * CustomSuccessResponse<unknown>,\n * CustomErrorResponse\n * >(axios.create(), false)\n *\n * // 发起请求\n * const { res, error } = await api.useApi({\n * url: '/user/list',\n * method: 'GET',\n * params: { page: 1, size: 10 }\n * })\n * ```\n */\nexport class ApiService<\n T extends ApiTypeMap<U>,\n U extends UrlObjectType,\n S extends BaseSuccessResponse = SuccessResponse<unknown>,\n E extends BaseErrorResponse = ErrorResponse,\n> {\n private toSuccessEnvelope<R>(response: S): S & BaseSuccessResponse<R> {\n return response as S & BaseSuccessResponse<R>\n }\n\n /**\n * 构造函数,实现单例模式\n * @param apiInstance - Axios 实例\n * @param isWholeResponse - 是否返回完整响应\n */\n constructor(\n private apiInstance: AxiosInstance,\n private isWholeResponse: boolean,\n ) {}\n\n /**\n * 判断是否为业务错误\n * @param obj - 待判断的对象\n */\n private isBusinessError(obj: E): boolean {\n return isPlainObject(obj)\n && typeof (obj as any).message === 'string'\n && (typeof (obj as any).code === 'number' || typeof (obj as any).code === 'string')\n && String((obj as any).code) !== '0'\n }\n\n /**\n * 判断是否为 Axios 响应对象\n * @param value - 待判断的值\n */\n private isAxiosResponse(value: any): value is AxiosResponse {\n return isPlainObject(value)\n && value.data !== undefined\n && this.isBusinessError(value.data)\n && value.status !== undefined\n && value.statusText !== undefined\n && value.headers !== undefined\n && value.config !== undefined\n && value.request !== undefined\n }\n\n /**\n * 判断是否为错误响应\n * @param value - 待判断的值\n */\n private isErrorResponse(value: any): value is E {\n return isPlainObject(value)\n && 'code' in value\n && 'message' in value\n && String(value.code) !== '0'\n }\n\n /**\n * 发起 API 请求,返回统一的响应格式 { res, error }\n * @template K - URL 配置对象类型\n * @template W - 是否返回完整响应,true 返回 SuccessResponse,false 只返回 data\n * @param axiosConfig - Axios 请求配置\n * @param params - 请求参数(GET 请求会自动转为 params,其他方法转为 data)\n * @param isWholeResponse - 是否返回完整响应,默认使用实例配置\n * @returns Promise<UseApiResponse<W, T, S, E>> - 包含 res 和 error 的统一响应对象\n */\n public useApi = async <\n K extends U,\n W extends boolean = false,\n >(\n axiosConfig: Omit<AxiosRequestConfig<RequestPayload<T[K['url']]['request']>>, 'params'> & K & {\n params?: RequestParams<T[K['url']]['request']>\n },\n params?: RequestParams<T[K['url']]['request']>,\n isWholeResponse: W = this.isWholeResponse as W,\n ): Promise<AxiosUseApiResponse<W, T[K['url']]['response'], S & BaseSuccessResponse<T[K['url']]['response']>, E>> => {\n let res: AxiosUseApiResponse<W, T[K['url']]['response'], S & BaseSuccessResponse<T[K['url']]['response']>, E>['res'] | null = null\n let error: AxiosUseApiResponse<W, T[K['url']]['response'], S & BaseSuccessResponse<T[K['url']]['response']>, E>['error'] = null\n\n try {\n // 处理请求配置\n const config = {\n ...axiosConfig,\n ...(params ? (axiosConfig.method && ['GET'].includes(axiosConfig.method.toUpperCase()) ? { params } : { data: params }) : {}),\n }\n\n // 处理代理前缀\n config.url = (config.proxyPrefix || '') + axiosConfig.url\n delete config.proxyPrefix\n\n // 发起请求\n const response = await this.apiInstance<S & BaseSuccessResponse<T[K['url']]['response']>>(config)\n const successResponse = this.toSuccessEnvelope<T[K['url']]['response']>(response.data)\n res = isWholeResponse\n ? successResponse\n : successResponse.data\n }\n catch (err: any) {\n const responseError = err?.response?.data\n\n if (this.isErrorResponse(responseError)) {\n error = responseError\n }\n else if (this.isAxiosResponse(err)) {\n error = err.data as E\n }\n else if (this.isErrorResponse(err)) {\n error = err\n }\n else {\n console.error(err)\n }\n }\n\n return { res: res!, error }\n }\n\n /**\n * 发起 API 请求\n * @template K - URL 配置对象类型\n * @template W - 是否返回完整响应\n * @param axiosConfig - Axios 请求配置\n * @param params - 请求参数\n * @param isWholeResponse - 是否返回完整响应,默认使用实例配置\n * @returns 根据 isWholeResponse 返回完整响应或解包后的数据\n */\n public apiClient = async <K extends U, W extends boolean = false>(\n axiosConfig: Omit<AxiosRequestConfig<RequestPayload<T[K['url']]['request']>>, 'params'> & K & {\n params?: RequestParams<T[K['url']]['request']>\n },\n params?: RequestParams<T[K['url']]['request']>,\n isWholeResponse?: W,\n ): Promise<W extends true ? AxiosResponse<T[K['url']]['response']> : T[K['url']]['response']> => {\n const useWholeResponse = isWholeResponse ?? this.isWholeResponse\n // 处理请求配置\n const config = {\n ...axiosConfig,\n ...(params ? (axiosConfig.method && ['GET'].includes(axiosConfig.method.toUpperCase()) ? { params } : { data: params }) : {}),\n }\n\n // 处理代理前缀\n if (config.proxyPrefix) {\n config.url = (config.proxyPrefix || '') + axiosConfig.url\n delete config.proxyPrefix\n }\n\n // 发起请求,利用 axios 的第二个泛型参数 R 控制解包\n if (useWholeResponse) {\n return await this.apiInstance<T[K['url']]['response']>(config)\n }\n else {\n return await this.apiInstance<any, T[K['url']]['response']>(config)\n }\n }\n}\n"],"names":["ApiService","constructor","apiInstance","isWholeResponse","_this","this","__publicField","async","axiosConfig","params","arguments","length","undefined","res","error","config","method","includes","toUpperCase","data","url","proxyPrefix","response","successResponse","toSuccessEnvelope","err","responseError","isErrorResponse","isAxiosResponse","isBusinessError","obj","isPlainObject","message","code","String","value","status","statusText","headers","request"],"mappings":"uMA8EO,MAAMA,EAeXC,WAAAA,CACUC,EACAC,GACR,IAAAC,EAAAC,KAFQA,KAAAH,YAAAA,EACAG,KAAAF,gBAAAA,EAiDVG,EAAAD,KAAO,SAASE,eAIdC,EAGAC,GAEkH,IADlHN,EAAAO,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAqBN,EAAKD,gBAEtBU,EAA0H,KAC1HC,EAAuH,KAE3H,IAEE,MAAMC,EAAS,IACVP,KACCC,EAAUD,EAAYQ,QAAU,CAAC,OAAOC,SAAST,EAAYQ,OAAOE,eAAiB,CAAET,UAAW,CAAEU,KAAMV,GAAY,CAAA,GAI5HM,EAAOK,KAAOL,EAAOM,aAAe,IAAMb,EAAYY,WAC/CL,EAAOM,YAGd,MAAMC,QAAiBlB,EAAKF,YAA8Da,GACpFQ,EAAkBnB,EAAKoB,kBAA2CF,EAASH,MACjFN,EAAMV,EACFoB,EACAA,EAAgBJ,IACtB,OACOM,GACL,MAAMC,EAAgBD,GAAKH,UAAUH,KAEjCf,EAAKuB,gBAAgBD,GACvBZ,EAAQY,EAEDtB,EAAKwB,gBAAgBH,GAC5BX,EAAQW,EAAIN,KAELf,EAAKuB,gBAAgBF,KAC5BX,EAAQW,EAKZ,CAEA,MAAO,CAAEZ,MAAWC,QACtB,GAWAR,EAAAD,KAAO,YAAYE,MACjBC,EAGAC,EACAN,KAEyBA,GAAmBE,KAAKF,gBAAjD,MAEMY,EAAS,IACVP,KACCC,EAAUD,EAAYQ,QAAU,CAAC,OAAOC,SAAST,EAAYQ,OAAOE,eAAiB,CAAET,UAAW,CAAEU,KAAMV,GAAY,CAAA,GAU5H,OANIM,EAAOM,cACTN,EAAOK,KAAOL,EAAOM,aAAe,IAAMb,EAAYY,WAC/CL,EAAOM,mBAKDhB,KAAKH,YAAqCa,IAlIxD,CAZKS,iBAAAA,CAAqBF,GAC3B,OAAOA,CACT,CAgBQO,eAAAA,CAAgBC,GACtB,OAAOC,EAAcD,IACgB,iBAAxBA,EAAYE,UACU,iBAArBF,EAAYG,MAAkD,iBAArBH,EAAYG,OAChC,MAA9BC,OAAQJ,EAAYG,KAC3B,CAMQL,eAAAA,CAAgBO,GACtB,OAAOJ,EAAcI,SACD,IAAfA,EAAMhB,MACNd,KAAKwB,gBAAgBM,EAAMhB,YACV,IAAjBgB,EAAMC,aACe,IAArBD,EAAME,iBACY,IAAlBF,EAAMG,cACW,IAAjBH,EAAMpB,aACY,IAAlBoB,EAAMI,OACb,CAMQZ,eAAAA,CAAgBQ,GACtB,OAAOJ,EAAcI,IAChB,SAAUA,GACV,YAAaA,GACU,MAAvBD,OAAOC,EAAMF,KACpB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var t=Object.defineProperty,e=(e,s,r)=>((e,s,r)=>s in e?t(e,s,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[s]=r)(e,"symbol"!=typeof s?s+"":s,r);class s extends Error{constructor(t,s,r,
|
|
1
|
+
var t=Object.defineProperty,e=(e,s,r)=>((e,s,r)=>s in e?t(e,s,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[s]=r)(e,"symbol"!=typeof s?s+"":s,r);class s extends Error{constructor(t,s,r,a){super(s),e(this,"code"),e(this,"details"),e(this,"status"),this.name="ApiError",this.code=t,this.status=r,this.details=a}}class r{constructor(t){this.client=t,e(this,"useApi",async(t,e)=>{let s=null,r=null;try{const{url:r,proxyPrefix:a,signal:o,...n}=t,i=(a||"")+r,c={...n,signal:o};e&&("GET"===t.method.toUpperCase()?c.searchParams=e:c.json=e);const l=await this.client(i,c);s=(l.headers.get("content-type")??"").toLowerCase().includes("text/event-stream")?l.body:await l.json()}catch(t){r=t}return{res:s,error:r}}),e(this,"apiClient",async(t,e)=>{const{url:s,method:r,proxyPrefix:a,signal:o,...n}=t,i=(a||"")+s,c={...n,method:r.toLowerCase(),signal:o,throwOnError:!0};e&&("GET"===r.toUpperCase()?c.searchParams=e:c.json=e);const l=await this.client(i,c);return(l.headers.get("content-type")??"").toLowerCase().includes("text/event-stream")?l.body:await l.json()})}}export{s as ApiError,r as FetchApiService};
|
|
2
2
|
//# sourceMappingURL=fetch-client.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-client.mjs","sources":["../../../../../packages/utils/src/api-client/fetch-client.ts"],"sourcesContent":["import type { Options } from 'ky'\nimport type {\n ApiTypeMap,\n BaseErrorResponse,\n ErrorResponse,\n RequestParams,\n RequestPayload,\n UrlObjectType,\n UseApiResponse,\n} from './types'\n\n/**\n * 扩展的 API 请求配置选项\n */\ninterface ExtendedOptions extends Options {\n /** 内部标记:是否为重试请求 @internal */\n _isRetry?: boolean\n /** 静默模式:401 错误不弹出登录弹窗 @default false */\n _silent?: boolean\n /** 操作上下文:用于登录弹窗说明 */\n _actionContext?: string\n /** 错误处理策略:是否抛出错误 @default false */\n throwOnError?: boolean\n}\n\n/**\n * 自定义 API 错误类\n */\nexport class ApiError extends Error {\n code: string\n details?: string\n status: number\n\n constructor(code: string, message: string, status: number, details?: string) {\n super(message)\n this.name = 'ApiError'\n this.code = code\n this.status = status\n this.details = details\n }\n}\n\n// ============================================================================\n// Fetch API 服务类\n// ============================================================================\n\n/**\n * Fetch API 服务类,基于 ky 提供统一的请求处理\n */\nexport class FetchApiService<\n T extends ApiTypeMap<U>,\n U extends UrlObjectType,\n E extends BaseErrorResponse = ErrorResponse,\n> {\n
|
|
1
|
+
{"version":3,"file":"fetch-client.mjs","sources":["../../../../../packages/utils/src/api-client/fetch-client.ts"],"sourcesContent":["import type { Options } from 'ky'\nimport type {\n ApiTypeMap,\n BaseErrorResponse,\n ErrorResponse,\n RequestParams,\n RequestPayload,\n UrlObjectType,\n UseApiResponse,\n} from './types'\n\n/**\n * 扩展的 API 请求配置选项\n */\ninterface ExtendedOptions extends Options {\n /** 内部标记:是否为重试请求 @internal */\n _isRetry?: boolean\n /** 静默模式:401 错误不弹出登录弹窗 @default false */\n _silent?: boolean\n /** 操作上下文:用于登录弹窗说明 */\n _actionContext?: string\n /** 错误处理策略:是否抛出错误 @default false */\n throwOnError?: boolean\n /** 请求取消信号,用于中止请求 */\n signal?: AbortSignal\n}\n\n/**\n * 自定义 API 错误类\n */\nexport class ApiError extends Error {\n code: string\n details?: string\n status: number\n\n constructor(code: string, message: string, status: number, details?: string) {\n super(message)\n this.name = 'ApiError'\n this.code = code\n this.status = status\n this.details = details\n }\n}\n\n// ============================================================================\n// Fetch API 服务类\n// ============================================================================\n\n/**\n * Fetch API 服务类,基于 ky 提供统一的请求处理\n */\nexport class FetchApiService<\n T extends ApiTypeMap<U>,\n U extends UrlObjectType,\n E extends BaseErrorResponse = ErrorResponse,\n> {\n constructor(private client: any) {}\n\n /**\n * 发起 API 请求,返回统一的响应格式 { res, error }\n * @template K - URL 配置对象类型\n * @param config - 请求配置(单参数时使用 ky 原生参数如 searchParams/json)\n * @param requestData - 请求数据(双参数时自动根据 method 处理)\n * @returns Promise<{ res, error }> - 统一响应格式\n */\n public useApi = async <K extends U>(\n config: Omit<ExtendedOptions, 'method'> & K,\n requestData?: RequestParams<T[K['url']]['request']> | RequestPayload<T[K['url']]['request']>,\n ): Promise<UseApiResponse<T[K['url']]['response'], E>> => {\n let res: T[K['url']]['response'] | null = null\n let error: E | null = null\n\n try {\n // 构建请求配置\n const { url, proxyPrefix, signal, ...restOptions } = config\n const fullUrl = (proxyPrefix || '') + url\n\n const options: ExtendedOptions = {\n ...restOptions,\n signal, // 传递 signal 给 ky\n }\n\n // 双参数调用:自动根据 method 处理\n if (requestData) {\n if (config.method.toUpperCase() === 'GET') {\n options.searchParams = requestData\n }\n else {\n options.json = requestData\n }\n }\n\n // 发起请求\n const response = await this.client(fullUrl, options)\n\n // 处理 SSE 流式响应\n const contentType = response.headers.get('content-type') ?? ''\n if (contentType.toLowerCase().includes('text/event-stream')) {\n res = response.body\n }\n else {\n res = await response.json()\n }\n }\n catch (err: any) {\n // 错误已在 ky hooks 中处理,这里只需捕获\n error = err\n }\n\n return { res, error }\n }\n\n /**\n * 发起 API 请求,直接返回数据或抛出错误\n * @template K - URL 配置对象类型\n * @param config - 请求配置(单参数时使用 ky 原生参数如 searchParams/json)\n * @param requestData - 请求数据(双参数时自动根据 method 处理)\n * @returns Promise<Response> - 直接返回响应数据\n */\n public apiClient = async <K extends U>(\n config: Omit<ExtendedOptions, 'method'> & K,\n requestData?: RequestParams<T[K['url']]['request']> | RequestPayload<T[K['url']]['request']>,\n ): Promise<T[K['url']]['response']> => {\n const { url, method, proxyPrefix, signal, ...restOptions } = config\n const fullUrl = (proxyPrefix || '') + url\n\n const options: ExtendedOptions = {\n ...restOptions,\n method: method.toLowerCase(),\n signal, // 传递 signal 给 ky\n throwOnError: true,\n }\n\n // 双参数调用:自动根据 method 处理\n if (requestData) {\n if (method.toUpperCase() === 'GET') {\n options.searchParams = requestData\n }\n else {\n options.json = requestData\n }\n }\n\n // 发起请求\n const response = await this.client(fullUrl, options)\n\n // 处理 SSE 流式响应\n const contentType = response.headers.get('content-type') ?? ''\n if (contentType.toLowerCase().includes('text/event-stream')) {\n return response.body as any\n }\n\n return await response.json()\n }\n}\n"],"names":["ApiError","Error","constructor","code","message","status","details","super","__publicField","this","name","FetchApiService","client","async","config","requestData","res","error","url","proxyPrefix","signal","restOptions","fullUrl","options","method","toUpperCase","searchParams","json","response","headers","get","toLowerCase","includes","body","err","throwOnError"],"mappings":"0JA8BO,MAAMA,UAAiBC,MAK5BC,WAAAA,CAAYC,EAAcC,EAAiBC,EAAgBC,GACzDC,MAAMH,GALRI,EAAAC,KAAA,QACAD,EAAAC,KAAA,WACAD,EAAAC,KAAA,UAIEA,KAAKC,KAAO,WACZD,KAAKN,KAAOA,EACZM,KAAKJ,OAASA,EACdI,KAAKH,QAAUA,CACjB,EAUK,MAAMK,EAKXT,WAAAA,CAAoBU,GAAAH,KAAAG,OAAAA,EASpBJ,EAAAC,KAAO,SAASI,MACdC,EACAC,KAEA,IAAIC,EAAsC,KACtCC,EAAkB,KAEtB,IAEE,MAAMC,IAAEA,EAAAC,YAAKA,EAAAC,OAAaA,KAAWC,GAAgBP,EAC/CQ,GAAWH,GAAe,IAAMD,EAEhCK,EAA2B,IAC5BF,EACHD,UAIEL,IACkC,QAAhCD,EAAOU,OAAOC,cAChBF,EAAQG,aAAeX,EAGvBQ,EAAQI,KAAOZ,GAKnB,MAAMa,QAAiBnB,KAAKG,OAAOU,EAASC,GAK1CP,GAFkBY,EAASC,QAAQC,IAAI,iBAAmB,IAC5CC,cAAcC,SAAS,qBAC/BJ,EAASK,WAGHL,EAASD,MAEzB,OACOO,GAELjB,EAAQiB,CACV,CAEA,MAAO,CAAElB,MAAKC,WAUhBT,EAAAC,KAAO,YAAYI,MACjBC,EACAC,KAEA,MAAMG,IAAEA,EAAAM,OAAKA,EAAAL,YAAQA,SAAaC,KAAWC,GAAgBP,EACvDQ,GAAWH,GAAe,IAAMD,EAEhCK,EAA2B,IAC5BF,EACHG,OAAQA,EAAOO,cACfX,SACAe,cAAc,GAIZpB,IAC2B,QAAzBS,EAAOC,cACTF,EAAQG,aAAeX,EAGvBQ,EAAQI,KAAOZ,GAKnB,MAAMa,QAAiBnB,KAAKG,OAAOU,EAASC,GAI5C,OADoBK,EAASC,QAAQC,IAAI,iBAAmB,IAC5CC,cAAcC,SAAS,qBAC9BJ,EAASK,WAGLL,EAASD,QAhGU"}
|
package/es/src/argo-log.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var i=Object.defineProperty,t=(t,s,e)=>((t,s,e)=>s in t?i(t,s,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[s]=e)(t,"symbol"!=typeof s?s+"":s,e);const s=class i{constructor(){t(this,"sdkPromise",null),t(this,"sdk",null)}static getInstance(){return i.instance||(i.instance=new i),i.instance}async loadSDK(){if(this.sdk)return this.sdk;if(this.sdkPromise)return this.sdkPromise;if("undefined"==typeof window)return null;const
|
|
1
|
+
var i=Object.defineProperty,t=(t,s,e)=>((t,s,e)=>s in t?i(t,s,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[s]=e)(t,"symbol"!=typeof s?s+"":s,e);function s(i){if(Array.isArray(i))return`[${i.map(i=>s(i)).join(",")}]`;if(i&&"object"==typeof i){const t=i;return`{${Object.keys(t).sort().map(i=>`${JSON.stringify(i)}:${s(t[i])}`).join(",")}}`}return JSON.stringify(i)}const e=class i{constructor(){t(this,"sdkPromise",null),t(this,"sdk",null),t(this,"usingMock",!1)}static getInstance(){return i.instance||(i.instance=new i),i.instance}async loadSDK(){let i=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this.sdk)return this.sdk;if(this.sdkPromise)return this.sdkPromise;if("undefined"==typeof window)return null;const t=window;return t.__argoLogSDKPromise?(this.sdkPromise=t.__argoLogSDKPromise,this.sdk=await this.sdkPromise,this.sdk||(this.sdkPromise=null,delete t.__argoLogSDKPromise),this.sdk):(this.sdkPromise=this.createSDKPromise(i),t.__argoLogSDKPromise=this.sdkPromise,this.sdk=await this.sdkPromise,this.sdk||(this.sdkPromise=null,delete t.__argoLogSDKPromise),this.sdk)}async createSDKPromise(i){try{const i=await import("ans-javascript-sdk");return this.usingMock=!1,i.default}catch(t){return i?(this.usingMock=!0,this.createMockSDK()):(this.usingMock=!1,null)}}createMockSDK(){return{init:i=>{},track:(i,t)=>{},profileSet:i=>{},alias:i=>{}}}getSDK(){return this.sdk}isLoaded(){return null!==this.sdk}isUsingMock(){return this.usingMock}};t(e,"instance");const n=e.getInstance(),r=class i{constructor(e){t(this,"AnalysysAgent",null),t(this,"pendingQueue",[]),t(this,"isInitialized",!1),t(this,"isInitializing",!1),t(this,"initSettled",!1),t(this,"initializationPromise",null),t(this,"track",(i,t)=>{const s=()=>{i&&this.AnalysysAgent&&this.AnalysysAgent.track(i,t)};if(this.isInitialized||this.initSettled){if(this.isInitialized)try{s()}catch(i){}}else this.pendingQueue.push(s)}),t(this,"setProfile",i=>{const t=()=>{i&&this.AnalysysAgent&&this.AnalysysAgent.profileSet(i)};if(this.isInitialized||this.initSettled){if(this.isInitialized)try{t()}catch(i){}}else this.pendingQueue.push(t)}),t(this,"setAlias",i=>{const t=()=>{i&&this.AnalysysAgent&&this.AnalysysAgent.alias(i)};if(this.isInitialized||this.initSettled){if(this.isInitialized)try{t()}catch(i){}}else this.pendingQueue.push(t)});try{if("undefined"==typeof window)return this.initSettled=!0,this;if(!e)return this.initSettled=!0,this;const t=s(e),n=i.instances.get(t);if(n)return n;i.instances.set(t,this),this.initializationPromise=this.initializeSDK(e,t)}catch(i){this.initSettled=!0}return this}async initializeSDK(t,s){if(this.isInitializing||this.isInitialized)return this.isInitialized;this.isInitializing=!0;try{const e=await n.loadSDK(Boolean(t.allowMock));if(e){this.AnalysysAgent=e;const{allowMock:i,...s}=t;return e.init(s),this.isInitialized=!0,this.processPendingQueue(),!0}return i.instances.delete(s),this.pendingQueue=[],!1}catch(t){return i.instances.delete(s),this.pendingQueue=[],!1}finally{this.isInitializing=!1,this.initSettled=!0}}processPendingQueue(){this.pendingQueue.forEach(i=>i()),this.pendingQueue=[]}get initialized(){return this.isInitialized}get usingMock(){return this.isInitialized&&n.isUsingMock()}async waitForInitialization(){return!!this.isInitialized||(this.initializationPromise??!1)}};t(r,"instances",new Map);let a=r;export{a as ArgoLog};
|
|
2
2
|
//# sourceMappingURL=argo-log.mjs.map
|
package/es/src/argo-log.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"argo-log.mjs","sources":["../../../../packages/utils/src/argo-log.ts"],"sourcesContent":["// SDK 配置接口\nexport interface AnalysysConfig {\n encryptType?: number\n debugMode?: number\n appkey: string\n uploadURL: string\n autoProfile?: boolean\n autoTrack?: boolean\n}\n\n// SDK 实例接口\nexport interface AnalysysAgentInterface {\n init: (config: AnalysysConfig) => void\n track: (eventName: string, properties?: Record<string, any>) => void\n profileSet: (properties: Record<string, any>) => void\n alias: (aliasId: string) => void\n}\n\n// 全局窗口类型扩展\ndeclare global {\n interface Window {\n __argoLogSDKPromise?: Promise<AnalysysAgentInterface | null>\n }\n}\n\n// 定义配置项的类型别名,保持向后兼容\nexport interface EnvironmentConfig extends AnalysysConfig {}\n\n/**\n * SDK 加载器 - 统一管理 SDK 的加载和初始化\n */\nclass SDKLoader {\n private static instance: SDKLoader\n private sdkPromise: Promise<AnalysysAgentInterface | null> | null = null\n private sdk: AnalysysAgentInterface | null = null\n\n private constructor() {}\n\n static getInstance(): SDKLoader {\n if (!SDKLoader.instance) {\n SDKLoader.instance = new SDKLoader()\n }\n return SDKLoader.instance\n }\n\n /**\n * 加载 SDK\n */\n async loadSDK(): Promise<AnalysysAgentInterface | null> {\n // 如果已经加载过,直接返回\n if (this.sdk) {\n return this.sdk\n }\n\n // 如果正在加载,等待加载完成\n if (this.sdkPromise) {\n return this.sdkPromise\n }\n\n // 检查浏览器环境\n if (typeof window === 'undefined') {\n console.warn('[ArgoLog] 仅支持浏览器环境')\n return null\n }\n\n // 检查是否已有全局 Promise\n const windowAny = window as any\n if (windowAny.__argoLogSDKPromise) {\n this.sdkPromise = windowAny.__argoLogSDKPromise\n this.sdk = await this.sdkPromise\n return this.sdk\n }\n\n // 创建新的加载 Promise\n this.sdkPromise = this.createSDKPromise()\n windowAny.__argoLogSDKPromise = this.sdkPromise\n\n this.sdk = await this.sdkPromise\n return this.sdk\n }\n\n /**\n * 创建 SDK 加载 Promise\n */\n private async createSDKPromise(): Promise<AnalysysAgentInterface | null> {\n try {\n // 尝试动态导入\n const module = await import('ans-javascript-sdk')\n return module.default as AnalysysAgentInterface\n }\n catch (error) {\n // 在 docs 环境中,可能无法加载 SDK,提供一个 mock 实现\n console.warn('[ArgoLog] SDK 加载失败,使用 mock 实现:', error)\n return this.createMockSDK()\n }\n }\n\n /**\n * 创建 Mock SDK - 用于开发和文档环境\n */\n private createMockSDK(): AnalysysAgentInterface {\n return {\n init: (config) => {\n console.log('[ArgoLog Mock] SDK 初始化:', config)\n },\n track: (eventName, properties) => {\n console.log('[ArgoLog Mock] 追踪事件:', eventName, properties)\n },\n profileSet: (properties) => {\n console.log('[ArgoLog Mock] 设置用户画像:', properties)\n },\n alias: (aliasId) => {\n console.log('[ArgoLog Mock] 设置用户别名:', aliasId)\n },\n }\n }\n\n /**\n * 获取已加载的 SDK\n */\n getSDK(): AnalysysAgentInterface | null {\n return this.sdk\n }\n\n /**\n * 检查 SDK 是否已加载\n */\n isLoaded(): boolean {\n return this.sdk !== null\n }\n}\n\n// SDK 加载器单例\nconst sdkLoader = SDKLoader.getInstance()\n\n/**\n * ArgoLog 类 - 用于处理埋点统计的工具类\n *\n * @class ArgoLog\n * @description 基于 AnalysysAgent SDK 封装的埋点工具类,提供了埋点追踪、用户画像设置和用户别名设置等功能\n * @example\n * ```typescript\n * const argoLog = new ArgoLog({\n * appkey: 'your-app-key',\n * uploadURL: 'your-upload-url'\n * });\n *\n * // 追踪事件\n * argoLog.track('event_name', { key: 'value' });\n * ```\n */\nexport class ArgoLog<T extends EnvironmentConfig = EnvironmentConfig> {\n private static instances = new Map<string, ArgoLog<any>>()\n private AnalysysAgent: AnalysysAgentInterface | null = null\n private pendingQueue: Array<() => void> = []\n private isInitialized = false\n private isInitializing = false\n\n constructor(envConfig: T) {\n try {\n if (typeof window === 'undefined') {\n console.warn('[ArgoLog] 仅支持浏览器环境')\n return this\n }\n\n const configKey = JSON.stringify(envConfig)\n const existingInstance = ArgoLog.instances.get(configKey)\n if (existingInstance) {\n return existingInstance\n }\n\n if (!envConfig) {\n console.error('[ArgoLog] envConfig is required')\n return this\n }\n\n this.initializeSDK(envConfig, configKey)\n }\n catch (error) {\n console.warn('[ArgoLog] Init failed:', error)\n }\n return this\n }\n\n private async initializeSDK(envConfig: T, configKey: string) {\n if (this.isInitializing || this.isInitialized) {\n return\n }\n\n this.isInitializing = true\n\n try {\n // 使用 SDK 加载器加载 SDK\n const sdk = await sdkLoader.loadSDK()\n\n if (sdk) {\n this.AnalysysAgent = sdk\n sdk.init(envConfig)\n this.isInitialized = true\n ArgoLog.instances.set(configKey, this)\n this.processPendingQueue()\n }\n else {\n console.warn('[ArgoLog] SDK 加载失败')\n }\n }\n catch (error) {\n console.warn('[ArgoLog] SDK 初始化失败:', error)\n }\n finally {\n this.isInitializing = false\n }\n }\n\n private processPendingQueue() {\n // SDK 初始化完成后,重放所有暂存的调用\n this.pendingQueue.forEach(fn => fn())\n this.pendingQueue = []\n }\n\n track = (name: string, opt?: Record<string, any>): void => {\n const exec = () => {\n if (!name) {\n console.warn('[ArgoLog] track: name is required')\n return\n }\n if (this.AnalysysAgent) {\n this.AnalysysAgent.track(name, opt)\n }\n }\n\n if (!this.isInitialized) {\n // SDK 未初始化,暂存调用\n this.pendingQueue.push(exec)\n // 静默处理,不显示暂存信息,避免用户困惑\n return\n }\n\n try {\n exec()\n }\n catch (error) {\n console.warn('[ArgoLog] track failed:', error)\n }\n }\n\n setProfile = (info: Record<string, any>): void => {\n const exec = () => {\n if (!info) {\n console.warn('[ArgoLog] setProfile: info is required')\n return\n }\n if (this.AnalysysAgent) {\n this.AnalysysAgent.profileSet(info)\n }\n }\n\n if (!this.isInitialized) {\n this.pendingQueue.push(exec)\n // 静默处理,不显示暂存信息\n return\n }\n\n try {\n exec()\n }\n catch (error) {\n console.warn('[ArgoLog] setProfile failed:', error)\n }\n }\n\n setAlias = (code: string): void => {\n const exec = () => {\n if (!code) {\n console.warn('[ArgoLog] setAlias: code is required')\n return\n }\n if (this.AnalysysAgent) {\n this.AnalysysAgent.alias(code)\n }\n }\n\n if (!this.isInitialized) {\n this.pendingQueue.push(exec)\n // 静默处理,不显示暂存信息\n return\n }\n\n try {\n exec()\n }\n catch (error) {\n console.warn('[ArgoLog] setAlias failed:', error)\n }\n }\n\n /**\n * 获取 SDK 初始化状态\n */\n get initialized(): boolean {\n return this.isInitialized\n }\n\n /**\n * 等待 SDK 初始化完成\n */\n async waitForInitialization(): Promise<boolean> {\n if (this.isInitialized) {\n return true\n }\n\n // 等待最多 5 秒\n const timeout = 5000\n const startTime = Date.now()\n\n while (!this.isInitialized && (Date.now() - startTime) < timeout) {\n await new Promise(resolve => setTimeout(resolve, 100))\n }\n\n return this.isInitialized\n }\n}\n"],"names":["_SDKLoader","constructor","__publicField","this","getInstance","instance","loadSDK","sdk","sdkPromise","window","windowAny","__argoLogSDKPromise","createSDKPromise","import","default","error","createMockSDK","init","config","track","eventName","properties","profileSet","alias","aliasId","getSDK","isLoaded","sdkLoader","_ArgoLog","envConfig","name","opt","exec","AnalysysAgent","isInitialized","pendingQueue","push","info","code","configKey","JSON","stringify","existingInstance","instances","get","initializeSDK","isInitializing","set","processPendingQueue","forEach","fn","initialized","waitForInitialization","startTime","Date","now","Promise","resolve","setTimeout","Map","ArgoLog"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"argo-log.mjs","sources":["../../../../packages/utils/src/argo-log.ts"],"sourcesContent":["// SDK 配置接口\nexport interface AnalysysConfig {\n encryptType?: number\n debugMode?: number\n appkey: string\n uploadURL: string\n autoProfile?: boolean\n autoTrack?: boolean\n}\n\nexport interface EnvironmentConfig extends AnalysysConfig {\n allowMock?: boolean\n}\n\n// SDK 实例接口\nexport interface AnalysysAgentInterface {\n init: (config: AnalysysConfig) => void\n track: (eventName: string, properties?: Record<string, any>) => void\n profileSet: (properties: Record<string, any>) => void\n alias: (aliasId: string) => void\n}\n\n// 全局窗口类型扩展\ndeclare global {\n interface Window {\n __argoLogSDKPromise?: Promise<AnalysysAgentInterface | null>\n }\n}\n\nfunction stableSerialize(value: unknown): string {\n if (Array.isArray(value)) {\n return `[${value.map(item => stableSerialize(item)).join(',')}]`\n }\n\n if (value && typeof value === 'object') {\n const objectValue = value as Record<string, unknown>\n const keys = Object.keys(objectValue).sort()\n return `{${keys.map(key => `${JSON.stringify(key)}:${stableSerialize(objectValue[key])}`).join(',')}}`\n }\n\n return JSON.stringify(value)\n}\n\n/**\n * SDK 加载器 - 统一管理 SDK 的加载和初始化\n */\nclass SDKLoader {\n private static instance: SDKLoader\n private sdkPromise: Promise<AnalysysAgentInterface | null> | null = null\n private sdk: AnalysysAgentInterface | null = null\n private usingMock = false\n\n private constructor() {}\n\n static getInstance(): SDKLoader {\n if (!SDKLoader.instance) {\n SDKLoader.instance = new SDKLoader()\n }\n return SDKLoader.instance\n }\n\n /**\n * 加载 SDK\n */\n async loadSDK(allowMock = false): Promise<AnalysysAgentInterface | null> {\n // 如果已经加载过,直接返回\n if (this.sdk) {\n return this.sdk\n }\n\n // 如果正在加载,等待加载完成\n if (this.sdkPromise) {\n return this.sdkPromise\n }\n\n // 检查浏览器环境\n if (typeof window === 'undefined') {\n console.warn('[ArgoLog] 仅支持浏览器环境')\n return null\n }\n\n // 检查是否已有全局 Promise\n const windowAny = window as any\n if (windowAny.__argoLogSDKPromise) {\n this.sdkPromise = windowAny.__argoLogSDKPromise\n this.sdk = await this.sdkPromise\n if (!this.sdk) {\n this.sdkPromise = null\n delete windowAny.__argoLogSDKPromise\n }\n return this.sdk\n }\n\n // 创建新的加载 Promise\n this.sdkPromise = this.createSDKPromise(allowMock)\n windowAny.__argoLogSDKPromise = this.sdkPromise\n\n this.sdk = await this.sdkPromise\n if (!this.sdk) {\n this.sdkPromise = null\n delete windowAny.__argoLogSDKPromise\n }\n return this.sdk\n }\n\n /**\n * 创建 SDK 加载 Promise\n */\n private async createSDKPromise(allowMock: boolean): Promise<AnalysysAgentInterface | null> {\n try {\n // 尝试动态导入\n const module = await import('ans-javascript-sdk')\n this.usingMock = false\n return module.default as AnalysysAgentInterface\n }\n catch (error) {\n if (allowMock) {\n console.warn('[ArgoLog] SDK 加载失败,使用 mock 实现:', error)\n this.usingMock = true\n return this.createMockSDK()\n }\n console.warn('[ArgoLog] SDK 加载失败:', error)\n this.usingMock = false\n return null\n }\n }\n\n /**\n * 创建 Mock SDK - 用于开发和文档环境\n */\n private createMockSDK(): AnalysysAgentInterface {\n return {\n init: (config) => {\n console.log('[ArgoLog Mock] SDK 初始化:', config)\n },\n track: (eventName, properties) => {\n console.log('[ArgoLog Mock] 追踪事件:', eventName, properties)\n },\n profileSet: (properties) => {\n console.log('[ArgoLog Mock] 设置用户画像:', properties)\n },\n alias: (aliasId) => {\n console.log('[ArgoLog Mock] 设置用户别名:', aliasId)\n },\n }\n }\n\n /**\n * 获取已加载的 SDK\n */\n getSDK(): AnalysysAgentInterface | null {\n return this.sdk\n }\n\n /**\n * 检查 SDK 是否已加载\n */\n isLoaded(): boolean {\n return this.sdk !== null\n }\n\n isUsingMock(): boolean {\n return this.usingMock\n }\n}\n\n// SDK 加载器单例\nconst sdkLoader = SDKLoader.getInstance()\n\n/**\n * ArgoLog 类 - 用于处理埋点统计的工具类\n *\n * @class ArgoLog\n * @description 基于 AnalysysAgent SDK 封装的埋点工具类,提供了埋点追踪、用户画像设置和用户别名设置等功能\n * @example\n * ```typescript\n * const argoLog = new ArgoLog({\n * appkey: 'your-app-key',\n * uploadURL: 'your-upload-url'\n * });\n *\n * // 追踪事件\n * argoLog.track('event_name', { key: 'value' });\n * ```\n */\nexport class ArgoLog<T extends EnvironmentConfig = EnvironmentConfig> {\n private static instances = new Map<string, ArgoLog<any>>()\n private AnalysysAgent: AnalysysAgentInterface | null = null\n private pendingQueue: Array<() => void> = []\n private isInitialized = false\n private isInitializing = false\n private initSettled = false\n private initializationPromise: Promise<boolean> | null = null\n\n constructor(envConfig: T) {\n try {\n if (typeof window === 'undefined') {\n console.warn('[ArgoLog] 仅支持浏览器环境')\n this.initSettled = true\n return this\n }\n\n if (!envConfig) {\n console.error('[ArgoLog] envConfig is required')\n this.initSettled = true\n return this\n }\n\n const configKey = stableSerialize(envConfig)\n const existingInstance = ArgoLog.instances.get(configKey)\n if (existingInstance) {\n return existingInstance\n }\n\n ArgoLog.instances.set(configKey, this)\n this.initializationPromise = this.initializeSDK(envConfig, configKey)\n }\n catch (error) {\n console.warn('[ArgoLog] Init failed:', error)\n this.initSettled = true\n }\n return this\n }\n\n private async initializeSDK(envConfig: T, configKey: string): Promise<boolean> {\n if (this.isInitializing || this.isInitialized) {\n return this.isInitialized\n }\n\n this.isInitializing = true\n\n try {\n // 使用 SDK 加载器加载 SDK\n const sdk = await sdkLoader.loadSDK(Boolean(envConfig.allowMock))\n\n if (sdk) {\n this.AnalysysAgent = sdk\n const { allowMock: _allowMock, ...sdkConfig } = envConfig\n sdk.init(sdkConfig)\n this.isInitialized = true\n this.processPendingQueue()\n return true\n }\n\n ArgoLog.instances.delete(configKey)\n this.pendingQueue = []\n return false\n }\n catch (error) {\n console.warn('[ArgoLog] SDK 初始化失败:', error)\n ArgoLog.instances.delete(configKey)\n this.pendingQueue = []\n return false\n }\n finally {\n this.isInitializing = false\n this.initSettled = true\n }\n }\n\n private processPendingQueue() {\n // SDK 初始化完成后,重放所有暂存的调用\n this.pendingQueue.forEach(fn => fn())\n this.pendingQueue = []\n }\n\n track = (name: string, opt?: Record<string, any>): void => {\n const exec = () => {\n if (!name) {\n console.warn('[ArgoLog] track: name is required')\n return\n }\n if (this.AnalysysAgent) {\n this.AnalysysAgent.track(name, opt)\n }\n }\n\n if (!this.isInitialized && !this.initSettled) {\n // SDK 未初始化,暂存调用\n this.pendingQueue.push(exec)\n // 静默处理,不显示暂存信息,避免用户困惑\n return\n }\n\n if (!this.isInitialized) {\n console.warn('[ArgoLog] track skipped: SDK 未初始化')\n return\n }\n\n try {\n exec()\n }\n catch (error) {\n console.warn('[ArgoLog] track failed:', error)\n }\n }\n\n setProfile = (info: Record<string, any>): void => {\n const exec = () => {\n if (!info) {\n console.warn('[ArgoLog] setProfile: info is required')\n return\n }\n if (this.AnalysysAgent) {\n this.AnalysysAgent.profileSet(info)\n }\n }\n\n if (!this.isInitialized && !this.initSettled) {\n this.pendingQueue.push(exec)\n // 静默处理,不显示暂存信息\n return\n }\n\n if (!this.isInitialized) {\n console.warn('[ArgoLog] setProfile skipped: SDK 未初始化')\n return\n }\n\n try {\n exec()\n }\n catch (error) {\n console.warn('[ArgoLog] setProfile failed:', error)\n }\n }\n\n setAlias = (code: string): void => {\n const exec = () => {\n if (!code) {\n console.warn('[ArgoLog] setAlias: code is required')\n return\n }\n if (this.AnalysysAgent) {\n this.AnalysysAgent.alias(code)\n }\n }\n\n if (!this.isInitialized && !this.initSettled) {\n this.pendingQueue.push(exec)\n // 静默处理,不显示暂存信息\n return\n }\n\n if (!this.isInitialized) {\n console.warn('[ArgoLog] setAlias skipped: SDK 未初始化')\n return\n }\n\n try {\n exec()\n }\n catch (error) {\n console.warn('[ArgoLog] setAlias failed:', error)\n }\n }\n\n /**\n * 获取 SDK 初始化状态\n */\n get initialized(): boolean {\n return this.isInitialized\n }\n\n /**\n * 当前是否使用 mock SDK\n */\n get usingMock(): boolean {\n return this.isInitialized && sdkLoader.isUsingMock()\n }\n\n /**\n * 等待 SDK 初始化完成\n */\n async waitForInitialization(): Promise<boolean> {\n if (this.isInitialized) {\n return true\n }\n\n return this.initializationPromise ?? false\n }\n}\n"],"names":["stableSerialize","value","Array","isArray","map","item","join","objectValue","Object","keys","sort","JSON","stringify","key","_SDKLoader","constructor","__publicField","this","getInstance","instance","loadSDK","allowMock","arguments","length","undefined","sdk","sdkPromise","window","windowAny","__argoLogSDKPromise","createSDKPromise","module","import","usingMock","default","error","createMockSDK","init","config","track","eventName","properties","profileSet","alias","aliasId","getSDK","isLoaded","isUsingMock","sdkLoader","_ArgoLog","envConfig","name","opt","exec","AnalysysAgent","isInitialized","initSettled","pendingQueue","push","info","code","configKey","existingInstance","instances","get","set","initializationPromise","initializeSDK","isInitializing","Boolean","_allowMock","sdkConfig","processPendingQueue","delete","forEach","fn","initialized","waitForInitialization","Map","ArgoLog"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var e=require("../types.cjs"),s=Object.defineProperty,t=(e,t,
|
|
1
|
+
"use strict";var e=require("../types.cjs"),s=Object.defineProperty,t=(e,t,r)=>((e,t,r)=>t in e?s(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r)(e,"symbol"!=typeof t?t+"":t,r);exports.ApiService=class{constructor(e,s){var r=this;this.apiInstance=e,this.isWholeResponse=s,t(this,"useApi",async function(e,s){let t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:r.isWholeResponse,i=null,o=null;try{const o={...e,...s?e.method&&["GET"].includes(e.method.toUpperCase())?{params:s}:{data:s}:{}};o.url=(o.proxyPrefix||"")+e.url,delete o.proxyPrefix;const n=await r.apiInstance(o),a=r.toSuccessEnvelope(n.data);i=t?a:a.data}catch(e){const s=e?.response?.data;r.isErrorResponse(s)?o=s:r.isAxiosResponse(e)?o=e.data:r.isErrorResponse(e)&&(o=e)}return{res:i,error:o}}),t(this,"apiClient",async(e,s,t)=>{t??this.isWholeResponse;const r={...e,...s?e.method&&["GET"].includes(e.method.toUpperCase())?{params:s}:{data:s}:{}};return r.proxyPrefix&&(r.url=(r.proxyPrefix||"")+e.url,delete r.proxyPrefix),await this.apiInstance(r)})}toSuccessEnvelope(e){return e}isBusinessError(s){return e.isPlainObject(s)&&"string"==typeof s.message&&("number"==typeof s.code||"string"==typeof s.code)&&"0"!==String(s.code)}isAxiosResponse(s){return e.isPlainObject(s)&&void 0!==s.data&&this.isBusinessError(s.data)&&void 0!==s.status&&void 0!==s.statusText&&void 0!==s.headers&&void 0!==s.config&&void 0!==s.request}isErrorResponse(s){return e.isPlainObject(s)&&"code"in s&&"message"in s&&"0"!==String(s.code)}};
|
|
2
2
|
//# sourceMappingURL=axios-client.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"axios-client.cjs","sources":["../../../../../packages/utils/src/api-client/axios-client.ts"],"sourcesContent":["import type { AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios'\nimport type {\n ApiTypeMap,\n BaseErrorResponse,\n BaseSuccessResponse,\n ErrorResponse,\n RequestParams,\n RequestPayload,\n SuccessResponse,\n UrlObjectType,\n} from './types'\nimport { isPlainObject } from '../types'\n\n/**\n * Axios API 响应的统一封装\n * @template W - 是否返回完整响应,true 返回完整响应,false 只返回 data\n * @template T - 响应数据的类型\n * @template S - 自定义成功响应类型\n * @template E - 自定义错误响应类型\n */\nexport interface AxiosUseApiResponse<\n W extends boolean = false,\n T = unknown,\n S extends BaseSuccessResponse<T> = SuccessResponse<T>,\n E extends BaseErrorResponse = ErrorResponse,\n> {\n res: W extends true ? S : T\n error: E | null\n}\n\n/**\n * API 服务类,提供统一的请求处理和错误处理\n * @template T - API 类型映射\n * @template U - URL 配置对象类型\n * @template S - 自定义成功响应类型\n * @template E - 自定义错误响应类型\n *\n * @example\n * ```typescript\n * // 定义 API 类型映射\n * interface UserApi extends ApiTypeMap<UserUrlObject> {\n * '/user/list': {\n * request: { page: number; size: number }\n * response: User[]\n * }\n * }\n *\n * // 使用默认响应类型\n * const api = new ApiService<UserApi, UserUrlObject>(axios.create(), false)\n *\n * // 使用自定义响应类型\n * interface CustomSuccessResponse<T> {\n * status: number\n * result: T\n * msg: string\n * }\n *\n * interface CustomErrorResponse {\n * status: number\n * result: null\n * msg: string\n * }\n *\n * const customApi = new ApiService<\n * UserApi,\n * UserUrlObject,\n * CustomSuccessResponse<unknown>,\n * CustomErrorResponse\n * >(axios.create(), false)\n *\n * // 发起请求\n * const { res, error } = await api.useApi({\n * url: '/user/list',\n * method: 'GET',\n * params: { page: 1, size: 10 }\n * })\n * ```\n */\nexport class ApiService<\n T extends ApiTypeMap<U>,\n U extends UrlObjectType,\n S extends BaseSuccessResponse = SuccessResponse<unknown>,\n E extends BaseErrorResponse = ErrorResponse,\n> {\n private
|
|
1
|
+
{"version":3,"file":"axios-client.cjs","sources":["../../../../../packages/utils/src/api-client/axios-client.ts"],"sourcesContent":["import type { AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios'\nimport type {\n ApiTypeMap,\n BaseErrorResponse,\n BaseSuccessResponse,\n ErrorResponse,\n RequestParams,\n RequestPayload,\n SuccessResponse,\n UrlObjectType,\n} from './types'\nimport { isPlainObject } from '../types'\n\n/**\n * Axios API 响应的统一封装\n * @template W - 是否返回完整响应,true 返回完整响应,false 只返回 data\n * @template T - 响应数据的类型\n * @template S - 自定义成功响应类型\n * @template E - 自定义错误响应类型\n */\nexport interface AxiosUseApiResponse<\n W extends boolean = false,\n T = unknown,\n S extends BaseSuccessResponse<T> = SuccessResponse<T>,\n E extends BaseErrorResponse = ErrorResponse,\n> {\n res: W extends true ? S : T\n error: E | null\n}\n\n/**\n * API 服务类,提供统一的请求处理和错误处理\n * @template T - API 类型映射\n * @template U - URL 配置对象类型\n * @template S - 自定义成功响应类型\n * @template E - 自定义错误响应类型\n *\n * @example\n * ```typescript\n * // 定义 API 类型映射\n * interface UserApi extends ApiTypeMap<UserUrlObject> {\n * '/user/list': {\n * request: { page: number; size: number }\n * response: User[]\n * }\n * }\n *\n * // 使用默认响应类型\n * const api = new ApiService<UserApi, UserUrlObject>(axios.create(), false)\n *\n * // 使用自定义响应类型\n * interface CustomSuccessResponse<T> {\n * status: number\n * result: T\n * msg: string\n * }\n *\n * interface CustomErrorResponse {\n * status: number\n * result: null\n * msg: string\n * }\n *\n * const customApi = new ApiService<\n * UserApi,\n * UserUrlObject,\n * CustomSuccessResponse<unknown>,\n * CustomErrorResponse\n * >(axios.create(), false)\n *\n * // 发起请求\n * const { res, error } = await api.useApi({\n * url: '/user/list',\n * method: 'GET',\n * params: { page: 1, size: 10 }\n * })\n * ```\n */\nexport class ApiService<\n T extends ApiTypeMap<U>,\n U extends UrlObjectType,\n S extends BaseSuccessResponse = SuccessResponse<unknown>,\n E extends BaseErrorResponse = ErrorResponse,\n> {\n private toSuccessEnvelope<R>(response: S): S & BaseSuccessResponse<R> {\n return response as S & BaseSuccessResponse<R>\n }\n\n /**\n * 构造函数,实现单例模式\n * @param apiInstance - Axios 实例\n * @param isWholeResponse - 是否返回完整响应\n */\n constructor(\n private apiInstance: AxiosInstance,\n private isWholeResponse: boolean,\n ) {}\n\n /**\n * 判断是否为业务错误\n * @param obj - 待判断的对象\n */\n private isBusinessError(obj: E): boolean {\n return isPlainObject(obj)\n && typeof (obj as any).message === 'string'\n && (typeof (obj as any).code === 'number' || typeof (obj as any).code === 'string')\n && String((obj as any).code) !== '0'\n }\n\n /**\n * 判断是否为 Axios 响应对象\n * @param value - 待判断的值\n */\n private isAxiosResponse(value: any): value is AxiosResponse {\n return isPlainObject(value)\n && value.data !== undefined\n && this.isBusinessError(value.data)\n && value.status !== undefined\n && value.statusText !== undefined\n && value.headers !== undefined\n && value.config !== undefined\n && value.request !== undefined\n }\n\n /**\n * 判断是否为错误响应\n * @param value - 待判断的值\n */\n private isErrorResponse(value: any): value is E {\n return isPlainObject(value)\n && 'code' in value\n && 'message' in value\n && String(value.code) !== '0'\n }\n\n /**\n * 发起 API 请求,返回统一的响应格式 { res, error }\n * @template K - URL 配置对象类型\n * @template W - 是否返回完整响应,true 返回 SuccessResponse,false 只返回 data\n * @param axiosConfig - Axios 请求配置\n * @param params - 请求参数(GET 请求会自动转为 params,其他方法转为 data)\n * @param isWholeResponse - 是否返回完整响应,默认使用实例配置\n * @returns Promise<UseApiResponse<W, T, S, E>> - 包含 res 和 error 的统一响应对象\n */\n public useApi = async <\n K extends U,\n W extends boolean = false,\n >(\n axiosConfig: Omit<AxiosRequestConfig<RequestPayload<T[K['url']]['request']>>, 'params'> & K & {\n params?: RequestParams<T[K['url']]['request']>\n },\n params?: RequestParams<T[K['url']]['request']>,\n isWholeResponse: W = this.isWholeResponse as W,\n ): Promise<AxiosUseApiResponse<W, T[K['url']]['response'], S & BaseSuccessResponse<T[K['url']]['response']>, E>> => {\n let res: AxiosUseApiResponse<W, T[K['url']]['response'], S & BaseSuccessResponse<T[K['url']]['response']>, E>['res'] | null = null\n let error: AxiosUseApiResponse<W, T[K['url']]['response'], S & BaseSuccessResponse<T[K['url']]['response']>, E>['error'] = null\n\n try {\n // 处理请求配置\n const config = {\n ...axiosConfig,\n ...(params ? (axiosConfig.method && ['GET'].includes(axiosConfig.method.toUpperCase()) ? { params } : { data: params }) : {}),\n }\n\n // 处理代理前缀\n config.url = (config.proxyPrefix || '') + axiosConfig.url\n delete config.proxyPrefix\n\n // 发起请求\n const response = await this.apiInstance<S & BaseSuccessResponse<T[K['url']]['response']>>(config)\n const successResponse = this.toSuccessEnvelope<T[K['url']]['response']>(response.data)\n res = isWholeResponse\n ? successResponse\n : successResponse.data\n }\n catch (err: any) {\n const responseError = err?.response?.data\n\n if (this.isErrorResponse(responseError)) {\n error = responseError\n }\n else if (this.isAxiosResponse(err)) {\n error = err.data as E\n }\n else if (this.isErrorResponse(err)) {\n error = err\n }\n else {\n console.error(err)\n }\n }\n\n return { res: res!, error }\n }\n\n /**\n * 发起 API 请求\n * @template K - URL 配置对象类型\n * @template W - 是否返回完整响应\n * @param axiosConfig - Axios 请求配置\n * @param params - 请求参数\n * @param isWholeResponse - 是否返回完整响应,默认使用实例配置\n * @returns 根据 isWholeResponse 返回完整响应或解包后的数据\n */\n public apiClient = async <K extends U, W extends boolean = false>(\n axiosConfig: Omit<AxiosRequestConfig<RequestPayload<T[K['url']]['request']>>, 'params'> & K & {\n params?: RequestParams<T[K['url']]['request']>\n },\n params?: RequestParams<T[K['url']]['request']>,\n isWholeResponse?: W,\n ): Promise<W extends true ? AxiosResponse<T[K['url']]['response']> : T[K['url']]['response']> => {\n const useWholeResponse = isWholeResponse ?? this.isWholeResponse\n // 处理请求配置\n const config = {\n ...axiosConfig,\n ...(params ? (axiosConfig.method && ['GET'].includes(axiosConfig.method.toUpperCase()) ? { params } : { data: params }) : {}),\n }\n\n // 处理代理前缀\n if (config.proxyPrefix) {\n config.url = (config.proxyPrefix || '') + axiosConfig.url\n delete config.proxyPrefix\n }\n\n // 发起请求,利用 axios 的第二个泛型参数 R 控制解包\n if (useWholeResponse) {\n return await this.apiInstance<T[K['url']]['response']>(config)\n }\n else {\n return await this.apiInstance<any, T[K['url']]['response']>(config)\n }\n }\n}\n"],"names":["constructor","apiInstance","isWholeResponse","_this","this","__publicField","async","axiosConfig","params","arguments","length","undefined","res","error","config","method","includes","toUpperCase","data","url","proxyPrefix","response","successResponse","toSuccessEnvelope","err","responseError","isErrorResponse","isAxiosResponse","isBusinessError","obj","isPlainObject","message","code","String","value","status","statusText","headers","request"],"mappings":"oNA8EO,MAeLA,WAAAA,CACUC,EACAC,GACR,IAAAC,EAAAC,KAFQA,KAAAH,YAAAA,EACAG,KAAAF,gBAAAA,EAiDVG,EAAAD,KAAO,SAASE,eAIdC,EAGAC,GAEkH,IADlHN,EAAAO,UAAAC,OAAA,QAAAC,IAAAF,UAAA,GAAAA,UAAA,GAAqBN,EAAKD,gBAEtBU,EAA0H,KAC1HC,EAAuH,KAE3H,IAEE,MAAMC,EAAS,IACVP,KACCC,EAAUD,EAAYQ,QAAU,CAAC,OAAOC,SAAST,EAAYQ,OAAOE,eAAiB,CAAET,UAAW,CAAEU,KAAMV,GAAY,CAAA,GAI5HM,EAAOK,KAAOL,EAAOM,aAAe,IAAMb,EAAYY,WAC/CL,EAAOM,YAGd,MAAMC,QAAiBlB,EAAKF,YAA8Da,GACpFQ,EAAkBnB,EAAKoB,kBAA2CF,EAASH,MACjFN,EAAMV,EACFoB,EACAA,EAAgBJ,IACtB,OACOM,GACL,MAAMC,EAAgBD,GAAKH,UAAUH,KAEjCf,EAAKuB,gBAAgBD,GACvBZ,EAAQY,EAEDtB,EAAKwB,gBAAgBH,GAC5BX,EAAQW,EAAIN,KAELf,EAAKuB,gBAAgBF,KAC5BX,EAAQW,EAKZ,CAEA,MAAO,CAAEZ,MAAWC,QACtB,GAWAR,EAAAD,KAAO,YAAYE,MACjBC,EAGAC,EACAN,KAEyBA,GAAmBE,KAAKF,gBAAjD,MAEMY,EAAS,IACVP,KACCC,EAAUD,EAAYQ,QAAU,CAAC,OAAOC,SAAST,EAAYQ,OAAOE,eAAiB,CAAET,UAAW,CAAEU,KAAMV,GAAY,CAAA,GAU5H,OANIM,EAAOM,cACTN,EAAOK,KAAOL,EAAOM,aAAe,IAAMb,EAAYY,WAC/CL,EAAOM,mBAKDhB,KAAKH,YAAqCa,IAlIxD,CAZKS,iBAAAA,CAAqBF,GAC3B,OAAOA,CACT,CAgBQO,eAAAA,CAAgBC,GACtB,OAAOC,EAAAA,cAAcD,IACgB,iBAAxBA,EAAYE,UACU,iBAArBF,EAAYG,MAAkD,iBAArBH,EAAYG,OAChC,MAA9BC,OAAQJ,EAAYG,KAC3B,CAMQL,eAAAA,CAAgBO,GACtB,OAAOJ,gBAAcI,SACD,IAAfA,EAAMhB,MACNd,KAAKwB,gBAAgBM,EAAMhB,YACV,IAAjBgB,EAAMC,aACe,IAArBD,EAAME,iBACY,IAAlBF,EAAMG,cACW,IAAjBH,EAAMpB,aACY,IAAlBoB,EAAMI,OACb,CAMQZ,eAAAA,CAAgBQ,GACtB,OAAOJ,gBAAcI,IAChB,SAAUA,GACV,YAAaA,GACU,MAAvBD,OAAOC,EAAMF,KACpB"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var t=Object.defineProperty,e=(e,s,r)=>((e,s,r)=>s in e?t(e,s,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[s]=r)(e,"symbol"!=typeof s?s+"":s,r);class s extends Error{constructor(t,s,r,
|
|
1
|
+
"use strict";var t=Object.defineProperty,e=(e,s,r)=>((e,s,r)=>s in e?t(e,s,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[s]=r)(e,"symbol"!=typeof s?s+"":s,r);class s extends Error{constructor(t,s,r,a){super(s),e(this,"code"),e(this,"details"),e(this,"status"),this.name="ApiError",this.code=t,this.status=r,this.details=a}}exports.ApiError=s,exports.FetchApiService=class{constructor(t){this.client=t,e(this,"useApi",async(t,e)=>{let s=null,r=null;try{const{url:r,proxyPrefix:a,signal:o,...i}=t,n=(a||"")+r,c={...i,signal:o};e&&("GET"===t.method.toUpperCase()?c.searchParams=e:c.json=e);const l=await this.client(n,c);s=(l.headers.get("content-type")??"").toLowerCase().includes("text/event-stream")?l.body:await l.json()}catch(t){r=t}return{res:s,error:r}}),e(this,"apiClient",async(t,e)=>{const{url:s,method:r,proxyPrefix:a,signal:o,...i}=t,n=(a||"")+s,c={...i,method:r.toLowerCase(),signal:o,throwOnError:!0};e&&("GET"===r.toUpperCase()?c.searchParams=e:c.json=e);const l=await this.client(n,c);return(l.headers.get("content-type")??"").toLowerCase().includes("text/event-stream")?l.body:await l.json()})}};
|
|
2
2
|
//# sourceMappingURL=fetch-client.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-client.cjs","sources":["../../../../../packages/utils/src/api-client/fetch-client.ts"],"sourcesContent":["import type { Options } from 'ky'\nimport type {\n ApiTypeMap,\n BaseErrorResponse,\n ErrorResponse,\n RequestParams,\n RequestPayload,\n UrlObjectType,\n UseApiResponse,\n} from './types'\n\n/**\n * 扩展的 API 请求配置选项\n */\ninterface ExtendedOptions extends Options {\n /** 内部标记:是否为重试请求 @internal */\n _isRetry?: boolean\n /** 静默模式:401 错误不弹出登录弹窗 @default false */\n _silent?: boolean\n /** 操作上下文:用于登录弹窗说明 */\n _actionContext?: string\n /** 错误处理策略:是否抛出错误 @default false */\n throwOnError?: boolean\n}\n\n/**\n * 自定义 API 错误类\n */\nexport class ApiError extends Error {\n code: string\n details?: string\n status: number\n\n constructor(code: string, message: string, status: number, details?: string) {\n super(message)\n this.name = 'ApiError'\n this.code = code\n this.status = status\n this.details = details\n }\n}\n\n// ============================================================================\n// Fetch API 服务类\n// ============================================================================\n\n/**\n * Fetch API 服务类,基于 ky 提供统一的请求处理\n */\nexport class FetchApiService<\n T extends ApiTypeMap<U>,\n U extends UrlObjectType,\n E extends BaseErrorResponse = ErrorResponse,\n> {\n
|
|
1
|
+
{"version":3,"file":"fetch-client.cjs","sources":["../../../../../packages/utils/src/api-client/fetch-client.ts"],"sourcesContent":["import type { Options } from 'ky'\nimport type {\n ApiTypeMap,\n BaseErrorResponse,\n ErrorResponse,\n RequestParams,\n RequestPayload,\n UrlObjectType,\n UseApiResponse,\n} from './types'\n\n/**\n * 扩展的 API 请求配置选项\n */\ninterface ExtendedOptions extends Options {\n /** 内部标记:是否为重试请求 @internal */\n _isRetry?: boolean\n /** 静默模式:401 错误不弹出登录弹窗 @default false */\n _silent?: boolean\n /** 操作上下文:用于登录弹窗说明 */\n _actionContext?: string\n /** 错误处理策略:是否抛出错误 @default false */\n throwOnError?: boolean\n /** 请求取消信号,用于中止请求 */\n signal?: AbortSignal\n}\n\n/**\n * 自定义 API 错误类\n */\nexport class ApiError extends Error {\n code: string\n details?: string\n status: number\n\n constructor(code: string, message: string, status: number, details?: string) {\n super(message)\n this.name = 'ApiError'\n this.code = code\n this.status = status\n this.details = details\n }\n}\n\n// ============================================================================\n// Fetch API 服务类\n// ============================================================================\n\n/**\n * Fetch API 服务类,基于 ky 提供统一的请求处理\n */\nexport class FetchApiService<\n T extends ApiTypeMap<U>,\n U extends UrlObjectType,\n E extends BaseErrorResponse = ErrorResponse,\n> {\n constructor(private client: any) {}\n\n /**\n * 发起 API 请求,返回统一的响应格式 { res, error }\n * @template K - URL 配置对象类型\n * @param config - 请求配置(单参数时使用 ky 原生参数如 searchParams/json)\n * @param requestData - 请求数据(双参数时自动根据 method 处理)\n * @returns Promise<{ res, error }> - 统一响应格式\n */\n public useApi = async <K extends U>(\n config: Omit<ExtendedOptions, 'method'> & K,\n requestData?: RequestParams<T[K['url']]['request']> | RequestPayload<T[K['url']]['request']>,\n ): Promise<UseApiResponse<T[K['url']]['response'], E>> => {\n let res: T[K['url']]['response'] | null = null\n let error: E | null = null\n\n try {\n // 构建请求配置\n const { url, proxyPrefix, signal, ...restOptions } = config\n const fullUrl = (proxyPrefix || '') + url\n\n const options: ExtendedOptions = {\n ...restOptions,\n signal, // 传递 signal 给 ky\n }\n\n // 双参数调用:自动根据 method 处理\n if (requestData) {\n if (config.method.toUpperCase() === 'GET') {\n options.searchParams = requestData\n }\n else {\n options.json = requestData\n }\n }\n\n // 发起请求\n const response = await this.client(fullUrl, options)\n\n // 处理 SSE 流式响应\n const contentType = response.headers.get('content-type') ?? ''\n if (contentType.toLowerCase().includes('text/event-stream')) {\n res = response.body\n }\n else {\n res = await response.json()\n }\n }\n catch (err: any) {\n // 错误已在 ky hooks 中处理,这里只需捕获\n error = err\n }\n\n return { res, error }\n }\n\n /**\n * 发起 API 请求,直接返回数据或抛出错误\n * @template K - URL 配置对象类型\n * @param config - 请求配置(单参数时使用 ky 原生参数如 searchParams/json)\n * @param requestData - 请求数据(双参数时自动根据 method 处理)\n * @returns Promise<Response> - 直接返回响应数据\n */\n public apiClient = async <K extends U>(\n config: Omit<ExtendedOptions, 'method'> & K,\n requestData?: RequestParams<T[K['url']]['request']> | RequestPayload<T[K['url']]['request']>,\n ): Promise<T[K['url']]['response']> => {\n const { url, method, proxyPrefix, signal, ...restOptions } = config\n const fullUrl = (proxyPrefix || '') + url\n\n const options: ExtendedOptions = {\n ...restOptions,\n method: method.toLowerCase(),\n signal, // 传递 signal 给 ky\n throwOnError: true,\n }\n\n // 双参数调用:自动根据 method 处理\n if (requestData) {\n if (method.toUpperCase() === 'GET') {\n options.searchParams = requestData\n }\n else {\n options.json = requestData\n }\n }\n\n // 发起请求\n const response = await this.client(fullUrl, options)\n\n // 处理 SSE 流式响应\n const contentType = response.headers.get('content-type') ?? ''\n if (contentType.toLowerCase().includes('text/event-stream')) {\n return response.body as any\n }\n\n return await response.json()\n }\n}\n"],"names":["ApiError","Error","constructor","code","message","status","details","super","__publicField","this","name","client","async","config","requestData","res","error","url","proxyPrefix","signal","restOptions","fullUrl","options","method","toUpperCase","searchParams","json","response","headers","get","toLowerCase","includes","body","err","throwOnError"],"mappings":"uKA8BO,MAAMA,UAAiBC,MAK5BC,WAAAA,CAAYC,EAAcC,EAAiBC,EAAgBC,GACzDC,MAAMH,GALRI,EAAAC,KAAA,QACAD,EAAAC,KAAA,WACAD,EAAAC,KAAA,UAIEA,KAAKC,KAAO,WACZD,KAAKN,KAAOA,EACZM,KAAKJ,OAASA,EACdI,KAAKH,QAAUA,CACjB,6CAUK,MAKLJ,WAAAA,CAAoBS,GAAAF,KAAAE,OAAAA,EASpBH,EAAAC,KAAO,SAASG,MACdC,EACAC,KAEA,IAAIC,EAAsC,KACtCC,EAAkB,KAEtB,IAEE,MAAMC,IAAEA,EAAAC,YAAKA,EAAAC,OAAaA,KAAWC,GAAgBP,EAC/CQ,GAAWH,GAAe,IAAMD,EAEhCK,EAA2B,IAC5BF,EACHD,UAIEL,IACkC,QAAhCD,EAAOU,OAAOC,cAChBF,EAAQG,aAAeX,EAGvBQ,EAAQI,KAAOZ,GAKnB,MAAMa,QAAiBlB,KAAKE,OAAOU,EAASC,GAK1CP,GAFkBY,EAASC,QAAQC,IAAI,iBAAmB,IAC5CC,cAAcC,SAAS,qBAC/BJ,EAASK,WAGHL,EAASD,MAEzB,OACOO,GAELjB,EAAQiB,CACV,CAEA,MAAO,CAAElB,MAAKC,WAUhBR,EAAAC,KAAO,YAAYG,MACjBC,EACAC,KAEA,MAAMG,IAAEA,EAAAM,OAAKA,EAAAL,YAAQA,SAAaC,KAAWC,GAAgBP,EACvDQ,GAAWH,GAAe,IAAMD,EAEhCK,EAA2B,IAC5BF,EACHG,OAAQA,EAAOO,cACfX,SACAe,cAAc,GAIZpB,IAC2B,QAAzBS,EAAOC,cACTF,EAAQG,aAAeX,EAGvBQ,EAAQI,KAAOZ,GAKnB,MAAMa,QAAiBlB,KAAKE,OAAOU,EAASC,GAI5C,OADoBK,EAASC,QAAQC,IAAI,iBAAmB,IAC5CC,cAAcC,SAAS,qBAC9BJ,EAASK,WAGLL,EAASD,QAhGU"}
|
package/lib/src/argo-log.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var i=Object.defineProperty,t=(t,s,e)=>((t,s,e)=>s in t?i(t,s,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[s]=e)(t,"symbol"!=typeof s?s+"":s,e);const s=class i{constructor(){t(this,"sdkPromise",null),t(this,"sdk",null)}static getInstance(){return i.instance||(i.instance=new i),i.instance}async loadSDK(){if(this.sdk)return this.sdk;if(this.sdkPromise)return this.sdkPromise;if("undefined"==typeof window)return null;const
|
|
1
|
+
"use strict";var i=Object.defineProperty,t=(t,s,e)=>((t,s,e)=>s in t?i(t,s,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[s]=e)(t,"symbol"!=typeof s?s+"":s,e);function s(i){if(Array.isArray(i))return`[${i.map(i=>s(i)).join(",")}]`;if(i&&"object"==typeof i){const t=i;return`{${Object.keys(t).sort().map(i=>`${JSON.stringify(i)}:${s(t[i])}`).join(",")}}`}return JSON.stringify(i)}const e=class i{constructor(){t(this,"sdkPromise",null),t(this,"sdk",null),t(this,"usingMock",!1)}static getInstance(){return i.instance||(i.instance=new i),i.instance}async loadSDK(){let i=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(this.sdk)return this.sdk;if(this.sdkPromise)return this.sdkPromise;if("undefined"==typeof window)return null;const t=window;return t.__argoLogSDKPromise?(this.sdkPromise=t.__argoLogSDKPromise,this.sdk=await this.sdkPromise,this.sdk||(this.sdkPromise=null,delete t.__argoLogSDKPromise),this.sdk):(this.sdkPromise=this.createSDKPromise(i),t.__argoLogSDKPromise=this.sdkPromise,this.sdk=await this.sdkPromise,this.sdk||(this.sdkPromise=null,delete t.__argoLogSDKPromise),this.sdk)}async createSDKPromise(i){try{const i=await import("ans-javascript-sdk");return this.usingMock=!1,i.default}catch(t){return i?(this.usingMock=!0,this.createMockSDK()):(this.usingMock=!1,null)}}createMockSDK(){return{init:i=>{},track:(i,t)=>{},profileSet:i=>{},alias:i=>{}}}getSDK(){return this.sdk}isLoaded(){return null!==this.sdk}isUsingMock(){return this.usingMock}};t(e,"instance");const n=e.getInstance(),r=class i{constructor(e){t(this,"AnalysysAgent",null),t(this,"pendingQueue",[]),t(this,"isInitialized",!1),t(this,"isInitializing",!1),t(this,"initSettled",!1),t(this,"initializationPromise",null),t(this,"track",(i,t)=>{const s=()=>{i&&this.AnalysysAgent&&this.AnalysysAgent.track(i,t)};if(this.isInitialized||this.initSettled){if(this.isInitialized)try{s()}catch(i){}}else this.pendingQueue.push(s)}),t(this,"setProfile",i=>{const t=()=>{i&&this.AnalysysAgent&&this.AnalysysAgent.profileSet(i)};if(this.isInitialized||this.initSettled){if(this.isInitialized)try{t()}catch(i){}}else this.pendingQueue.push(t)}),t(this,"setAlias",i=>{const t=()=>{i&&this.AnalysysAgent&&this.AnalysysAgent.alias(i)};if(this.isInitialized||this.initSettled){if(this.isInitialized)try{t()}catch(i){}}else this.pendingQueue.push(t)});try{if("undefined"==typeof window)return this.initSettled=!0,this;if(!e)return this.initSettled=!0,this;const t=s(e),n=i.instances.get(t);if(n)return n;i.instances.set(t,this),this.initializationPromise=this.initializeSDK(e,t)}catch(i){this.initSettled=!0}return this}async initializeSDK(t,s){if(this.isInitializing||this.isInitialized)return this.isInitialized;this.isInitializing=!0;try{const e=await n.loadSDK(Boolean(t.allowMock));if(e){this.AnalysysAgent=e;const{allowMock:i,...s}=t;return e.init(s),this.isInitialized=!0,this.processPendingQueue(),!0}return i.instances.delete(s),this.pendingQueue=[],!1}catch(t){return i.instances.delete(s),this.pendingQueue=[],!1}finally{this.isInitializing=!1,this.initSettled=!0}}processPendingQueue(){this.pendingQueue.forEach(i=>i()),this.pendingQueue=[]}get initialized(){return this.isInitialized}get usingMock(){return this.isInitialized&&n.isUsingMock()}async waitForInitialization(){return!!this.isInitialized||(this.initializationPromise??!1)}};t(r,"instances",new Map);let a=r;exports.ArgoLog=a;
|
|
2
2
|
//# sourceMappingURL=argo-log.cjs.map
|
package/lib/src/argo-log.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"argo-log.cjs","sources":["../../../../packages/utils/src/argo-log.ts"],"sourcesContent":["// SDK 配置接口\nexport interface AnalysysConfig {\n encryptType?: number\n debugMode?: number\n appkey: string\n uploadURL: string\n autoProfile?: boolean\n autoTrack?: boolean\n}\n\n// SDK 实例接口\nexport interface AnalysysAgentInterface {\n init: (config: AnalysysConfig) => void\n track: (eventName: string, properties?: Record<string, any>) => void\n profileSet: (properties: Record<string, any>) => void\n alias: (aliasId: string) => void\n}\n\n// 全局窗口类型扩展\ndeclare global {\n interface Window {\n __argoLogSDKPromise?: Promise<AnalysysAgentInterface | null>\n }\n}\n\n// 定义配置项的类型别名,保持向后兼容\nexport interface EnvironmentConfig extends AnalysysConfig {}\n\n/**\n * SDK 加载器 - 统一管理 SDK 的加载和初始化\n */\nclass SDKLoader {\n private static instance: SDKLoader\n private sdkPromise: Promise<AnalysysAgentInterface | null> | null = null\n private sdk: AnalysysAgentInterface | null = null\n\n private constructor() {}\n\n static getInstance(): SDKLoader {\n if (!SDKLoader.instance) {\n SDKLoader.instance = new SDKLoader()\n }\n return SDKLoader.instance\n }\n\n /**\n * 加载 SDK\n */\n async loadSDK(): Promise<AnalysysAgentInterface | null> {\n // 如果已经加载过,直接返回\n if (this.sdk) {\n return this.sdk\n }\n\n // 如果正在加载,等待加载完成\n if (this.sdkPromise) {\n return this.sdkPromise\n }\n\n // 检查浏览器环境\n if (typeof window === 'undefined') {\n console.warn('[ArgoLog] 仅支持浏览器环境')\n return null\n }\n\n // 检查是否已有全局 Promise\n const windowAny = window as any\n if (windowAny.__argoLogSDKPromise) {\n this.sdkPromise = windowAny.__argoLogSDKPromise\n this.sdk = await this.sdkPromise\n return this.sdk\n }\n\n // 创建新的加载 Promise\n this.sdkPromise = this.createSDKPromise()\n windowAny.__argoLogSDKPromise = this.sdkPromise\n\n this.sdk = await this.sdkPromise\n return this.sdk\n }\n\n /**\n * 创建 SDK 加载 Promise\n */\n private async createSDKPromise(): Promise<AnalysysAgentInterface | null> {\n try {\n // 尝试动态导入\n const module = await import('ans-javascript-sdk')\n return module.default as AnalysysAgentInterface\n }\n catch (error) {\n // 在 docs 环境中,可能无法加载 SDK,提供一个 mock 实现\n console.warn('[ArgoLog] SDK 加载失败,使用 mock 实现:', error)\n return this.createMockSDK()\n }\n }\n\n /**\n * 创建 Mock SDK - 用于开发和文档环境\n */\n private createMockSDK(): AnalysysAgentInterface {\n return {\n init: (config) => {\n console.log('[ArgoLog Mock] SDK 初始化:', config)\n },\n track: (eventName, properties) => {\n console.log('[ArgoLog Mock] 追踪事件:', eventName, properties)\n },\n profileSet: (properties) => {\n console.log('[ArgoLog Mock] 设置用户画像:', properties)\n },\n alias: (aliasId) => {\n console.log('[ArgoLog Mock] 设置用户别名:', aliasId)\n },\n }\n }\n\n /**\n * 获取已加载的 SDK\n */\n getSDK(): AnalysysAgentInterface | null {\n return this.sdk\n }\n\n /**\n * 检查 SDK 是否已加载\n */\n isLoaded(): boolean {\n return this.sdk !== null\n }\n}\n\n// SDK 加载器单例\nconst sdkLoader = SDKLoader.getInstance()\n\n/**\n * ArgoLog 类 - 用于处理埋点统计的工具类\n *\n * @class ArgoLog\n * @description 基于 AnalysysAgent SDK 封装的埋点工具类,提供了埋点追踪、用户画像设置和用户别名设置等功能\n * @example\n * ```typescript\n * const argoLog = new ArgoLog({\n * appkey: 'your-app-key',\n * uploadURL: 'your-upload-url'\n * });\n *\n * // 追踪事件\n * argoLog.track('event_name', { key: 'value' });\n * ```\n */\nexport class ArgoLog<T extends EnvironmentConfig = EnvironmentConfig> {\n private static instances = new Map<string, ArgoLog<any>>()\n private AnalysysAgent: AnalysysAgentInterface | null = null\n private pendingQueue: Array<() => void> = []\n private isInitialized = false\n private isInitializing = false\n\n constructor(envConfig: T) {\n try {\n if (typeof window === 'undefined') {\n console.warn('[ArgoLog] 仅支持浏览器环境')\n return this\n }\n\n const configKey = JSON.stringify(envConfig)\n const existingInstance = ArgoLog.instances.get(configKey)\n if (existingInstance) {\n return existingInstance\n }\n\n if (!envConfig) {\n console.error('[ArgoLog] envConfig is required')\n return this\n }\n\n this.initializeSDK(envConfig, configKey)\n }\n catch (error) {\n console.warn('[ArgoLog] Init failed:', error)\n }\n return this\n }\n\n private async initializeSDK(envConfig: T, configKey: string) {\n if (this.isInitializing || this.isInitialized) {\n return\n }\n\n this.isInitializing = true\n\n try {\n // 使用 SDK 加载器加载 SDK\n const sdk = await sdkLoader.loadSDK()\n\n if (sdk) {\n this.AnalysysAgent = sdk\n sdk.init(envConfig)\n this.isInitialized = true\n ArgoLog.instances.set(configKey, this)\n this.processPendingQueue()\n }\n else {\n console.warn('[ArgoLog] SDK 加载失败')\n }\n }\n catch (error) {\n console.warn('[ArgoLog] SDK 初始化失败:', error)\n }\n finally {\n this.isInitializing = false\n }\n }\n\n private processPendingQueue() {\n // SDK 初始化完成后,重放所有暂存的调用\n this.pendingQueue.forEach(fn => fn())\n this.pendingQueue = []\n }\n\n track = (name: string, opt?: Record<string, any>): void => {\n const exec = () => {\n if (!name) {\n console.warn('[ArgoLog] track: name is required')\n return\n }\n if (this.AnalysysAgent) {\n this.AnalysysAgent.track(name, opt)\n }\n }\n\n if (!this.isInitialized) {\n // SDK 未初始化,暂存调用\n this.pendingQueue.push(exec)\n // 静默处理,不显示暂存信息,避免用户困惑\n return\n }\n\n try {\n exec()\n }\n catch (error) {\n console.warn('[ArgoLog] track failed:', error)\n }\n }\n\n setProfile = (info: Record<string, any>): void => {\n const exec = () => {\n if (!info) {\n console.warn('[ArgoLog] setProfile: info is required')\n return\n }\n if (this.AnalysysAgent) {\n this.AnalysysAgent.profileSet(info)\n }\n }\n\n if (!this.isInitialized) {\n this.pendingQueue.push(exec)\n // 静默处理,不显示暂存信息\n return\n }\n\n try {\n exec()\n }\n catch (error) {\n console.warn('[ArgoLog] setProfile failed:', error)\n }\n }\n\n setAlias = (code: string): void => {\n const exec = () => {\n if (!code) {\n console.warn('[ArgoLog] setAlias: code is required')\n return\n }\n if (this.AnalysysAgent) {\n this.AnalysysAgent.alias(code)\n }\n }\n\n if (!this.isInitialized) {\n this.pendingQueue.push(exec)\n // 静默处理,不显示暂存信息\n return\n }\n\n try {\n exec()\n }\n catch (error) {\n console.warn('[ArgoLog] setAlias failed:', error)\n }\n }\n\n /**\n * 获取 SDK 初始化状态\n */\n get initialized(): boolean {\n return this.isInitialized\n }\n\n /**\n * 等待 SDK 初始化完成\n */\n async waitForInitialization(): Promise<boolean> {\n if (this.isInitialized) {\n return true\n }\n\n // 等待最多 5 秒\n const timeout = 5000\n const startTime = Date.now()\n\n while (!this.isInitialized && (Date.now() - startTime) < timeout) {\n await new Promise(resolve => setTimeout(resolve, 100))\n }\n\n return this.isInitialized\n }\n}\n"],"names":["_SDKLoader","constructor","__publicField","this","getInstance","instance","loadSDK","sdk","sdkPromise","window","windowAny","__argoLogSDKPromise","createSDKPromise","import","default","error","createMockSDK","init","config","track","eventName","properties","profileSet","alias","aliasId","getSDK","isLoaded","sdkLoader","_ArgoLog","envConfig","name","opt","exec","AnalysysAgent","isInitialized","pendingQueue","push","info","code","configKey","JSON","stringify","existingInstance","instances","get","initializeSDK","isInitializing","set","processPendingQueue","forEach","fn","initialized","waitForInitialization","startTime","Date","now","Promise","resolve","setTimeout","Map","ArgoLog"],"mappings":"uKA+BA,MAAMA,EAAN,MAAMA,EAKIC,WAAAA,GAHRC,EAAAC,KAAQ,aAA4D,MACpED,EAAAC,KAAQ,MAAqC,KAEtB,CAEvB,kBAAOC,GAIL,OAHKJ,EAAUK,WACbL,EAAUK,SAAW,IAAIL,GAEpBA,EAAUK,QACnB,CAKA,aAAMC,GAEJ,GAAIH,KAAKI,IACP,OAAOJ,KAAKI,IAId,GAAIJ,KAAKK,WACP,OAAOL,KAAKK,WAId,GAAsB,oBAAXC,OAET,OAAO,KAIT,MAAMC,EAAYD,OAClB,OAAIC,EAAUC,qBACZR,KAAKK,WAAaE,EAAUC,oBAC5BR,KAAKI,UAAYJ,KAAKK,WACfL,KAAKI,MAIdJ,KAAKK,WAAaL,KAAKS,mBACvBF,EAAUC,oBAAsBR,KAAKK,WAErCL,KAAKI,UAAYJ,KAAKK,WACfL,KAAKI,IACd,CAKA,sBAAcK,GACZ,IAGE,aADqBC,OAAO,uBACdC,OAChB,OACOC,GAGL,OAAOZ,KAAKa,eACd,CACF,CAKQA,aAAAA,GACN,MAAO,CACLC,KAAOC,MAGPC,MAAOA,CAACC,EAAWC,OAGnBC,WAAaD,MAGbE,MAAQC,MAIZ,CAKAC,MAAAA,GACE,OAAOtB,KAAKI,GACd,CAKAmB,QAAAA,GACE,OAAoB,OAAbvB,KAAKI,GACd,GAjGAL,EADIF,EACW,YAqGjB,MAAM2B,EAtGN3B,EAsG4BI,cAkBfwB,EAAN,MAAMA,EAOX3B,WAAAA,CAAY4B,GALZ3B,EAAAC,KAAQ,gBAA+C,MACvDD,EAAAC,KAAQ,eAAkC,IAC1CD,EAAAC,KAAQ,iBAAgB,GACxBD,EAAAC,KAAQ,kBAAiB,GAgEzBD,EAAAC,KAAA,QAAQ,CAAC2B,EAAcC,KACrB,MAAMC,EAAOA,KACNF,GAID3B,KAAK8B,eACP9B,KAAK8B,cAAcd,MAAMW,EAAMC,IAInC,GAAK5B,KAAK+B,cAOV,IACEF,GACF,OACOjB,GAEP,MAVEZ,KAAKgC,aAAaC,KAAKJ,KAa3B9B,EAAAC,KAAA,aAAckC,IACZ,MAAML,EAAOA,KACNK,GAIDlC,KAAK8B,eACP9B,KAAK8B,cAAcX,WAAWe,IAIlC,GAAKlC,KAAK+B,cAMV,IACEF,GACF,OACOjB,GAEP,MAVEZ,KAAKgC,aAAaC,KAAKJ,KAa3B9B,EAAAC,KAAA,WAAYmC,IACV,MAAMN,EAAOA,KACNM,GAIDnC,KAAK8B,eACP9B,KAAK8B,cAAcV,MAAMe,IAI7B,GAAKnC,KAAK+B,cAMV,IACEF,GACF,OACOjB,GAEP,MAVEZ,KAAKgC,aAAaC,KAAKJ,KA5HzB,IACE,GAAsB,oBAAXvB,OAET,OAAON,KAGT,MAAMoC,EAAYC,KAAKC,UAAUZ,GAC3Ba,EAAmBd,EAAQe,UAAUC,IAAIL,GAC/C,GAAIG,EACF,OAAOA,EAGT,IAAKb,EAEH,OAAO1B,KAGTA,KAAK0C,cAAchB,EAAWU,EAChC,OACOxB,GAEP,CACA,OAAOZ,IACT,CAEA,mBAAc0C,CAAchB,EAAcU,GACxC,IAAIpC,KAAK2C,iBAAkB3C,KAAK+B,cAAhC,CAIA/B,KAAK2C,gBAAiB,EAEtB,IAEE,MAAMvC,QAAYoB,EAAUrB,UAExBC,IACFJ,KAAK8B,cAAgB1B,EACrBA,EAAIU,KAAKY,GACT1B,KAAK+B,eAAgB,EACrBN,EAAQe,UAAUI,IAAIR,EAAWpC,MACjCA,KAAK6C,sBAKT,OACOjC,GAEP,CAAA,QAEEZ,KAAK2C,gBAAiB,CACxB,CAxBA,CAyBF,CAEQE,mBAAAA,GAEN7C,KAAKgC,aAAac,QAAQC,GAAMA,KAChC/C,KAAKgC,aAAe,EACtB,CAiFA,eAAIgB,GACF,OAAOhD,KAAK+B,aACd,CAKA,2BAAMkB,GACJ,GAAIjD,KAAK+B,cACP,OAAO,EAIT,MACMmB,EAAYC,KAAKC,MAEvB,MAAQpD,KAAK+B,eAAkBoB,KAAKC,MAAQF,EAH5B,WAIR,IAAIG,QAAQC,GAAWC,WAAWD,EAAS,MAGnD,OAAOtD,KAAK+B,aACd,GAxKAhC,EADW0B,EACI,YAAY,IAAI+B,KAD1B,IAAMC,EAANhC"}
|
|
1
|
+
{"version":3,"file":"argo-log.cjs","sources":["../../../../packages/utils/src/argo-log.ts"],"sourcesContent":["// SDK 配置接口\nexport interface AnalysysConfig {\n encryptType?: number\n debugMode?: number\n appkey: string\n uploadURL: string\n autoProfile?: boolean\n autoTrack?: boolean\n}\n\nexport interface EnvironmentConfig extends AnalysysConfig {\n allowMock?: boolean\n}\n\n// SDK 实例接口\nexport interface AnalysysAgentInterface {\n init: (config: AnalysysConfig) => void\n track: (eventName: string, properties?: Record<string, any>) => void\n profileSet: (properties: Record<string, any>) => void\n alias: (aliasId: string) => void\n}\n\n// 全局窗口类型扩展\ndeclare global {\n interface Window {\n __argoLogSDKPromise?: Promise<AnalysysAgentInterface | null>\n }\n}\n\nfunction stableSerialize(value: unknown): string {\n if (Array.isArray(value)) {\n return `[${value.map(item => stableSerialize(item)).join(',')}]`\n }\n\n if (value && typeof value === 'object') {\n const objectValue = value as Record<string, unknown>\n const keys = Object.keys(objectValue).sort()\n return `{${keys.map(key => `${JSON.stringify(key)}:${stableSerialize(objectValue[key])}`).join(',')}}`\n }\n\n return JSON.stringify(value)\n}\n\n/**\n * SDK 加载器 - 统一管理 SDK 的加载和初始化\n */\nclass SDKLoader {\n private static instance: SDKLoader\n private sdkPromise: Promise<AnalysysAgentInterface | null> | null = null\n private sdk: AnalysysAgentInterface | null = null\n private usingMock = false\n\n private constructor() {}\n\n static getInstance(): SDKLoader {\n if (!SDKLoader.instance) {\n SDKLoader.instance = new SDKLoader()\n }\n return SDKLoader.instance\n }\n\n /**\n * 加载 SDK\n */\n async loadSDK(allowMock = false): Promise<AnalysysAgentInterface | null> {\n // 如果已经加载过,直接返回\n if (this.sdk) {\n return this.sdk\n }\n\n // 如果正在加载,等待加载完成\n if (this.sdkPromise) {\n return this.sdkPromise\n }\n\n // 检查浏览器环境\n if (typeof window === 'undefined') {\n console.warn('[ArgoLog] 仅支持浏览器环境')\n return null\n }\n\n // 检查是否已有全局 Promise\n const windowAny = window as any\n if (windowAny.__argoLogSDKPromise) {\n this.sdkPromise = windowAny.__argoLogSDKPromise\n this.sdk = await this.sdkPromise\n if (!this.sdk) {\n this.sdkPromise = null\n delete windowAny.__argoLogSDKPromise\n }\n return this.sdk\n }\n\n // 创建新的加载 Promise\n this.sdkPromise = this.createSDKPromise(allowMock)\n windowAny.__argoLogSDKPromise = this.sdkPromise\n\n this.sdk = await this.sdkPromise\n if (!this.sdk) {\n this.sdkPromise = null\n delete windowAny.__argoLogSDKPromise\n }\n return this.sdk\n }\n\n /**\n * 创建 SDK 加载 Promise\n */\n private async createSDKPromise(allowMock: boolean): Promise<AnalysysAgentInterface | null> {\n try {\n // 尝试动态导入\n const module = await import('ans-javascript-sdk')\n this.usingMock = false\n return module.default as AnalysysAgentInterface\n }\n catch (error) {\n if (allowMock) {\n console.warn('[ArgoLog] SDK 加载失败,使用 mock 实现:', error)\n this.usingMock = true\n return this.createMockSDK()\n }\n console.warn('[ArgoLog] SDK 加载失败:', error)\n this.usingMock = false\n return null\n }\n }\n\n /**\n * 创建 Mock SDK - 用于开发和文档环境\n */\n private createMockSDK(): AnalysysAgentInterface {\n return {\n init: (config) => {\n console.log('[ArgoLog Mock] SDK 初始化:', config)\n },\n track: (eventName, properties) => {\n console.log('[ArgoLog Mock] 追踪事件:', eventName, properties)\n },\n profileSet: (properties) => {\n console.log('[ArgoLog Mock] 设置用户画像:', properties)\n },\n alias: (aliasId) => {\n console.log('[ArgoLog Mock] 设置用户别名:', aliasId)\n },\n }\n }\n\n /**\n * 获取已加载的 SDK\n */\n getSDK(): AnalysysAgentInterface | null {\n return this.sdk\n }\n\n /**\n * 检查 SDK 是否已加载\n */\n isLoaded(): boolean {\n return this.sdk !== null\n }\n\n isUsingMock(): boolean {\n return this.usingMock\n }\n}\n\n// SDK 加载器单例\nconst sdkLoader = SDKLoader.getInstance()\n\n/**\n * ArgoLog 类 - 用于处理埋点统计的工具类\n *\n * @class ArgoLog\n * @description 基于 AnalysysAgent SDK 封装的埋点工具类,提供了埋点追踪、用户画像设置和用户别名设置等功能\n * @example\n * ```typescript\n * const argoLog = new ArgoLog({\n * appkey: 'your-app-key',\n * uploadURL: 'your-upload-url'\n * });\n *\n * // 追踪事件\n * argoLog.track('event_name', { key: 'value' });\n * ```\n */\nexport class ArgoLog<T extends EnvironmentConfig = EnvironmentConfig> {\n private static instances = new Map<string, ArgoLog<any>>()\n private AnalysysAgent: AnalysysAgentInterface | null = null\n private pendingQueue: Array<() => void> = []\n private isInitialized = false\n private isInitializing = false\n private initSettled = false\n private initializationPromise: Promise<boolean> | null = null\n\n constructor(envConfig: T) {\n try {\n if (typeof window === 'undefined') {\n console.warn('[ArgoLog] 仅支持浏览器环境')\n this.initSettled = true\n return this\n }\n\n if (!envConfig) {\n console.error('[ArgoLog] envConfig is required')\n this.initSettled = true\n return this\n }\n\n const configKey = stableSerialize(envConfig)\n const existingInstance = ArgoLog.instances.get(configKey)\n if (existingInstance) {\n return existingInstance\n }\n\n ArgoLog.instances.set(configKey, this)\n this.initializationPromise = this.initializeSDK(envConfig, configKey)\n }\n catch (error) {\n console.warn('[ArgoLog] Init failed:', error)\n this.initSettled = true\n }\n return this\n }\n\n private async initializeSDK(envConfig: T, configKey: string): Promise<boolean> {\n if (this.isInitializing || this.isInitialized) {\n return this.isInitialized\n }\n\n this.isInitializing = true\n\n try {\n // 使用 SDK 加载器加载 SDK\n const sdk = await sdkLoader.loadSDK(Boolean(envConfig.allowMock))\n\n if (sdk) {\n this.AnalysysAgent = sdk\n const { allowMock: _allowMock, ...sdkConfig } = envConfig\n sdk.init(sdkConfig)\n this.isInitialized = true\n this.processPendingQueue()\n return true\n }\n\n ArgoLog.instances.delete(configKey)\n this.pendingQueue = []\n return false\n }\n catch (error) {\n console.warn('[ArgoLog] SDK 初始化失败:', error)\n ArgoLog.instances.delete(configKey)\n this.pendingQueue = []\n return false\n }\n finally {\n this.isInitializing = false\n this.initSettled = true\n }\n }\n\n private processPendingQueue() {\n // SDK 初始化完成后,重放所有暂存的调用\n this.pendingQueue.forEach(fn => fn())\n this.pendingQueue = []\n }\n\n track = (name: string, opt?: Record<string, any>): void => {\n const exec = () => {\n if (!name) {\n console.warn('[ArgoLog] track: name is required')\n return\n }\n if (this.AnalysysAgent) {\n this.AnalysysAgent.track(name, opt)\n }\n }\n\n if (!this.isInitialized && !this.initSettled) {\n // SDK 未初始化,暂存调用\n this.pendingQueue.push(exec)\n // 静默处理,不显示暂存信息,避免用户困惑\n return\n }\n\n if (!this.isInitialized) {\n console.warn('[ArgoLog] track skipped: SDK 未初始化')\n return\n }\n\n try {\n exec()\n }\n catch (error) {\n console.warn('[ArgoLog] track failed:', error)\n }\n }\n\n setProfile = (info: Record<string, any>): void => {\n const exec = () => {\n if (!info) {\n console.warn('[ArgoLog] setProfile: info is required')\n return\n }\n if (this.AnalysysAgent) {\n this.AnalysysAgent.profileSet(info)\n }\n }\n\n if (!this.isInitialized && !this.initSettled) {\n this.pendingQueue.push(exec)\n // 静默处理,不显示暂存信息\n return\n }\n\n if (!this.isInitialized) {\n console.warn('[ArgoLog] setProfile skipped: SDK 未初始化')\n return\n }\n\n try {\n exec()\n }\n catch (error) {\n console.warn('[ArgoLog] setProfile failed:', error)\n }\n }\n\n setAlias = (code: string): void => {\n const exec = () => {\n if (!code) {\n console.warn('[ArgoLog] setAlias: code is required')\n return\n }\n if (this.AnalysysAgent) {\n this.AnalysysAgent.alias(code)\n }\n }\n\n if (!this.isInitialized && !this.initSettled) {\n this.pendingQueue.push(exec)\n // 静默处理,不显示暂存信息\n return\n }\n\n if (!this.isInitialized) {\n console.warn('[ArgoLog] setAlias skipped: SDK 未初始化')\n return\n }\n\n try {\n exec()\n }\n catch (error) {\n console.warn('[ArgoLog] setAlias failed:', error)\n }\n }\n\n /**\n * 获取 SDK 初始化状态\n */\n get initialized(): boolean {\n return this.isInitialized\n }\n\n /**\n * 当前是否使用 mock SDK\n */\n get usingMock(): boolean {\n return this.isInitialized && sdkLoader.isUsingMock()\n }\n\n /**\n * 等待 SDK 初始化完成\n */\n async waitForInitialization(): Promise<boolean> {\n if (this.isInitialized) {\n return true\n }\n\n return this.initializationPromise ?? false\n }\n}\n"],"names":["stableSerialize","value","Array","isArray","map","item","join","objectValue","Object","keys","sort","JSON","stringify","key","_SDKLoader","constructor","__publicField","this","getInstance","instance","loadSDK","allowMock","arguments","length","undefined","sdk","sdkPromise","window","windowAny","__argoLogSDKPromise","createSDKPromise","module","import","usingMock","default","error","createMockSDK","init","config","track","eventName","properties","profileSet","alias","aliasId","getSDK","isLoaded","isUsingMock","sdkLoader","_ArgoLog","envConfig","name","opt","exec","AnalysysAgent","isInitialized","initSettled","pendingQueue","push","info","code","configKey","existingInstance","instances","get","set","initializationPromise","initializeSDK","isInitializing","Boolean","_allowMock","sdkConfig","processPendingQueue","delete","forEach","fn","initialized","waitForInitialization","Map","ArgoLog"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@qxs-bns/utils",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.45",
|
|
5
5
|
"private": false,
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"homepage": "https://qxs-bns.pages.dev/guide/utils/",
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
"main": "./lib/index.cjs",
|
|
17
17
|
"peerDependencies": {
|
|
18
18
|
"axios": "^1.7.9",
|
|
19
|
-
"ky": "^
|
|
19
|
+
"ky": "^2.0.0"
|
|
20
20
|
},
|
|
21
21
|
"peerDependenciesMeta": {
|
|
22
22
|
"axios": {
|
|
@@ -62,7 +62,7 @@ export interface AxiosUseApiResponse<W extends boolean = false, T = unknown, S e
|
|
|
62
62
|
export declare class ApiService<T extends ApiTypeMap<U>, U extends UrlObjectType, S extends BaseSuccessResponse = SuccessResponse<unknown>, E extends BaseErrorResponse = ErrorResponse> {
|
|
63
63
|
private apiInstance;
|
|
64
64
|
private isWholeResponse;
|
|
65
|
-
private
|
|
65
|
+
private toSuccessEnvelope;
|
|
66
66
|
/**
|
|
67
67
|
* 构造函数,实现单例模式
|
|
68
68
|
* @param apiInstance - Axios 实例
|
|
@@ -95,7 +95,7 @@ export declare class ApiService<T extends ApiTypeMap<U>, U extends UrlObjectType
|
|
|
95
95
|
*/
|
|
96
96
|
useApi: <K extends U, W extends boolean = false>(axiosConfig: Omit<AxiosRequestConfig<RequestPayload<T[K["url"]]["request"]>>, "params"> & K & {
|
|
97
97
|
params?: RequestParams<T[K["url"]]["request"]>;
|
|
98
|
-
}, params?: RequestParams<T[K["url"]]["request"]>, isWholeResponse?: W) => Promise<AxiosUseApiResponse<W, T[K["url"]]["response"],
|
|
98
|
+
}, params?: RequestParams<T[K["url"]]["request"]>, isWholeResponse?: W) => Promise<AxiosUseApiResponse<W, T[K["url"]]["response"], S & BaseSuccessResponse<T[K["url"]]["response"]>, E>>;
|
|
99
99
|
/**
|
|
100
100
|
* 发起 API 请求
|
|
101
101
|
* @template K - URL 配置对象类型
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"axios-client.d.ts","sourceRoot":"","sources":["../../../../../packages/utils/src/api-client/axios-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AAC7E,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,mBAAmB,EACnB,aAAa,EACb,aAAa,EACb,cAAc,EACd,eAAe,EACf,aAAa,EACd,MAAM,SAAS,CAAA;AAGhB;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB,CAClC,CAAC,SAAS,OAAO,GAAG,KAAK,EACzB,CAAC,GAAG,OAAO,EACX,CAAC,SAAS,mBAAmB,CAAC,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,EACrD,CAAC,SAAS,iBAAiB,GAAG,aAAa;IAE3C,GAAG,EAAE,CAAC,SAAS,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;IAC3B,KAAK,EAAE,CAAC,GAAG,IAAI,CAAA;CAChB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AACH,qBAAa,UAAU,CACrB,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,EACvB,CAAC,SAAS,aAAa,EACvB,CAAC,SAAS,mBAAmB,GAAG,eAAe,CAAC,OAAO,CAAC,EACxD,CAAC,SAAS,iBAAiB,GAAG,aAAa;
|
|
1
|
+
{"version":3,"file":"axios-client.d.ts","sourceRoot":"","sources":["../../../../../packages/utils/src/api-client/axios-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,8 @@ interface ExtendedOptions extends Options {
|
|
|
12
12
|
_actionContext?: string;
|
|
13
13
|
/** 错误处理策略:是否抛出错误 @default false */
|
|
14
14
|
throwOnError?: boolean;
|
|
15
|
+
/** 请求取消信号,用于中止请求 */
|
|
16
|
+
signal?: AbortSignal;
|
|
15
17
|
}
|
|
16
18
|
/**
|
|
17
19
|
* 自定义 API 错误类
|
|
@@ -27,7 +29,6 @@ export declare class ApiError extends Error {
|
|
|
27
29
|
*/
|
|
28
30
|
export declare class FetchApiService<T extends ApiTypeMap<U>, U extends UrlObjectType, E extends BaseErrorResponse = ErrorResponse> {
|
|
29
31
|
private client;
|
|
30
|
-
private static instance;
|
|
31
32
|
constructor(client: any);
|
|
32
33
|
/**
|
|
33
34
|
* 发起 API 请求,返回统一的响应格式 { res, error }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetch-client.d.ts","sourceRoot":"","sources":["../../../../../packages/utils/src/api-client/fetch-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,IAAI,CAAA;AACjC,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,cAAc,EACd,aAAa,EACb,cAAc,EACf,MAAM,SAAS,CAAA;AAEhB;;GAEG;AACH,UAAU,eAAgB,SAAQ,OAAO;IACvC,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,wCAAwC;IACxC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,qBAAqB;IACrB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,mCAAmC;IACnC,YAAY,CAAC,EAAE,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"fetch-client.d.ts","sourceRoot":"","sources":["../../../../../packages/utils/src/api-client/fetch-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,IAAI,CAAA;AACjC,OAAO,KAAK,EACV,UAAU,EACV,iBAAiB,EACjB,aAAa,EACb,aAAa,EACb,cAAc,EACd,aAAa,EACb,cAAc,EACf,MAAM,SAAS,CAAA;AAEhB;;GAEG;AACH,UAAU,eAAgB,SAAQ,OAAO;IACvC,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,wCAAwC;IACxC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,qBAAqB;IACrB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,mCAAmC;IACnC,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB,oBAAoB;IACpB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAED;;GAEG;AACH,qBAAa,QAAS,SAAQ,KAAK;IACjC,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;gBAEF,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;CAO5E;AAMD;;GAEG;AACH,qBAAa,eAAe,CAC1B,CAAC,SAAS,UAAU,CAAC,CAAC,CAAC,EACvB,CAAC,SAAS,aAAa,EACvB,CAAC,SAAS,iBAAiB,GAAG,aAAa;IAE/B,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,GAAG;IAE/B;;;;;;OAMG;IACI,MAAM,GAAU,CAAC,SAAS,CAAC,EAChC,QAAQ,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,GAAG,CAAC,EAC3C,cAAc,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,KAC3F,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CA0CrD;IAED;;;;;;OAMG;IACI,SAAS,GAAU,CAAC,SAAS,CAAC,EACnC,QAAQ,IAAI,CAAC,eAAe,EAAE,QAAQ,CAAC,GAAG,CAAC,EAC3C,cAAc,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,KAC3F,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CA+BlC;CACF"}
|
package/types/src/argo-log.d.ts
CHANGED
|
@@ -6,6 +6,9 @@ export interface AnalysysConfig {
|
|
|
6
6
|
autoProfile?: boolean;
|
|
7
7
|
autoTrack?: boolean;
|
|
8
8
|
}
|
|
9
|
+
export interface EnvironmentConfig extends AnalysysConfig {
|
|
10
|
+
allowMock?: boolean;
|
|
11
|
+
}
|
|
9
12
|
export interface AnalysysAgentInterface {
|
|
10
13
|
init: (config: AnalysysConfig) => void;
|
|
11
14
|
track: (eventName: string, properties?: Record<string, any>) => void;
|
|
@@ -17,8 +20,6 @@ declare global {
|
|
|
17
20
|
__argoLogSDKPromise?: Promise<AnalysysAgentInterface | null>;
|
|
18
21
|
}
|
|
19
22
|
}
|
|
20
|
-
export interface EnvironmentConfig extends AnalysysConfig {
|
|
21
|
-
}
|
|
22
23
|
/**
|
|
23
24
|
* ArgoLog 类 - 用于处理埋点统计的工具类
|
|
24
25
|
*
|
|
@@ -41,6 +42,8 @@ export declare class ArgoLog<T extends EnvironmentConfig = EnvironmentConfig> {
|
|
|
41
42
|
private pendingQueue;
|
|
42
43
|
private isInitialized;
|
|
43
44
|
private isInitializing;
|
|
45
|
+
private initSettled;
|
|
46
|
+
private initializationPromise;
|
|
44
47
|
constructor(envConfig: T);
|
|
45
48
|
private initializeSDK;
|
|
46
49
|
private processPendingQueue;
|
|
@@ -51,6 +54,10 @@ export declare class ArgoLog<T extends EnvironmentConfig = EnvironmentConfig> {
|
|
|
51
54
|
* 获取 SDK 初始化状态
|
|
52
55
|
*/
|
|
53
56
|
get initialized(): boolean;
|
|
57
|
+
/**
|
|
58
|
+
* 当前是否使用 mock SDK
|
|
59
|
+
*/
|
|
60
|
+
get usingMock(): boolean;
|
|
54
61
|
/**
|
|
55
62
|
* 等待 SDK 初始化完成
|
|
56
63
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"argo-log.d.ts","sourceRoot":"","sources":["../../../../packages/utils/src/argo-log.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAGD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,CAAA;IACtC,KAAK,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAA;IACpE,UAAU,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAA;IACrD,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACjC;AAGD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,mBAAmB,CAAC,EAAE,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAA;KAC7D;CACF;
|
|
1
|
+
{"version":3,"file":"argo-log.d.ts","sourceRoot":"","sources":["../../../../packages/utils/src/argo-log.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAED,MAAM,WAAW,iBAAkB,SAAQ,cAAc;IACvD,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB;AAGD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,CAAA;IACtC,KAAK,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAA;IACpE,UAAU,EAAE,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,IAAI,CAAA;IACrD,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACjC;AAGD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,mBAAmB,CAAC,EAAE,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAA;KAC7D;CACF;AA8ID;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,OAAO,CAAC,CAAC,SAAS,iBAAiB,GAAG,iBAAiB;IAClE,OAAO,CAAC,MAAM,CAAC,SAAS,CAAkC;IAC1D,OAAO,CAAC,aAAa,CAAsC;IAC3D,OAAO,CAAC,YAAY,CAAwB;IAC5C,OAAO,CAAC,aAAa,CAAQ;IAC7B,OAAO,CAAC,cAAc,CAAQ;IAC9B,OAAO,CAAC,WAAW,CAAQ;IAC3B,OAAO,CAAC,qBAAqB,CAAgC;gBAEjD,SAAS,EAAE,CAAC;YA8BV,aAAa;IAoC3B,OAAO,CAAC,mBAAmB;IAM3B,KAAK,GAAI,MAAM,MAAM,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAG,IAAI,CA6BtD;IAED,UAAU,GAAI,MAAM,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAG,IAAI,CA4B7C;IAED,QAAQ,GAAI,MAAM,MAAM,KAAG,IAAI,CA4B9B;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED;;OAEG;IACH,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED;;OAEG;IACG,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC;CAOhD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"fileNames":["../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2023.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2023.array.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2023.collection.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2023.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.collection.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.object.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.array.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.collection.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.float16.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.error.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/.pnpm/@vue+shared@3.5.18/node_modules/@vue/shared/dist/shared.d.ts","../../../node_modules/.pnpm/@vue+reactivity@3.5.18/node_modules/@vue/reactivity/dist/reactivity.d.ts","../../../node_modules/.pnpm/@vue+runtime-core@3.5.18/node_modules/@vue/runtime-core/dist/runtime-core.d.ts","../../../node_modules/.pnpm/csstype@3.1.3/node_modules/csstype/index.d.ts","../../../node_modules/.pnpm/@vue+runtime-dom@3.5.18/node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts","../../../node_modules/.pnpm/vue@3.5.18_typescript@5.9.2/node_modules/vue/jsx-runtime/index.d.ts","../../../packages/utils/src/argo-log.ts","../../../packages/utils/src/date-transfer.ts","../../../packages/utils/src/device.ts","../../../packages/utils/src/file-operations.ts","../../../node_modules/.pnpm/xlsx@0.18.5/node_modules/xlsx/types/index.d.ts","../../../packages/utils/src/json.ts","../../../node_modules/.pnpm/@types+ali-oss@6.16.13/node_modules/@types/ali-oss/index.d.ts","../../../packages/utils/src/oss-uploader.ts","../../../packages/utils/src/storage.ts","../../../packages/utils/src/types.ts","../../../packages/utils/src/watermark.ts","../../../node_modules/.pnpm/axios@1.11.0/node_modules/axios/index.d.ts","../../../packages/utils/src/api-client/types.ts","../../../packages/utils/src/api-client/axios-client.ts","../../../node_modules/.pnpm/ky@1.14.1/node_modules/ky/distribution/types/common.d.ts","../../../node_modules/.pnpm/ky@1.14.1/node_modules/ky/distribution/types/hooks.d.ts","../../../node_modules/.pnpm/ky@1.14.1/node_modules/ky/distribution/types/retry.d.ts","../../../node_modules/.pnpm/ky@1.14.1/node_modules/ky/distribution/types/options.d.ts","../../../node_modules/.pnpm/ky@1.14.1/node_modules/ky/distribution/core/constants.d.ts","../../../node_modules/.pnpm/ky@1.14.1/node_modules/ky/distribution/types/response.d.ts","../../../node_modules/.pnpm/ky@1.14.1/node_modules/ky/distribution/types/responsepromise.d.ts","../../../node_modules/.pnpm/ky@1.14.1/node_modules/ky/distribution/types/ky.d.ts","../../../node_modules/.pnpm/ky@1.14.1/node_modules/ky/distribution/types/request.d.ts","../../../node_modules/.pnpm/ky@1.14.1/node_modules/ky/distribution/errors/httperror.d.ts","../../../node_modules/.pnpm/ky@1.14.1/node_modules/ky/distribution/errors/timeouterror.d.ts","../../../node_modules/.pnpm/ky@1.14.1/node_modules/ky/distribution/errors/forceretryerror.d.ts","../../../node_modules/.pnpm/ky@1.14.1/node_modules/ky/distribution/utils/type-guards.d.ts","../../../node_modules/.pnpm/ky@1.14.1/node_modules/ky/distribution/index.d.ts","../../../packages/utils/src/api-client/fetch-client.ts","../../../packages/utils/src/api-client/index.ts","../../../packages/utils/index.ts","../../../packages/utils/shims.d.ts"],"fileIdsList":[[82],[82,83,84,86],[83,84,85,86],[105],[106],[105,107,110],[110],[103,105,107,108,109,110,111,112,113,114],[105,106,115],[105,106,108],[102,103,104],[107],[111,112,113],[86],[87,88,89,90,91,93,95,96,97,98,117],[87,97,99,100],[87,100,115],[87,100,101,116],[87],[87,119],[87,92],[87,94]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"2ab096661c711e4a81cc464fa1e6feb929a54f5340b46b0a07ac6bbf857471f0","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"df83c2a6c73228b625b0beb6669c7ee2a09c914637e2d35170723ad49c0f5cd4","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"60037901da1a425516449b9a20073aa03386cce92f7a1fd902d7602be3a7c2e9","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","affectsGlobalScope":true,"impliedFormat":1},{"version":"4245fee526a7d1754529d19227ecbf3be066ff79ebb6a380d78e41648f2f224d","affectsGlobalScope":true,"impliedFormat":1},{"version":"73f78680d4c08509933daf80947902f6ff41b6230f94dd002ae372620adb0f60","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5239f5c01bcfa9cd32f37c496cf19c61d69d37e48be9de612b541aac915805b","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"25e0492430a92b27414c02e43d9a67a96d915cc9982caa3f36096933e1492f1e","impliedFormat":1},{"version":"616a55b9694bdb765470c1f66dc9606779b250520a36b87f4de2e4c594cea9bc","impliedFormat":1},{"version":"7e7187b0314b6ee31f37db0f82da408112ef548713ccbe28796ef551d47a6e0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"8a8eb4ebffd85e589a1cc7c178e291626c359543403d58c9cd22b81fab5b1fb9","impliedFormat":1},{"version":"591c55c575d645b7f600dd2be6d9cf8d28c4b4a5297d9dfcd41b861fddce04ab","impliedFormat":1},{"version":"269536033c45b92c13747175bf6d197b959559acb119247b3eb9a0eee250c8c5","impliedFormat":1},{"version":"7bdf93e623085b522f7e1bb4fe4ee9c4df2400b53398eb9a803b9f10f911725b","signature":"4085058b6de61f42972027fce952ec6d0f966070d17d023a3f5c3ebd0c869407","affectsGlobalScope":true},{"version":"72af2f99ff91a9a6767e9374d5bcfdfa734f056e0ca4f99acfbdc0b6910cbe6a","signature":"642691020b5d2610d98d8dfa25df7e7c58a2e885d24bdec278f98842b02892f6"},{"version":"de9652b1bdad8aa2fa302b263a6a72265b276fec040394aa3b6c1adcff419ebc","signature":"6364be1269de7f1efc40324fb2cadc9a17d9bd2742d5bc1b95e309d848ca50f6"},{"version":"8f2a5590837d3f29a8d141931432d8b61e019382d1bdcb5d9990f2525242942b","signature":"4f8d8bcaa7127e5ed2d649cd5fc16b4e46b6d6960d82982ede8429d8066f9b96","affectsGlobalScope":true},{"version":"593654eebe902db28ca173f021f74ea9f77e8b344aebb0a80fa4d10f29bb3a9d","impliedFormat":1},{"version":"19f50a093aa873de6321cd996913aa89e0ec5308a8ae49bf05f071cd9614d0c6","signature":"10ee1d72a1aeb7992ec2517f444db7d425261969e0476b94a1bef6e47fd5c4b6"},{"version":"3cee95a3d958bf994db4705fbe6b7ae503867445972247adc49626f7fd16d46a","impliedFormat":1},{"version":"cab10f9be9bc19e3175a7fecd1a3ee3a810c139e8edbb9bd313928cf71d44cb8","signature":"6a2fbda7ededa991e6090e3e1523246344249347d05fbe97b441b3bcf6a5506a"},{"version":"7484cd645652e5de0e944021ff47e2794cd64e91ccba9e2ddfe2e5c4c7e62b89","signature":"b5ff6435fa9c6d61900a8764225558104fce909c6005109cb4ec42a6772052bd"},{"version":"7ad9aed3f5dc3de5049e8ba6912319dace213430b8babffad59e9b3cb8835760","signature":"a7b65e5fbd85d753c99c13a242176ec0f4f024108de502acbd52f82108f9386d"},{"version":"df1bca5fc6bc70b5a4d100bc5e359d8905927cb3534101a90ad6e54334bc4d7a","signature":"57b68e7019ec085b6644c3ce5572dfcf262183369e4e617b1fba51099a851100"},{"version":"1d7ee0c4eb734d59b6d962bc9151f6330895067cd3058ce6a3cd95347ef5c6e8","impliedFormat":99},{"version":"4a3f874e483fa265fcda7d507216a362c0c71bb4eaa1c4406f83b7fb0ecfef8a","signature":"004ed2f28cdc2572c9d668facceda3631929ffe31273b75641263849d3b44bd4"},{"version":"eeed3ec943e5613d867b479bd6f0f27898e8b3b9fc04faaeb472e28926f6cb6a","signature":"c994340180d0d188e270da55ede62fac328ee97d2ed753cd787983cdda1d9b9c"},{"version":"20fcb118bebfb69ca52595ac4f0dd500fe457a5cedb0a4186a3b09cb20aad7c7","impliedFormat":99},{"version":"253aaaa09ecea0012b1a66a3b9f1df249a190cbd4ad3a34faed290ffd76cc2ef","impliedFormat":99},{"version":"d8521817842936ef14076cfe1a5a8cd86f6681afab3e1284b4e6f82ef9603c4a","impliedFormat":99},{"version":"731cfe307acc27e7d6a1b7a92485d91e9381e34e8b23d218aa5ee2a53df399e0","impliedFormat":99},{"version":"f89148f4772e016c8de02d18124e0dd5a84a5ac8e111baaa5405e02311c04345","impliedFormat":99},{"version":"b7ff22e70edc0399bdbb137addc7305f349996fe308125c6e29a5616ddfca817","impliedFormat":99},{"version":"303fdf723814de36ab2dde0cac7aee973ff152b9375b94f5919a66a0520b30f2","impliedFormat":99},{"version":"d599aadec3c934bfebce534bb669a3293a57c0ec1b9c037ccc6e5a3ffddda700","impliedFormat":99},{"version":"e60c9658a1253a68172fa78f91409e3f5587007d6d12c8ea63733db038cfaa33","impliedFormat":99},{"version":"c6c9cac842a0ef7f3358f4caf5c24d24bcb8fad986d8c784ccb813edf8011655","impliedFormat":99},{"version":"924e5a838ba92f49627b61352a57dedffc392cdb39954ac4086e8b786637d142","impliedFormat":99},{"version":"cb26ff91cd0ac970c7653b81163eeef385b170b9e13e4fbbd63f92ca8907f1bf","impliedFormat":99},{"version":"84d5ff92c1e1d49743f1140d1388226e40e311968f9de29cdae606b5111e7bae","impliedFormat":99},{"version":"35f8161d6edaddbdecc2a18ed564ac69fa7dee792b49a8d3f33e4181551b6efe","impliedFormat":99},{"version":"1cfc3c86df770bd0716957709fe85dbf941c90032946f4c6c3fafca92fd254c2","signature":"d273292c8b9e4cbb9e18fccdd108dca5a8649128c35ff2ce2c0bf742aeae1700"},{"version":"4ae6f6585218504ec54c96a0f18ca84325610ecf149151e0f222dd08d4416a51","signature":"30c696c6252651063b8cc48c9ba869f8b975a449b0574a0206d8e8500716cf95"},{"version":"8b9ddc32e6d53ab2563f3a425e99d2a0139d361692e963d7765e35ccc73253db","signature":"88602184760b77d470ad73433b1103ac2f64541749d5ffa63ef2b6eaf2720c5b"},{"version":"a911a3d8df881033bf7dddc7c2e68233d6121c2114826324eae73232d0d30b97","affectsGlobalScope":true}],"root":[[88,91],93,[95,98],100,101,[116,119]],"options":{"allowImportingTsExtensions":true,"allowJs":true,"composite":true,"declaration":true,"declarationDir":"./","declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"jsx":1,"jsxImportSource":"vue","module":99,"noFallthroughCasesInSwitch":true,"noImplicitThis":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","rootDir":"../../../packages/utils","skipLibCheck":true,"strict":true,"target":99,"useDefineForClassFields":true,"verbatimModuleSyntax":true},"referencedMap":[[83,1],[84,2],[86,3],[106,4],[113,5],[111,6],[112,7],[115,8],[103,9],[109,10],[105,11],[108,12],[114,13],[87,14],[118,15],[101,16],[116,17],[117,18],[100,19],[88,20],[89,19],[90,19],[91,19],[93,21],[95,22],[96,19],[97,19],[98,19]],"latestChangedDtsFile":"./index.d.ts","version":"5.9.2"}
|
|
1
|
+
{"fileNames":["../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2023.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2023.array.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2023.collection.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2023.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.arraybuffer.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.collection.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.object.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.regexp.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.es2024.string.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.array.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.collection.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.promise.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.iterator.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.float16.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.error.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.esnext.sharedmemory.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/.pnpm/typescript@5.9.2/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../node_modules/.pnpm/@vue+shared@3.5.18/node_modules/@vue/shared/dist/shared.d.ts","../../../node_modules/.pnpm/@vue+reactivity@3.5.18/node_modules/@vue/reactivity/dist/reactivity.d.ts","../../../node_modules/.pnpm/@vue+runtime-core@3.5.18/node_modules/@vue/runtime-core/dist/runtime-core.d.ts","../../../node_modules/.pnpm/csstype@3.1.3/node_modules/csstype/index.d.ts","../../../node_modules/.pnpm/@vue+runtime-dom@3.5.18/node_modules/@vue/runtime-dom/dist/runtime-dom.d.ts","../../../node_modules/.pnpm/vue@3.5.18_typescript@5.9.2/node_modules/vue/jsx-runtime/index.d.ts","../../../packages/utils/src/argo-log.ts","../../../packages/utils/src/date-transfer.ts","../../../packages/utils/src/device.ts","../../../packages/utils/src/file-operations.ts","../../../node_modules/.pnpm/xlsx@0.18.5/node_modules/xlsx/types/index.d.ts","../../../packages/utils/src/json.ts","../../../node_modules/.pnpm/@types+ali-oss@6.16.13/node_modules/@types/ali-oss/index.d.ts","../../../packages/utils/src/oss-uploader.ts","../../../packages/utils/src/storage.ts","../../../packages/utils/src/types.ts","../../../packages/utils/src/watermark.ts","../../../node_modules/.pnpm/axios@1.11.0/node_modules/axios/index.d.ts","../../../packages/utils/src/api-client/types.ts","../../../packages/utils/src/api-client/axios-client.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/types/common.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/types/hooks.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/types/retry.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/types/options.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/core/constants.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/types/response.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/types/standard-schema.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/types/responsepromise.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/types/ky.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/types/request.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/errors/kyerror.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/errors/httperror.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/errors/schemavalidationerror.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/errors/networkerror.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/errors/timeouterror.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/errors/forceretryerror.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/utils/type-guards.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/utils/merge.d.ts","../../../node_modules/.pnpm/ky@2.0.0/node_modules/ky/distribution/index.d.ts","../../../packages/utils/src/api-client/fetch-client.ts","../../../packages/utils/src/api-client/index.ts","../../../packages/utils/index.ts","../../../packages/utils/shims.d.ts"],"fileIdsList":[[82],[82,83,84,86],[83,84,85,86],[105],[106,112],[105,107,111,112],[111,112],[108],[103,105,107,108,109,110,111,112,113,114,115,116,117,118,119],[105,106,120],[105,106,109],[102,103,104],[107,108],[103,105],[112,113,115,116,117],[86],[87,88,89,90,91,93,95,96,97,98,122],[87,97,99,100],[87,100,120],[87,100,101,121],[87],[87,124],[87,92],[87,94]],"fileInfos":[{"version":"c430d44666289dae81f30fa7b2edebf186ecc91a2d4c71266ea6ae76388792e1","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","impliedFormat":1},{"version":"ee7bad0c15b58988daa84371e0b89d313b762ab83cb5b31b8a2d1162e8eb41c2","impliedFormat":1},{"version":"27bdc30a0e32783366a5abeda841bc22757c1797de8681bbe81fbc735eeb1c10","impliedFormat":1},{"version":"8fd575e12870e9944c7e1d62e1f5a73fcf23dd8d3a321f2a2c74c20d022283fe","impliedFormat":1},{"version":"2ab096661c711e4a81cc464fa1e6feb929a54f5340b46b0a07ac6bbf857471f0","impliedFormat":1},{"version":"080941d9f9ff9307f7e27a83bcd888b7c8270716c39af943532438932ec1d0b9","affectsGlobalScope":true,"impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"fb0f136d372979348d59b3f5020b4cdb81b5504192b1cacff5d1fbba29378aa1","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"a680117f487a4d2f30ea46f1b4b7f58bef1480456e18ba53ee85c2746eeca012","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true,"impliedFormat":1},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true,"impliedFormat":1},{"version":"959d36cddf5e7d572a65045b876f2956c973a586da58e5d26cde519184fd9b8a","affectsGlobalScope":true,"impliedFormat":1},{"version":"965f36eae237dd74e6cca203a43e9ca801ce38824ead814728a2807b1910117d","affectsGlobalScope":true,"impliedFormat":1},{"version":"3925a6c820dcb1a06506c90b1577db1fdbf7705d65b62b99dce4be75c637e26b","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a3d63ef2b853447ec4f749d3f368ce642264246e02911fcb1590d8c161b8005","affectsGlobalScope":true,"impliedFormat":1},{"version":"8cdf8847677ac7d20486e54dd3fcf09eda95812ac8ace44b4418da1bbbab6eb8","affectsGlobalScope":true,"impliedFormat":1},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true,"impliedFormat":1},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true,"impliedFormat":1},{"version":"b4b67b1a91182421f5df999988c690f14d813b9850b40acd06ed44691f6727ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"df83c2a6c73228b625b0beb6669c7ee2a09c914637e2d35170723ad49c0f5cd4","affectsGlobalScope":true,"impliedFormat":1},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e3c06ea092138bf9fa5e874a1fdbc9d54805d074bee1de31b99a11e2fec239d","affectsGlobalScope":true,"impliedFormat":1},{"version":"87dc0f382502f5bbce5129bdc0aea21e19a3abbc19259e0b43ae038a9fc4e326","affectsGlobalScope":true,"impliedFormat":1},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true,"impliedFormat":1},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true,"impliedFormat":1},{"version":"56e4ed5aab5f5920980066a9409bfaf53e6d21d3f8d020c17e4de584d29600ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ece9f17b3866cc077099c73f4983bddbcb1dc7ddb943227f1ec070f529dedd1","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a6282c8827e4b9a95f4bf4f5c205673ada31b982f50572d27103df8ceb8013c","affectsGlobalScope":true,"impliedFormat":1},{"version":"1c9319a09485199c1f7b0498f2988d6d2249793ef67edda49d1e584746be9032","affectsGlobalScope":true,"impliedFormat":1},{"version":"e3a2a0cee0f03ffdde24d89660eba2685bfbdeae955a6c67e8c4c9fd28928eeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811c71eee4aa0ac5f7adf713323a5c41b0cf6c4e17367a34fbce379e12bbf0a4","affectsGlobalScope":true,"impliedFormat":1},{"version":"51ad4c928303041605b4d7ae32e0c1ee387d43a24cd6f1ebf4a2699e1076d4fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"60037901da1a425516449b9a20073aa03386cce92f7a1fd902d7602be3a7c2e9","affectsGlobalScope":true,"impliedFormat":1},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true,"impliedFormat":1},{"version":"22adec94ef7047a6c9d1af3cb96be87a335908bf9ef386ae9fd50eeb37f44c47","affectsGlobalScope":true,"impliedFormat":1},{"version":"4245fee526a7d1754529d19227ecbf3be066ff79ebb6a380d78e41648f2f224d","affectsGlobalScope":true,"impliedFormat":1},{"version":"73f78680d4c08509933daf80947902f6ff41b6230f94dd002ae372620adb0f60","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5239f5c01bcfa9cd32f37c496cf19c61d69d37e48be9de612b541aac915805b","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"25e0492430a92b27414c02e43d9a67a96d915cc9982caa3f36096933e1492f1e","impliedFormat":1},{"version":"616a55b9694bdb765470c1f66dc9606779b250520a36b87f4de2e4c594cea9bc","impliedFormat":1},{"version":"7e7187b0314b6ee31f37db0f82da408112ef548713ccbe28796ef551d47a6e0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"8a8eb4ebffd85e589a1cc7c178e291626c359543403d58c9cd22b81fab5b1fb9","impliedFormat":1},{"version":"591c55c575d645b7f600dd2be6d9cf8d28c4b4a5297d9dfcd41b861fddce04ab","impliedFormat":1},{"version":"269536033c45b92c13747175bf6d197b959559acb119247b3eb9a0eee250c8c5","impliedFormat":1},{"version":"3ee5f064b93d5b1bc5ab91d8ff6a1f28fe1eb74af5fd48516e96777139e79d1e","signature":"ba5cec227cd6368823a178210d65b3e44fa2071a4e5806ee95f0a760ad1dfc7c","affectsGlobalScope":true},{"version":"72af2f99ff91a9a6767e9374d5bcfdfa734f056e0ca4f99acfbdc0b6910cbe6a","signature":"642691020b5d2610d98d8dfa25df7e7c58a2e885d24bdec278f98842b02892f6"},{"version":"de9652b1bdad8aa2fa302b263a6a72265b276fec040394aa3b6c1adcff419ebc","signature":"6364be1269de7f1efc40324fb2cadc9a17d9bd2742d5bc1b95e309d848ca50f6"},{"version":"8f2a5590837d3f29a8d141931432d8b61e019382d1bdcb5d9990f2525242942b","signature":"4f8d8bcaa7127e5ed2d649cd5fc16b4e46b6d6960d82982ede8429d8066f9b96","affectsGlobalScope":true},{"version":"593654eebe902db28ca173f021f74ea9f77e8b344aebb0a80fa4d10f29bb3a9d","impliedFormat":1},{"version":"19f50a093aa873de6321cd996913aa89e0ec5308a8ae49bf05f071cd9614d0c6","signature":"10ee1d72a1aeb7992ec2517f444db7d425261969e0476b94a1bef6e47fd5c4b6"},{"version":"3cee95a3d958bf994db4705fbe6b7ae503867445972247adc49626f7fd16d46a","impliedFormat":1},{"version":"cab10f9be9bc19e3175a7fecd1a3ee3a810c139e8edbb9bd313928cf71d44cb8","signature":"6a2fbda7ededa991e6090e3e1523246344249347d05fbe97b441b3bcf6a5506a"},{"version":"7484cd645652e5de0e944021ff47e2794cd64e91ccba9e2ddfe2e5c4c7e62b89","signature":"b5ff6435fa9c6d61900a8764225558104fce909c6005109cb4ec42a6772052bd"},{"version":"7ad9aed3f5dc3de5049e8ba6912319dace213430b8babffad59e9b3cb8835760","signature":"a7b65e5fbd85d753c99c13a242176ec0f4f024108de502acbd52f82108f9386d"},{"version":"df1bca5fc6bc70b5a4d100bc5e359d8905927cb3534101a90ad6e54334bc4d7a","signature":"57b68e7019ec085b6644c3ce5572dfcf262183369e4e617b1fba51099a851100"},{"version":"1d7ee0c4eb734d59b6d962bc9151f6330895067cd3058ce6a3cd95347ef5c6e8","impliedFormat":99},{"version":"4a3f874e483fa265fcda7d507216a362c0c71bb4eaa1c4406f83b7fb0ecfef8a","signature":"004ed2f28cdc2572c9d668facceda3631929ffe31273b75641263849d3b44bd4"},{"version":"172aa13c7d8f159c1adf2d0ab8e44c2e0502271255896b7b40d7b003a146868e","signature":"5b92768183b0d150947a0546818f9ac8b912dfab2389338e18aa584356aa7627"},{"version":"20fcb118bebfb69ca52595ac4f0dd500fe457a5cedb0a4186a3b09cb20aad7c7","impliedFormat":99},{"version":"5bf01adcc45ea861d59ce9f4a62b72ff067f8e297671f773207feab824ea5bde","impliedFormat":99},{"version":"c181be9250a7e03f2b2e16bfbb8aed9c0360d567347403c98856ca3a5c3e9950","impliedFormat":99},{"version":"a268c81a4bd85d93c573af06affe3ba071dc1fe3cddfe81f56f9eb203c31042d","impliedFormat":99},{"version":"da1974629b064e16e7b17eeaf057eaf85ecf1fdec837670a00978b1c84f48580","impliedFormat":99},{"version":"b7ff22e70edc0399bdbb137addc7305f349996fe308125c6e29a5616ddfca817","impliedFormat":99},{"version":"e5c4d881d584dfff997fe3d5746094dca6b44b7d6bdc530ebc3c9e176d0abfbf","impliedFormat":99},{"version":"e099f5df4879b0571845698f3b9950f8a2fa6d1b9fd7044b846a04b091aa1175","impliedFormat":99},{"version":"5ec70f5848b246f9fa5880cfd83b131f71573535664677934f7a9dca13f960e9","impliedFormat":99},{"version":"e60c9658a1253a68172fa78f91409e3f5587007d6d12c8ea63733db038cfaa33","impliedFormat":99},{"version":"a7893d449478c0a62ab7092ed7462977c16b09f2a370436bc44a1711eed23e67","impliedFormat":99},{"version":"77d8659d9a5972eaa19bf0cd0c3d06231e43d31ba7cc6507547fee351a33dd2e","impliedFormat":99},{"version":"eb5b6a0f0272254c16c41c59a3108132510993e92ec8512978757a176886867f","impliedFormat":99},{"version":"33759fb69865ea3417af3c198d34b8761c22a5a8d8424bf9228fa2f36058fe15","impliedFormat":99},{"version":"32db370355ca5464a3b7ad30344a8f0c7a171af33f827b2029cbf140414c82bd","impliedFormat":99},{"version":"7147f5ae635741341945dd989ba534026494ba84509f65a01db76ff1c223b79c","impliedFormat":99},{"version":"96579784113fb97f4a883f45dc349ea568a35088101c35a227de0667ee92c3ea","impliedFormat":99},{"version":"e1d3f282ba146fc27efc5e818b7a2d40c845d662d910afb84969a84e9b86cd6b","impliedFormat":99},{"version":"fe86507b5967819f478d2576d7717090e5d0752c3e26b87ab55adb29fc460743","impliedFormat":99},{"version":"9169f5689306a28afd84eb638734005cd1054a97a526f2c439d274e903b3006d","signature":"1169e7fd0a2546815e4a2269c205ef9aefc45edd2cb44a995fcae78e221c7e89"},{"version":"4ae6f6585218504ec54c96a0f18ca84325610ecf149151e0f222dd08d4416a51","signature":"30c696c6252651063b8cc48c9ba869f8b975a449b0574a0206d8e8500716cf95"},{"version":"8b9ddc32e6d53ab2563f3a425e99d2a0139d361692e963d7765e35ccc73253db","signature":"88602184760b77d470ad73433b1103ac2f64541749d5ffa63ef2b6eaf2720c5b"},{"version":"a911a3d8df881033bf7dddc7c2e68233d6121c2114826324eae73232d0d30b97","affectsGlobalScope":true}],"root":[[88,91],93,[95,98],100,101,[121,124]],"options":{"allowImportingTsExtensions":true,"allowJs":true,"composite":true,"declaration":true,"declarationDir":"./","declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"jsx":1,"jsxImportSource":"vue","module":99,"noFallthroughCasesInSwitch":true,"noImplicitThis":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./","rootDir":"../../../packages/utils","skipLibCheck":true,"strict":true,"target":99,"useDefineForClassFields":true,"verbatimModuleSyntax":true},"referencedMap":[[83,1],[84,2],[86,3],[106,4],[117,5],[113,6],[115,7],[114,8],[116,7],[120,9],[103,10],[110,11],[105,12],[109,13],[104,4],[119,14],[118,15],[87,16],[123,17],[101,18],[121,19],[122,20],[100,21],[88,22],[89,21],[90,21],[91,21],[93,23],[95,24],[96,21],[97,21],[98,21]],"latestChangedDtsFile":"./index.d.ts","version":"5.9.2"}
|