openx-js-sdk 0.0.25 → 0.0.27

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/README.md CHANGED
@@ -1,10 +1,34 @@
1
- # openx-js-sdk 使用说明文档
1
+ # openx-js-sdk
2
+
3
+ ## 1. SDK 介绍
4
+
5
+ **openx-js-sdk** 面向 CNKI 研学、授权等业务场景,是一个轻量级、可扩展的前端通用 SDK,封装了:
6
+
7
+ * 🔑 **JWT 自动获取 & 自动续期**
8
+ * 🌍 **统一接口代理(development/test/production)**
9
+ * ⚙️ **get/post 请求封装**
10
+ * 🚦 **可配置的全局响应处理器**
11
+ * 💡 **IP 获取、Cookie 工具、本地缓存管理**
12
+ * 📊 **埋点(Tracker)按需加载与 AppId 统一管理**
13
+
14
+ 业务开发者只需使用公开 API,无需关心底层网络、身份态、埋点加载等逻辑。
2
15
 
3
16
  📌 **版本历史**
4
- **v0.0.25 – 2025-12-08**
17
+
18
+ **v0.0.27 – 2026-01-09**
19
+ * 增加 scene 用于业务/宿主场景标识
20
+ * 新增 toTrackOpenx 埋点方法,用于 OpenX SDK 内部统一注入业务 / 宿主场景标识
21
+ * 去除 overrideTrackerAppId 方法
22
+
23
+ **v0.0.26 – 2025-12-09**
24
+ * 新增 skipInterceptorsRequest 请求配置项
25
+ 允许业务方在单个接口级别跳过 interceptorsRequest 对入参的结构化处理。
26
+
27
+ **v0.0.25 – 2025-12-09**
5
28
  * 新增 interceptorResult 方法
6
29
  允许业务方在请求完成后对最终返回结构进行自定义改造。
7
30
  * 埋点业务开发环境关闭加载
31
+
8
32
  **v0.0.24 – 2025-12-08**
9
33
  * openx 实例新增 logOut 方法用于业务方主动触发退出登录逻辑。
10
34
  * 针对 5014、5007、重复获取jwt情况,SDK 内部新增自动执行清理机制。
@@ -20,11 +44,12 @@
20
44
  * 原字段 response 已标记为兼容字段,统一替换为 interceptorsResponse
21
45
 
22
46
  **v0.0.20 – 2025-11-30**
47
+
23
48
  处理埋点业务多应用 app_id 混合使用问题
24
49
 
25
50
  **v0.0.17 – 2025-11-30**
26
51
 
27
- * 处理 jwt 5013 返回数据问题
52
+ * 处理 jwt 5013 返回数据问题
28
53
 
29
54
  **v0.0.15 – 2025-11-28**
30
55
 
@@ -45,24 +70,11 @@
45
70
  * 新增 `verifyRealName` 配置项,用于开启实名认证阻断机制(429001)
46
71
  * 优化内部正则 URL 匹配逻辑,支持 `/proxy-sdk-jwt` 等带短横线的代理路径
47
72
 
48
- ---
49
73
 
50
- # 1. SDK 介绍
51
74
 
52
- **openx-js-sdk** 面向 CNKI 研学、授权等业务场景,是一个轻量级、可扩展的前端通用 SDK,封装了:
53
75
 
54
- * 🔑 **JWT 自动获取 & 自动续期**
55
- * 🌍 **统一接口代理(development/test/production)**
56
- * ⚙️ **get/post 请求封装**
57
- * 🚦 **可配置的全局响应处理器**
58
- * 💡 **IP 获取、Cookie 工具、本地缓存管理**
59
- * 📊 **埋点(Tracker)按需加载与 AppId 统一管理**
60
-
61
- 业务开发者只需使用公开 API,无需关心底层网络、身份态、埋点加载等逻辑。
62
76
 
63
- ---
64
-
65
- # 2. 安装方式
77
+ ## 2. 安装方式
66
78
 
67
79
  ```bash
68
80
  npm install openx-js-sdk
@@ -72,11 +84,10 @@ yarn add openx-js-sdk
72
84
  pnpm add openx-js-sdk
73
85
  ```
74
86
 
75
- ---
76
87
 
77
- # 3. 快速开始
88
+ ## 3. 快速开始
78
89
 
79
- ## 3.1 初始化(推荐在应用入口处执行)
90
+ ### 3.1 初始化(推荐在应用入口处执行)
80
91
 
81
92
  ```ts
82
93
  import openx from 'openx-js-sdk'
@@ -87,7 +98,7 @@ openx.config({
87
98
  verifyRealName: true, // 开启实名认证自动阻断
88
99
  timeout: 5000, // axios 超时时间,默认 5000ms
89
100
  tracker: true, // 是否开启埋点(按需加载)
90
- overrideTrackerAppId: true, // 是否覆盖埋点默认 AppId(统一 AppId)
101
+ scene: '', // 多场景标识,没有场景需求可为空
91
102
  interceptorsResponse: (res) => {
92
103
  // 可选:全局业务响应处理
93
104
  },
@@ -136,11 +147,10 @@ openx.config({
136
147
  await openx.ready()
137
148
  ```
138
149
 
139
- ---
140
150
 
141
- # 4. 请求接口
151
+ ## 4. 请求接口
142
152
 
143
- ## 4.1 GET 请求
153
+ ### 4.1 GET 请求
144
154
 
145
155
  ```ts
146
156
  const res = await openx.getAction('/proxy-ix/endpoint', {
@@ -148,7 +158,7 @@ const res = await openx.getAction('/proxy-ix/endpoint', {
148
158
  })
149
159
  ```
150
160
 
151
- ## 4.2 POST 请求
161
+ ### 4.2 POST 请求
152
162
 
153
163
  ```ts
154
164
  const res = await openx.postAction('/proxy-ix/endpoint', {
@@ -163,7 +173,7 @@ SDK 会自动:
163
173
  * 根据 proxy 自动切换 BaseURL
164
174
  * 对响应进行封装
165
175
 
166
- ## 4.3 支持第三个参数配置 Headers / Timeout 等 Axios 配置
176
+ ### 4.3 支持第三个参数配置 Headers / Timeout 等 Axios 配置
167
177
 
168
178
  业务方可以为 getAction 与 postAction 传递 第三个参数,用于设置额外的请求配置,例如自定义 Header、超时时间、携带特殊标记字段等。
169
179
  示例:传入自定义 Headers
@@ -182,9 +192,8 @@ const res = await openx.postAction(
182
192
  )
183
193
  ```
184
194
 
185
- ---
186
195
 
187
- # 5. JWT 管理
196
+ ## 5. JWT 管理
188
197
 
189
198
  ### 5.1 获取当前 JWT
190
199
 
@@ -198,9 +207,8 @@ const token = openx.getJwt()
198
207
  openx.removeJwt()
199
208
  ```
200
209
 
201
- ---
202
210
 
203
- # 6. 配置项说明(ConfigOptions)
211
+ ## 6. 配置项说明(ConfigOptions)
204
212
 
205
213
  ```ts
206
214
  openx.config({
@@ -210,6 +218,7 @@ openx.config({
210
218
  timeout?: number, // axios 超时时间
211
219
  withCredentials?: boolean, // 是否默认携带cookie
212
220
  proxy?: Record<string, any>, // 本地代理配置
221
+ scene?: string, // 多场景标识
213
222
  response?: (res: any) => any, // 全局响应处理
214
223
  interceptorsResponse?: (res: any) => any, // 全局请求响应处理
215
224
  interceptorsRequest?: (res: any) => any, // 全局请求拦截处理
@@ -219,9 +228,8 @@ openx.config({
219
228
  })
220
229
  ```
221
230
 
222
- ---
223
231
 
224
- # 7. 获取用户 IP
232
+ ## 7. 获取用户 IP
225
233
 
226
234
  ```ts
227
235
  const ip = await openx.getUserIp()
@@ -229,9 +237,7 @@ const ip = await openx.getUserIp()
229
237
 
230
238
  SDK 会自动缓存 IP,避免重复请求。
231
239
 
232
- ---
233
-
234
- # 8. 埋点管理(Tracker)
240
+ ## 8. 埋点管理(Tracker)
235
241
 
236
242
  `openx-js-sdk` 内置埋点模块,采用 **按需加载策略(Lazy Load)**,解决旧项目中必须手动引入 `sensors.min.js` 的问题。
237
243
 
@@ -241,33 +247,29 @@ SDK 会自动缓存 IP,避免重复请求。
241
247
  tracker: true
242
248
  ```
243
249
 
244
- ## 8.1 tracker 的作用
250
+ ### 8.1 tracker 的作用
245
251
 
246
252
  | 配置 | 行为 |
247
253
  | -------------------- | ----------------------------------- |
248
254
  | `tracker: false`(默认) | 不加载 sensors,不初始化埋点,全程 0 成本 |
249
255
  | `tracker: true` | 按需加载 sensors,并提供全局 `sta_api` 用于事件上报 |
250
256
 
251
- ---
252
-
253
- ## 8.2 统一 AppId(解决历史混用问题)
254
-
255
- 旧项目中存在多个 AppId 混用、冲突、覆盖的问题。
256
- SDK 提供统一管理能力:
257
257
 
258
+ ### 8.2 toTrackOpenx 埋点方法
259
+ openx-js-sdk 通过克隆原有埋点能力,提供了一套 SDK 独有的埋点方法,用于上报 SDK 内部行为:
258
260
  ```typescript
259
- overrideTrackerAppId: true
261
+ window.sta_api?.toTrackOpenx({
262
+ event_id: 'sdk_init'
263
+ })
260
264
  ```
265
+ 通过 toTrackOpenx 上报的事件将:
266
+ - 自动注入初始化配置的 scene
267
+ - 使用与业务埋点一致的底层埋点 SDK 能力
268
+ - 不会影响业务侧 toTrack 的调用与数据结构
261
269
 
262
- 启用后:
263
270
 
264
- * 强制整个应用使用 `openx.config().appId`
265
- * sensors 默认 AppId 会被自动覆盖
266
- * 所有事件上报都归属同一 AppId
267
- * 解决多子系统混用、旧代码遗留 AppId 的混乱问题
268
271
 
269
- ---
270
- # 9. 退出登录管理
272
+ ## 9. 退出登录管理
271
273
  sdk 提供统一的 退出登录 方法,用于在业务系统中安全清理用户登录态,包括:
272
274
  清理所有与研学平台相关的 Cookie
273
275
  清理 JWT(通过 cnki-x-jwt 管理的 token)
@@ -301,28 +303,28 @@ if (result.code===0) {
301
303
  ```
302
304
 
303
305
 
304
- # 10. 完整示例
306
+ ## 10. 完整示例
305
307
 
306
308
  ```ts
307
309
  import openx from 'openx-js-sdk'
308
310
 
309
311
  // 初始化
310
312
  openx.config({
311
- appId: 'xxx',
312
- env: 'development',
313
- proxy: {},
314
- verifyRealName: true,
315
- tracker: true,
316
- overrideTrackerAppId: true,
313
+ appId: 'xxx',
314
+ env: 'development',
315
+ proxy: {},
316
+ verifyRealName: true,
317
+ tracker: true,
318
+ scene: '',
317
319
  interceptorsResponse: (res) => {
318
- if (res.data.code === 5014) {
319
- console.log('登录过期,业务方自行处理')
320
+ if (res.data.code === 5014) {
321
+ console.log('登录过期,业务方自行处理')
322
+ }
323
+ },
324
+ interceptorsRequest: (config) => {
325
+ config.headers['X-Requested-With'] = ''
326
+ return config
320
327
  }
321
- },
322
- interceptorsRequest: (config) => {
323
- config.headers['X-Requested-With'] = ''
324
- return config
325
- }
326
328
  })
327
329
 
328
330
  await openx.ready()
package/app.d.ts CHANGED
@@ -9,13 +9,13 @@ declare class App {
9
9
  content?: string;
10
10
  message?: string;
11
11
  }>;
12
- getAction: <T = any>(url: string, data?: Record<string, any>, config?: import("axios").AxiosRequestConfig) => Promise<T>;
12
+ getAction: <T = any>(url: string, data?: Record<string, any>, config?: import("./fetch").OpenxRequestConfig) => Promise<T>;
13
13
  getRefreshToken: () => Promise<{
14
14
  code: number;
15
15
  content?: string;
16
16
  message?: string;
17
17
  }>;
18
- postAction: <T = any>(url: string, data?: Record<string, any>, config?: import("axios").AxiosRequestConfig) => Promise<T>;
18
+ postAction: <T = any>(url: string, data?: Record<string, any>, config?: import("./fetch").OpenxRequestConfig) => Promise<T>;
19
19
  getJwt: () => string | null;
20
20
  removeJwt: () => void;
21
21
  getUserIp: () => Promise<any>;
package/app.js CHANGED
@@ -1,2 +1,8 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("openxAxios",[],t):"object"==typeof exports?exports.openxAxios=t():e.openxAxios=t()}(this,(()=>(()=>{var e={65:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=new(function(){function e(e,t){void 0===e&&(e=1/0),void 0===t&&(t="queue"),this.key=t,this.maxSize=e;var n=localStorage.getItem(this.key);this.queue=n?new Map(this.parseQueue(n)):new Map}return e.prototype.setValue=function(e,t){if(this.size()>=this.maxSize){var n=this.queue.keys().next().value;this.queue.delete(n)}this.queue.set(e,t),this.saveToLocalStorage()},e.prototype.isEmpty=function(){return 0===this.queue.size},e.prototype.size=function(){return this.queue.size},e.prototype.clear=function(){this.queue.clear(),this.saveToLocalStorage()},e.prototype.getValue=function(e){return this.queue.get(e)},e.prototype.saveToLocalStorage=function(){var e=Array.from(this.queue);localStorage.setItem(this.key,JSON.stringify(e))},e.prototype.parseQueue=function(e){try{var t=JSON.parse(e);return Array.isArray(t)?t:[]}catch(e){return console.error("Failed to parse queue from localStorage:",e),[]}},e}());t.default=n},336:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.logOut=void 0;var r=n(384),o=n(537),i=n(489);t.logOut=function(){try{var e=["LID","AID"];e.forEach((function(e){return(0,r.removeCookie)(e)}));var t=(0,i.getJwtKey)();return t&&(0,o.removeJwt)(t),{code:0,message:"退出登录成功",clearedCookies:e,clearedJwtKey:t}}catch(e){return{code:-1,message:"退出登录失败"}}}},365:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.default={"/proxy-sdk-jwt":{open:!1,ws:!1,target:"https://gateway.cnki.net/coreapi/api",changeOrigin:!0,pathRewrite:{"^/proxy-sdk-jwt":"/"}},"/proxy-sdk-ip":{open:!1,ws:!1,target:"https://x.cnki.net/ip",changeOrigin:!0,pathRewrite:{"^/proxy-sdk-ip":"/"},headers:{origin:"https://x.cnki.net",referer:"https://x.cnki.net"}}}},384:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.removeCookie=t.setCookie=t.getCookie=void 0;t.getCookie=function(e){var t=new RegExp("(^| )"+e+"=([^;]*)(;|$)"),n=document.cookie.match(t);return n?decodeURIComponent(n[2]):null};var n=function(e,t,n,r){var o="";if(n&&0!==n){var i=new Date;i.setTime(i.getTime()+1e3*n),o="; expires=".concat(i.toUTCString())}document.cookie="".concat(e,"=").concat(t).concat(o,"; path=/; domain=").concat(r||"")};t.setCookie=n;t.removeCookie=function(e){n(e,"",-1),n(e,"",-1,"cnki.net")}},471:function(e,t,n){"use strict";var r,o=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s=this&&this.__importStar||(r=function(e){return r=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},r(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n=r(e),s=0;s<n.length;s++)"default"!==n[s]&&o(t,e,n[s]);return i(t,e),t}),a=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))},c=this&&this.__generator||function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(c){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getRefreshToken=t.postAction=t.getAction=void 0;var l=u(n(637)),f=n(537),d=s(n(935));Object.defineProperty(t,"getRefreshToken",{enumerable:!0,get:function(){return d.getRefreshToken}});var p=n(776),h=s(n(489)),y=n(747),m=n(336),g=!1,b=!1,w=l.default.create({timeout:5e3,withCredentials:h.default.getOptions().withCredentials});w.interceptors.request.use((function(e){var t=h.default.getOptions(),n=null==t?void 0:t.interceptorsRequest;if(n){var r=n(e);r&&(e=r)}var o=(0,f.getJwt)((0,h.getJwtKey)());return o&&e.headers&&(e.headers.Authorization="Bearer ".concat(o)),e}),(function(e){return console.error("请求错误:",e),Promise.reject(e)})),w.interceptors.response.use((function(e){return a(void 0,void 0,void 0,(function(){var t,n,r,o,i,s,a,u,l,p,v,O;return c(this,(function(c){switch(c.label){case 0:return t=h.default.getOptions(),n=(0,y.getEnv)(),g?[2,Promise.resolve({data:{message:"请求已被全局阻断!"}})]:"function"!=typeof(r=(null==t?void 0:t.interceptorsResponse)||(null==t?void 0:t.response))?[3,2]:[4,r(e)];case 1:if(void 0!==(o=c.sent()))return[2,o];c.label=2;case 2:if(i=(null===(p=e.data)||void 0===p?void 0:p.code)||(null===(v=e.data)||void 0===v?void 0:v.Code)||(null===(O=e.data)||void 0===O?void 0:O.errcode)||200,[5014,5007].includes(i))return(0,m.logOut)(),[2,Promise.resolve(e)];if(![5013,5016].includes(i))return[3,6];(0,f.removeJwt)((0,h.getJwtKey)()),c.label=3;case 3:return c.trys.push([3,5,,6]),[4,(0,d.default)(w,e)];case 4:return[2,c.sent()];case 5:return s=c.sent(),[2,Promise.resolve({data:s})];case 6:return 429001===i&&(null==t?void 0:t.verifyRealName)&&"development"!==n&&(b||(b=!0,g=!0,a=encodeURIComponent(window.location.href),u=encodeURIComponent("platform=yxpt&returnUrl=".concat(a)),l=["test","development"].includes(n)?"https://xfat.cnki.net":"https://ix.cnki.net",["test","production"].includes(n)&&(window.location.href="".concat(l,"/psmc/user/returnUrl?code=").concat(i,"&paras=").concat(u,"&buries=true")))),[2,Promise.resolve(e)]}}))}))}),(function(e){return a(void 0,void 0,void 0,(function(){var t,n,r;return c(this,(function(o){switch(o.label){case 0:return 401!==e.status?[3,2]:(n=(t=Promise).resolve,[4,(0,d.default)(w,e)]);case 1:return[2,n.apply(t,[o.sent()])];case 2:return(null===(r=e.message)||void 0===r?void 0:r.includes("timeout"))&&console.error("请求超时,请检查网络连接"),[2,Promise.reject(e)]}}))}))}));var v=function(e,t,n,r){void 0===n&&(n={});var o=r||{};if(o.method=e,o.url=(0,p.getBaseUrl)(t),"get"===e.toLowerCase())o.params=n;else o.data=n;return w(o).then((function(e){var t=h.default.getOptions(),n=null==t?void 0:t.interceptorResult;if(n){var r=n(e);if(void 0!==r)return r}return e.data}))};t.getAction=function(e,t,n){return v("get",e,t,n)};t.postAction=function(e,t,n){return v("post",e,t,n)}},489:function(e,t){"use strict";var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},n.apply(this,arguments)};Object.defineProperty(t,"__esModule",{value:!0}),t.getJwtKey=t.store=void 0;var r=function(){function e(){this.options={appId:"",env:"development",proxy:"",timeout:5e3,verifyRealName:!0,withCredentials:!0,tracker:!1,overrideTrackerAppId:!1,response:function(){},interceptorsResponse:function(){},interceptorsRequest:function(){},interceptorResult:function(){}}}return e.getInstance=function(){return this.instance||(this.instance=new e),this.instance},e.prototype.config=function(e){this.options=n(n({},this.options),e)},e.prototype.getOptions=function(){return n({},this.options)},e.prototype.getJwtKey=function(){return this.options.appId},e.prototype.setResponseHandler=function(e){this.options.response=e},e}();t.store=r.getInstance();t.getJwtKey=function(){return t.store.getJwtKey()},t.default=t.store},537:e=>{var t;self,t=()=>(()=>{"use strict";var e={};return{60:function(e,t){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},n.apply(this,arguments)},r=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,i=n.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(r=i.next()).done;)s.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return s},i=this&&this.__spreadArray||function(e,t,n){if(n||2===arguments.length)for(var r,o=0,i=t.length;o<i;o++)!r&&o in t||(r||(r=Array.prototype.slice.call(t,0,o)),r[o]=t[o]);return e.concat(r||Array.prototype.slice.call(t))};Object.defineProperty(t,"__esModule",{value:!0}),t.removeAllJwt=t.removeJwt=t.getJwt=t.addJwt=t.initJwtManager=t.getURLParams=void 0;var s=function(e){var t=new RegExp("(^| )"+e+"=([^;]*)(;|$)"),n=document.cookie.match(t);return n?decodeURIComponent(n[2]):null};t.getURLParams=function(e){var t,n,i=new URLSearchParams(window.location.search),s={};try{for(var a=r(i.entries()),c=a.next();!c.done;c=a.next()){var u=o(c.value,2),l=u[0],f=u[1];s[l]=f}}catch(e){t={error:e}}finally{try{c&&!c.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}return e?s[e]:s};var a=function(){function e(e){this.STORAGE_KEY=(null==e?void 0:e.storageKey)||"X_JWT_LIST",this.MAX_COUNT=(null==e?void 0:e.maxCount)||20,this.POP_DELETE_COUNT=(null==e?void 0:e.popDeleteCount)||5}return e.prototype.addJwt=function(e,r,o){if(!e||""===e.trim())throw new Error("JWT name cannot be empty");if(!r||""===r.trim())throw new Error("JWT token cannot be empty");if(!o||isNaN(o)||o<=0)throw new Error("expiresIn must be a valid positive number");var i=Date.now(),a=this.getJwtList(),c=a.findIndex((function(t){return t.name===e})),u={name:e,expireIn:i+1e3*(o-300),createdAt:i,jwtToken:r,source:s("LID")||(0,t.getURLParams)("LID")||""};c>=0?a[c]=n(n({},a[c]),u):(a.length>=this.MAX_COUNT&&a.splice(0,this.POP_DELETE_COUNT),a.push(u)),this.saveJWTList(a)},e.prototype.getJwt=function(e){if(!e||""===e.trim())throw new Error("JWT name cannot be empty");var n=this.getJwtList().find((function(t){return t.name===e})),r=s("LID")||(0,t.getURLParams)("LID")||"";if(n&&n.source){if(!r)return this.removeAllJwt(),null;if(n.source!==r)return null}return n?n.jwtToken:null},e.prototype.removeJwt=function(e){if(!e||""===e.trim())throw new Error("JWT name cannot be empty");var t=this.getJwtList().filter((function(t){return t.name!==e}));this.saveJWTList(t)},e.prototype.removeAllJwt=function(){localStorage.removeItem(this.STORAGE_KEY)},e.prototype.saveJWTList=function(e){localStorage.setItem(this.STORAGE_KEY,JSON.stringify(e))},e.prototype.removeExpired=function(e){var t=Date.now(),n=e.filter((function(e){return e.expireIn>t}));return this.saveJWTList(n),n},e.prototype.getJwtList=function(){var e=localStorage.getItem(this.STORAGE_KEY);if(!e)return[];try{var t=JSON.parse(e);return this.removeExpired(Array.isArray(t)?t:[])}catch(e){return console.warn("[XJwtManager] getJwtList JSON parse error:",e),[]}},e}(),c=new a;t.initJwtManager=function(e){c=new a(e)},t.addJwt=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return c.addJwt.apply(c,i([],o(e),!1))},t.getJwt=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return c.getJwt.apply(c,i([],o(e),!1))},t.removeJwt=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return c.removeJwt.apply(c,i([],o(e),!1))},t.removeAllJwt=function(){return c.removeAllJwt()},t.default={addJwt:t.addJwt,getJwt:t.getJwt,removeJwt:t.removeJwt,removeAllJwt:t.removeAllJwt,initJwtManager:t.initJwtManager}}}[60].call(e,0,e),e.default})(),e.exports=t()},551:function(e,t,n){"use strict";var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},r.apply(this,arguments)},o=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))},i=this&&this.__generator||function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(c){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}},s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.tracker=function(){var e=a.default.getOptions();if("development"===e.env)return void(window.sta_api={toTrack:function(){}});if(b(e))return;d=function(t){return o(this,void 0,void 0,(function(){var n;return i(this,(function(r){switch(r.label){case 0:if(u.length>=l&&(u.shift(),console.warn("[STA] trackQueue overflow: oldest dropped.")),u.push(t),f)return g(e),[2];if(y)return[3,5];y=!0,r.label=1;case 1:return r.trys.push([1,3,4,5]),[4,m()];case 2:return r.sent(),b(e),g(e),[3,5];case 3:return n=r.sent(),console.error("[STA] STA load failed:",n),[3,5];case 4:return y=!1,[7];case 5:return[2]}}))}))},window.sta_api={toTrack:function(e){if(d)return d(e);console.warn("[STA] proxyToTrack not ready.")}}};var a=s(n(489)),c="https://piccachex.cnki.net/sta_api/v1/scripts/sensors.min.js?v=20220425",u=[],l=500,f=null,d=null,p=null,h=!1,y=!1;function m(){return h?Promise.resolve():p||(p=new Promise((function(e,t){if(!!document.querySelector('script[src="'.concat(c,'"]')))h=!0,e();else{var n=document.createElement("script");n.src=c,n.async=!1,n.onload=function(){h=!0,e()},n.onerror=function(e){console.error("[STA] script load failed:",e),p=null,t(e)},document.head.appendChild(n)}})))}function g(e){if(f)for(;u.length;){var t=u.shift();f(r(r({},t),{track_from:"openx-js-sdk",app_id:e.overrideTrackerAppId||e.appId===t.app_id?e.appId:t.app_id}))}}function b(e){var t=window.sta_api;return!(!t||"function"!=typeof t.toTrack)&&(t.__OPENX_PATCHED__||(f=t.toTrack,t.toTrack=function(t){var n=r(r({},t),{track_from:"openx-js-sdk",app_id:e.overrideTrackerAppId||e.appId===t.app_id?e.appId:t.app_id});return f(n)},t.__OPENX_PATCHED__=!0),!0)}},598:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.default={"/proxy-sdk-jwt":{open:!1,ws:!1,target:"https://xtest.cnki.net/coreapi/api",changeOrigin:!0,pathRewrite:{"^/proxy-sdk-jwt":"/"},headers:{origin:"https://x.cnki.net",referer:"https://x.cnki.net"}},"/proxy-sdk-ip":{open:!1,ws:!1,target:"https://xtest.cnki.net/ip",changeOrigin:!0,pathRewrite:{"^/proxy-sdk-ip":"/"},headers:{origin:"https://x.cnki.net",referer:"https://x.cnki.net"}}}},637:(e,t,n)=>{"use strict";
2
- /*! Axios v1.12.2 Copyright (c) 2025 Matt Zabriskie and contributors */function r(e,t){return function(){return e.apply(t,arguments)}}const{toString:o}=Object.prototype,{getPrototypeOf:i}=Object,{iterator:s,toStringTag:a}=Symbol,c=(u=Object.create(null),e=>{const t=o.call(e);return u[t]||(u[t]=t.slice(8,-1).toLowerCase())});var u;const l=e=>(e=e.toLowerCase(),t=>c(t)===e),f=e=>t=>typeof t===e,{isArray:d}=Array,p=f("undefined");function h(e){return null!==e&&!p(e)&&null!==e.constructor&&!p(e.constructor)&&g(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const y=l("ArrayBuffer");const m=f("string"),g=f("function"),b=f("number"),w=e=>null!==e&&"object"==typeof e,v=e=>{if("object"!==c(e))return!1;const t=i(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||a in e||s in e)},O=l("Date"),E=l("File"),_=l("Blob"),S=l("FileList"),T=l("URLSearchParams"),[R,k,x,j]=["ReadableStream","Request","Response","Headers"].map(l);function A(e,t,{allOwnKeys:n=!1}={}){if(null==e)return;let r,o;if("object"!=typeof e&&(e=[e]),d(e))for(r=0,o=e.length;r<o;r++)t.call(null,e[r],r,e);else{if(h(e))return;const o=n?Object.getOwnPropertyNames(e):Object.keys(e),i=o.length;let s;for(r=0;r<i;r++)s=o[r],t.call(null,e[s],s,e)}}function P(e,t){if(h(e))return null;t=t.toLowerCase();const n=Object.keys(e);let r,o=n.length;for(;o-- >0;)if(r=n[o],t===r.toLowerCase())return r;return null}const C="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:n.g,U=e=>!p(e)&&e!==C;const N=(L="undefined"!=typeof Uint8Array&&i(Uint8Array),e=>L&&e instanceof L);var L;const I=l("HTMLFormElement"),J=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),D=l("RegExp"),F=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};A(n,((n,o)=>{let i;!1!==(i=t(n,o,e))&&(r[o]=i||n)})),Object.defineProperties(e,r)};const B=l("AsyncFunction"),M=(q="function"==typeof setImmediate,z=g(C.postMessage),q?setImmediate:z?(K=`axios@${Math.random()}`,W=[],C.addEventListener("message",(({source:e,data:t})=>{e===C&&t===K&&W.length&&W.shift()()}),!1),e=>{W.push(e),C.postMessage(K,"*")}):e=>setTimeout(e));var q,z,K,W;const H="undefined"!=typeof queueMicrotask?queueMicrotask.bind(C):"undefined"!=typeof process&&process.nextTick||M;var V={isArray:d,isArrayBuffer:y,isBuffer:h,isFormData:e=>{let t;return e&&("function"==typeof FormData&&e instanceof FormData||g(e.append)&&("formdata"===(t=c(e))||"object"===t&&g(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&y(e.buffer),t},isString:m,isNumber:b,isBoolean:e=>!0===e||!1===e,isObject:w,isPlainObject:v,isEmptyObject:e=>{if(!w(e)||h(e))return!1;try{return 0===Object.keys(e).length&&Object.getPrototypeOf(e)===Object.prototype}catch(e){return!1}},isReadableStream:R,isRequest:k,isResponse:x,isHeaders:j,isUndefined:p,isDate:O,isFile:E,isBlob:_,isRegExp:D,isFunction:g,isStream:e=>w(e)&&g(e.pipe),isURLSearchParams:T,isTypedArray:N,isFileList:S,forEach:A,merge:function e(){const{caseless:t,skipUndefined:n}=U(this)&&this||{},r={},o=(o,i)=>{const s=t&&P(r,i)||i;v(r[s])&&v(o)?r[s]=e(r[s],o):v(o)?r[s]=e({},o):d(o)?r[s]=o.slice():n&&p(o)||(r[s]=o)};for(let e=0,t=arguments.length;e<t;e++)arguments[e]&&A(arguments[e],o);return r},extend:(e,t,n,{allOwnKeys:o}={})=>(A(t,((t,o)=>{n&&g(t)?e[o]=r(t,n):e[o]=t}),{allOwnKeys:o}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:(e,t,n,r)=>{let o,s,a;const c={};if(t=t||{},null==e)return t;do{for(o=Object.getOwnPropertyNames(e),s=o.length;s-- >0;)a=o[s],r&&!r(a,e,t)||c[a]||(t[a]=e[a],c[a]=!0);e=!1!==n&&i(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:c,kindOfTest:l,endsWith:(e,t,n)=>{e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return-1!==r&&r===n},toArray:e=>{if(!e)return null;if(d(e))return e;let t=e.length;if(!b(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},forEachEntry:(e,t)=>{const n=(e&&e[s]).call(e);let r;for(;(r=n.next())&&!r.done;){const n=r.value;t.call(e,n[0],n[1])}},matchAll:(e,t)=>{let n;const r=[];for(;null!==(n=e.exec(t));)r.push(n);return r},isHTMLForm:I,hasOwnProperty:J,hasOwnProp:J,reduceDescriptors:F,freezeMethods:e=>{F(e,((t,n)=>{if(g(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const r=e[n];g(r)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:(e,t)=>{const n={},r=e=>{e.forEach((e=>{n[e]=!0}))};return d(e)?r(e):r(String(e).split(t)),n},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(e,t)=>null!=e&&Number.isFinite(e=+e)?e:t,findKey:P,global:C,isContextDefined:U,isSpecCompliantForm:function(e){return!!(e&&g(e.append)&&"FormData"===e[a]&&e[s])},toJSONObject:e=>{const t=new Array(10),n=(e,r)=>{if(w(e)){if(t.indexOf(e)>=0)return;if(h(e))return e;if(!("toJSON"in e)){t[r]=e;const o=d(e)?[]:{};return A(e,((e,t)=>{const i=n(e,r+1);!p(i)&&(o[t]=i)})),t[r]=void 0,o}}return e};return n(e,0)},isAsyncFn:B,isThenable:e=>e&&(w(e)||g(e))&&g(e.then)&&g(e.catch),setImmediate:M,asap:H,isIterable:e=>null!=e&&g(e[s])};function G(e,t,n,r,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),o&&(this.response=o,this.status=o.status?o.status:null)}V.inherits(G,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:V.toJSONObject(this.config),code:this.code,status:this.status}}});const X=G.prototype,$={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{$[e]={value:e}})),Object.defineProperties(G,$),Object.defineProperty(X,"isAxiosError",{value:!0}),G.from=(e,t,n,r,o,i)=>{const s=Object.create(X);V.toFlatObject(e,s,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e));const a=e&&e.message?e.message:"Error",c=null==t&&e?e.code:t;return G.call(s,a,c,n,r,o),e&&null==s.cause&&Object.defineProperty(s,"cause",{value:e,configurable:!0}),s.name=e&&e.name||"Error",i&&Object.assign(s,i),s};function Q(e){return V.isPlainObject(e)||V.isArray(e)}function Y(e){return V.endsWith(e,"[]")?e.slice(0,-2):e}function Z(e,t,n){return e?e.concat(t).map((function(e,t){return e=Y(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}const ee=V.toFlatObject(V,{},null,(function(e){return/^is[A-Z]/.test(e)}));function te(e,t,n){if(!V.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const r=(n=V.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!V.isUndefined(t[e])}))).metaTokens,o=n.visitor||u,i=n.dots,s=n.indexes,a=(n.Blob||"undefined"!=typeof Blob&&Blob)&&V.isSpecCompliantForm(t);if(!V.isFunction(o))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(V.isDate(e))return e.toISOString();if(V.isBoolean(e))return e.toString();if(!a&&V.isBlob(e))throw new G("Blob is not supported. Use a Buffer instead.");return V.isArrayBuffer(e)||V.isTypedArray(e)?a&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function u(e,n,o){let a=e;if(e&&!o&&"object"==typeof e)if(V.endsWith(n,"{}"))n=r?n:n.slice(0,-2),e=JSON.stringify(e);else if(V.isArray(e)&&function(e){return V.isArray(e)&&!e.some(Q)}(e)||(V.isFileList(e)||V.endsWith(n,"[]"))&&(a=V.toArray(e)))return n=Y(n),a.forEach((function(e,r){!V.isUndefined(e)&&null!==e&&t.append(!0===s?Z([n],r,i):null===s?n:n+"[]",c(e))})),!1;return!!Q(e)||(t.append(Z(o,n,i),c(e)),!1)}const l=[],f=Object.assign(ee,{defaultVisitor:u,convertValue:c,isVisitable:Q});if(!V.isObject(e))throw new TypeError("data must be an object");return function e(n,r){if(!V.isUndefined(n)){if(-1!==l.indexOf(n))throw Error("Circular reference detected in "+r.join("."));l.push(n),V.forEach(n,(function(n,i){!0===(!(V.isUndefined(n)||null===n)&&o.call(t,n,V.isString(i)?i.trim():i,r,f))&&e(n,r?r.concat(i):[i])})),l.pop()}}(e),t}function ne(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function re(e,t){this._pairs=[],e&&te(e,this,t)}const oe=re.prototype;function ie(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function se(e,t,n){if(!t)return e;const r=n&&n.encode||ie;V.isFunction(n)&&(n={serialize:n});const o=n&&n.serialize;let i;if(i=o?o(t,n):V.isURLSearchParams(t)?t.toString():new re(t,n).toString(r),i){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+i}return e}oe.append=function(e,t){this._pairs.push([e,t])},oe.toString=function(e){const t=e?function(t){return e.call(this,t,ne)}:ne;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};var ae=class{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){V.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},ce={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},ue={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:re,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]};const le="undefined"!=typeof window&&"undefined"!=typeof document,fe="object"==typeof navigator&&navigator||void 0,de=le&&(!fe||["ReactNative","NativeScript","NS"].indexOf(fe.product)<0),pe="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,he=le&&window.location.href||"http://localhost";var ye={...Object.freeze({__proto__:null,hasBrowserEnv:le,hasStandardBrowserWebWorkerEnv:pe,hasStandardBrowserEnv:de,navigator:fe,origin:he}),...ue};function me(e){function t(e,n,r,o){let i=e[o++];if("__proto__"===i)return!0;const s=Number.isFinite(+i),a=o>=e.length;if(i=!i&&V.isArray(r)?r.length:i,a)return V.hasOwnProp(r,i)?r[i]=[r[i],n]:r[i]=n,!s;r[i]&&V.isObject(r[i])||(r[i]=[]);return t(e,n,r[i],o)&&V.isArray(r[i])&&(r[i]=function(e){const t={},n=Object.keys(e);let r;const o=n.length;let i;for(r=0;r<o;r++)i=n[r],t[i]=e[i];return t}(r[i])),!s}if(V.isFormData(e)&&V.isFunction(e.entries)){const n={};return V.forEachEntry(e,((e,r)=>{t(function(e){return V.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),r,n,0)})),n}return null}const ge={transitional:ce,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const n=t.getContentType()||"",r=n.indexOf("application/json")>-1,o=V.isObject(e);o&&V.isHTMLForm(e)&&(e=new FormData(e));if(V.isFormData(e))return r?JSON.stringify(me(e)):e;if(V.isArrayBuffer(e)||V.isBuffer(e)||V.isStream(e)||V.isFile(e)||V.isBlob(e)||V.isReadableStream(e))return e;if(V.isArrayBufferView(e))return e.buffer;if(V.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let i;if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return te(e,new ye.classes.URLSearchParams,{visitor:function(e,t,n,r){return ye.isNode&&V.isBuffer(e)?(this.append(t,e.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)},...t})}(e,this.formSerializer).toString();if((i=V.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return te(i?{"files[]":e}:e,t&&new t,this.formSerializer)}}return o||r?(t.setContentType("application/json",!1),function(e,t,n){if(V.isString(e))try{return(t||JSON.parse)(e),V.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(n||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||ge.transitional,n=t&&t.forcedJSONParsing,r="json"===this.responseType;if(V.isResponse(e)||V.isReadableStream(e))return e;if(e&&V.isString(e)&&(n&&!this.responseType||r)){const n=!(t&&t.silentJSONParsing)&&r;try{return JSON.parse(e,this.parseReviver)}catch(e){if(n){if("SyntaxError"===e.name)throw G.from(e,G.ERR_BAD_RESPONSE,this,null,this.response);throw e}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ye.classes.FormData,Blob:ye.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};V.forEach(["delete","get","head","post","put","patch"],(e=>{ge.headers[e]={}}));var be=ge;const we=V.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]);const ve=Symbol("internals");function Oe(e){return e&&String(e).trim().toLowerCase()}function Ee(e){return!1===e||null==e?e:V.isArray(e)?e.map(Ee):String(e)}function _e(e,t,n,r,o){return V.isFunction(r)?r.call(this,t,n):(o&&(t=n),V.isString(t)?V.isString(r)?-1!==t.indexOf(r):V.isRegExp(r)?r.test(t):void 0:void 0)}class Se{constructor(e){e&&this.set(e)}set(e,t,n){const r=this;function o(e,t,n){const o=Oe(t);if(!o)throw new Error("header name must be a non-empty string");const i=V.findKey(r,o);(!i||void 0===r[i]||!0===n||void 0===n&&!1!==r[i])&&(r[i||t]=Ee(e))}const i=(e,t)=>V.forEach(e,((e,n)=>o(e,n,t)));if(V.isPlainObject(e)||e instanceof this.constructor)i(e,t);else if(V.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim()))i((e=>{const t={};let n,r,o;return e&&e.split("\n").forEach((function(e){o=e.indexOf(":"),n=e.substring(0,o).trim().toLowerCase(),r=e.substring(o+1).trim(),!n||t[n]&&we[n]||("set-cookie"===n?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)})),t})(e),t);else if(V.isObject(e)&&V.isIterable(e)){let n,r,o={};for(const t of e){if(!V.isArray(t))throw TypeError("Object iterator must return a key-value pair");o[r=t[0]]=(n=o[r])?V.isArray(n)?[...n,t[1]]:[n,t[1]]:t[1]}i(o,t)}else null!=e&&o(t,e,n);return this}get(e,t){if(e=Oe(e)){const n=V.findKey(this,e);if(n){const e=this[n];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}(e);if(V.isFunction(t))return t.call(this,e,n);if(V.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=Oe(e)){const n=V.findKey(this,e);return!(!n||void 0===this[n]||t&&!_e(0,this[n],n,t))}return!1}delete(e,t){const n=this;let r=!1;function o(e){if(e=Oe(e)){const o=V.findKey(n,e);!o||t&&!_e(0,n[o],o,t)||(delete n[o],r=!0)}}return V.isArray(e)?e.forEach(o):o(e),r}clear(e){const t=Object.keys(this);let n=t.length,r=!1;for(;n--;){const o=t[n];e&&!_e(0,this[o],o,e,!0)||(delete this[o],r=!0)}return r}normalize(e){const t=this,n={};return V.forEach(this,((r,o)=>{const i=V.findKey(n,o);if(i)return t[i]=Ee(r),void delete t[o];const s=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,n)=>t.toUpperCase()+n))}(o):String(o).trim();s!==o&&delete t[o],t[s]=Ee(r),n[s]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return V.forEach(this,((n,r)=>{null!=n&&!1!==n&&(t[r]=e&&V.isArray(n)?n.join(", "):n)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach((e=>n.set(e))),n}static accessor(e){const t=(this[ve]=this[ve]={accessors:{}}).accessors,n=this.prototype;function r(e){const r=Oe(e);t[r]||(!function(e,t){const n=V.toCamelCase(" "+t);["get","set","has"].forEach((r=>{Object.defineProperty(e,r+n,{value:function(e,n,o){return this[r].call(this,t,e,n,o)},configurable:!0})}))}(n,e),t[r]=!0)}return V.isArray(e)?e.forEach(r):r(e),this}}Se.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),V.reduceDescriptors(Se.prototype,(({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[n]=e}}})),V.freezeMethods(Se);var Te=Se;function Re(e,t){const n=this||be,r=t||n,o=Te.from(r.headers);let i=r.data;return V.forEach(e,(function(e){i=e.call(n,i,o.normalize(),t?t.status:void 0)})),o.normalize(),i}function ke(e){return!(!e||!e.__CANCEL__)}function xe(e,t,n){G.call(this,null==e?"canceled":e,G.ERR_CANCELED,t,n),this.name="CanceledError"}function je(e,t,n){const r=n.config.validateStatus;n.status&&r&&!r(n.status)?t(new G("Request failed with status code "+n.status,[G.ERR_BAD_REQUEST,G.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):e(n)}V.inherits(xe,G,{__CANCEL__:!0});const Ae=(e,t,n=3)=>{let r=0;const o=function(e,t){e=e||10;const n=new Array(e),r=new Array(e);let o,i=0,s=0;return t=void 0!==t?t:1e3,function(a){const c=Date.now(),u=r[s];o||(o=c),n[i]=a,r[i]=c;let l=s,f=0;for(;l!==i;)f+=n[l++],l%=e;if(i=(i+1)%e,i===s&&(s=(s+1)%e),c-o<t)return;const d=u&&c-u;return d?Math.round(1e3*f/d):void 0}}(50,250);return function(e,t){let n,r,o=0,i=1e3/t;const s=(t,i=Date.now())=>{o=i,n=null,r&&(clearTimeout(r),r=null),e(...t)};return[(...e)=>{const t=Date.now(),a=t-o;a>=i?s(e,t):(n=e,r||(r=setTimeout((()=>{r=null,s(n)}),i-a)))},()=>n&&s(n)]}((n=>{const i=n.loaded,s=n.lengthComputable?n.total:void 0,a=i-r,c=o(a);r=i;e({loaded:i,total:s,progress:s?i/s:void 0,bytes:a,rate:c||void 0,estimated:c&&s&&i<=s?(s-i)/c:void 0,event:n,lengthComputable:null!=s,[t?"download":"upload"]:!0})}),n)},Pe=(e,t)=>{const n=null!=e;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},Ce=e=>(...t)=>V.asap((()=>e(...t)));var Ue=ye.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,ye.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(ye.origin),ye.navigator&&/(msie|trident)/i.test(ye.navigator.userAgent)):()=>!0,Ne=ye.hasStandardBrowserEnv?{write(e,t,n,r,o,i){const s=[e+"="+encodeURIComponent(t)];V.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),V.isString(r)&&s.push("path="+r),V.isString(o)&&s.push("domain="+o),!0===i&&s.push("secure"),document.cookie=s.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function Le(e,t,n){let r=!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t);return e&&(r||0==n)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const Ie=e=>e instanceof Te?{...e}:e;function Je(e,t){t=t||{};const n={};function r(e,t,n,r){return V.isPlainObject(e)&&V.isPlainObject(t)?V.merge.call({caseless:r},e,t):V.isPlainObject(t)?V.merge({},t):V.isArray(t)?t.slice():t}function o(e,t,n,o){return V.isUndefined(t)?V.isUndefined(e)?void 0:r(void 0,e,0,o):r(e,t,0,o)}function i(e,t){if(!V.isUndefined(t))return r(void 0,t)}function s(e,t){return V.isUndefined(t)?V.isUndefined(e)?void 0:r(void 0,e):r(void 0,t)}function a(n,o,i){return i in t?r(n,o):i in e?r(void 0,n):void 0}const c={url:i,method:i,data:i,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,withXSRFToken:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:a,headers:(e,t,n)=>o(Ie(e),Ie(t),0,!0)};return V.forEach(Object.keys({...e,...t}),(function(r){const i=c[r]||o,s=i(e[r],t[r],r);V.isUndefined(s)&&i!==a||(n[r]=s)})),n}var De=e=>{const t=Je({},e);let{data:n,withXSRFToken:r,xsrfHeaderName:o,xsrfCookieName:i,headers:s,auth:a}=t;if(t.headers=s=Te.from(s),t.url=se(Le(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),a&&s.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):""))),V.isFormData(n))if(ye.hasStandardBrowserEnv||ye.hasStandardBrowserWebWorkerEnv)s.setContentType(void 0);else if(V.isFunction(n.getHeaders)){const e=n.getHeaders(),t=["content-type","content-length"];Object.entries(e).forEach((([e,n])=>{t.includes(e.toLowerCase())&&s.set(e,n)}))}if(ye.hasStandardBrowserEnv&&(r&&V.isFunction(r)&&(r=r(t)),r||!1!==r&&Ue(t.url))){const e=o&&i&&Ne.read(i);e&&s.set(o,e)}return t};var Fe="undefined"!=typeof XMLHttpRequest&&function(e){return new Promise((function(t,n){const r=De(e);let o=r.data;const i=Te.from(r.headers).normalize();let s,a,c,u,l,{responseType:f,onUploadProgress:d,onDownloadProgress:p}=r;function h(){u&&u(),l&&l(),r.cancelToken&&r.cancelToken.unsubscribe(s),r.signal&&r.signal.removeEventListener("abort",s)}let y=new XMLHttpRequest;function m(){if(!y)return;const r=Te.from("getAllResponseHeaders"in y&&y.getAllResponseHeaders());je((function(e){t(e),h()}),(function(e){n(e),h()}),{data:f&&"text"!==f&&"json"!==f?y.response:y.responseText,status:y.status,statusText:y.statusText,headers:r,config:e,request:y}),y=null}y.open(r.method.toUpperCase(),r.url,!0),y.timeout=r.timeout,"onloadend"in y?y.onloadend=m:y.onreadystatechange=function(){y&&4===y.readyState&&(0!==y.status||y.responseURL&&0===y.responseURL.indexOf("file:"))&&setTimeout(m)},y.onabort=function(){y&&(n(new G("Request aborted",G.ECONNABORTED,e,y)),y=null)},y.onerror=function(t){const r=new G(t&&t.message?t.message:"Network Error",G.ERR_NETWORK,e,y);r.event=t||null,n(r),y=null},y.ontimeout=function(){let t=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const o=r.transitional||ce;r.timeoutErrorMessage&&(t=r.timeoutErrorMessage),n(new G(t,o.clarifyTimeoutError?G.ETIMEDOUT:G.ECONNABORTED,e,y)),y=null},void 0===o&&i.setContentType(null),"setRequestHeader"in y&&V.forEach(i.toJSON(),(function(e,t){y.setRequestHeader(t,e)})),V.isUndefined(r.withCredentials)||(y.withCredentials=!!r.withCredentials),f&&"json"!==f&&(y.responseType=r.responseType),p&&([c,l]=Ae(p,!0),y.addEventListener("progress",c)),d&&y.upload&&([a,u]=Ae(d),y.upload.addEventListener("progress",a),y.upload.addEventListener("loadend",u)),(r.cancelToken||r.signal)&&(s=t=>{y&&(n(!t||t.type?new xe(null,e,y):t),y.abort(),y=null)},r.cancelToken&&r.cancelToken.subscribe(s),r.signal&&(r.signal.aborted?s():r.signal.addEventListener("abort",s)));const g=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(r.url);g&&-1===ye.protocols.indexOf(g)?n(new G("Unsupported protocol "+g+":",G.ERR_BAD_REQUEST,e)):y.send(o||null)}))};var Be=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let n,r=new AbortController;const o=function(e){if(!n){n=!0,s();const t=e instanceof Error?e:this.reason;r.abort(t instanceof G?t:new xe(t instanceof Error?t.message:t))}};let i=t&&setTimeout((()=>{i=null,o(new G(`timeout ${t} of ms exceeded`,G.ETIMEDOUT))}),t);const s=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach((e=>{e.unsubscribe?e.unsubscribe(o):e.removeEventListener("abort",o)})),e=null)};e.forEach((e=>e.addEventListener("abort",o)));const{signal:a}=r;return a.unsubscribe=()=>V.asap(s),a}};const Me=function*(e,t){let n=e.byteLength;if(!t||n<t)return void(yield e);let r,o=0;for(;o<n;)r=o+t,yield e.slice(o,r),o=r},qe=async function*(e){if(e[Symbol.asyncIterator])return void(yield*e);const t=e.getReader();try{for(;;){const{done:e,value:n}=await t.read();if(e)break;yield n}}finally{await t.cancel()}},ze=(e,t,n,r)=>{const o=async function*(e,t){for await(const n of qe(e))yield*Me(n,t)}(e,t);let i,s=0,a=e=>{i||(i=!0,r&&r(e))};return new ReadableStream({async pull(e){try{const{done:t,value:r}=await o.next();if(t)return a(),void e.close();let i=r.byteLength;if(n){let e=s+=i;n(e)}e.enqueue(new Uint8Array(r))}catch(e){throw a(e),e}},cancel:e=>(a(e),o.return())},{highWaterMark:2})},{isFunction:Ke}=V,We=(({Request:e,Response:t})=>({Request:e,Response:t}))(V.global),{ReadableStream:He,TextEncoder:Ve}=V.global,Ge=(e,...t)=>{try{return!!e(...t)}catch(e){return!1}},Xe=e=>{e=V.merge.call({skipUndefined:!0},We,e);const{fetch:t,Request:n,Response:r}=e,o=t?Ke(t):"function"==typeof fetch,i=Ke(n),s=Ke(r);if(!o)return!1;const a=o&&Ke(He),c=o&&("function"==typeof Ve?(u=new Ve,e=>u.encode(e)):async e=>new Uint8Array(await new n(e).arrayBuffer()));var u;const l=i&&a&&Ge((()=>{let e=!1;const t=new n(ye.origin,{body:new He,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t})),f=s&&a&&Ge((()=>V.isReadableStream(new r("").body))),d={stream:f&&(e=>e.body)};o&&["text","arrayBuffer","blob","formData","stream"].forEach((e=>{!d[e]&&(d[e]=(t,n)=>{let r=t&&t[e];if(r)return r.call(t);throw new G(`Response type '${e}' is not supported`,G.ERR_NOT_SUPPORT,n)})}));const p=async(e,t)=>{const r=V.toFiniteNumber(e.getContentLength());return null==r?(async e=>{if(null==e)return 0;if(V.isBlob(e))return e.size;if(V.isSpecCompliantForm(e)){const t=new n(ye.origin,{method:"POST",body:e});return(await t.arrayBuffer()).byteLength}return V.isArrayBufferView(e)||V.isArrayBuffer(e)?e.byteLength:(V.isURLSearchParams(e)&&(e+=""),V.isString(e)?(await c(e)).byteLength:void 0)})(t):r};return async e=>{let{url:o,method:s,data:a,signal:c,cancelToken:u,timeout:h,onDownloadProgress:y,onUploadProgress:m,responseType:g,headers:b,withCredentials:w="same-origin",fetchOptions:v}=De(e),O=t||fetch;g=g?(g+"").toLowerCase():"text";let E=Be([c,u&&u.toAbortSignal()],h),_=null;const S=E&&E.unsubscribe&&(()=>{E.unsubscribe()});let T;try{if(m&&l&&"get"!==s&&"head"!==s&&0!==(T=await p(b,a))){let e,t=new n(o,{method:"POST",body:a,duplex:"half"});if(V.isFormData(a)&&(e=t.headers.get("content-type"))&&b.setContentType(e),t.body){const[e,n]=Pe(T,Ae(Ce(m)));a=ze(t.body,65536,e,n)}}V.isString(w)||(w=w?"include":"omit");const t=i&&"credentials"in n.prototype,c={...v,signal:E,method:s.toUpperCase(),headers:b.normalize().toJSON(),body:a,duplex:"half",credentials:t?w:void 0};_=i&&new n(o,c);let u=await(i?O(_,v):O(o,c));const h=f&&("stream"===g||"response"===g);if(f&&(y||h&&S)){const e={};["status","statusText","headers"].forEach((t=>{e[t]=u[t]}));const t=V.toFiniteNumber(u.headers.get("content-length")),[n,o]=y&&Pe(t,Ae(Ce(y),!0))||[];u=new r(ze(u.body,65536,n,(()=>{o&&o(),S&&S()})),e)}g=g||"text";let R=await d[V.findKey(d,g)||"text"](u,e);return!h&&S&&S(),await new Promise(((t,n)=>{je(t,n,{data:R,headers:Te.from(u.headers),status:u.status,statusText:u.statusText,config:e,request:_})}))}catch(t){if(S&&S(),t&&"TypeError"===t.name&&/Load failed|fetch/i.test(t.message))throw Object.assign(new G("Network Error",G.ERR_NETWORK,e,_),{cause:t.cause||t});throw G.from(t,t&&t.code,e,_)}}},$e=new Map,Qe=e=>{let t=e?e.env:{};const{fetch:n,Request:r,Response:o}=t,i=[r,o,n];let s,a,c=i.length,u=$e;for(;c--;)s=i[c],a=u.get(s),void 0===a&&u.set(s,a=c?new Map:Xe(t)),u=a;return a};Qe();const Ye={http:null,xhr:Fe,fetch:{get:Qe}};V.forEach(Ye,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(e){}Object.defineProperty(e,"adapterName",{value:t})}}));const Ze=e=>`- ${e}`,et=e=>V.isFunction(e)||null===e||!1===e;var tt=(e,t)=>{e=V.isArray(e)?e:[e];const{length:n}=e;let r,o;const i={};for(let s=0;s<n;s++){let n;if(r=e[s],o=r,!et(r)&&(o=Ye[(n=String(r)).toLowerCase()],void 0===o))throw new G(`Unknown adapter '${n}'`);if(o&&(V.isFunction(o)||(o=o.get(t))))break;i[n||"#"+s]=o}if(!o){const e=Object.entries(i).map((([e,t])=>`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));throw new G("There is no suitable adapter to dispatch the request "+(n?e.length>1?"since :\n"+e.map(Ze).join("\n"):" "+Ze(e[0]):"as no adapter specified"),"ERR_NOT_SUPPORT")}return o};function nt(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new xe(null,e)}function rt(e){nt(e),e.headers=Te.from(e.headers),e.data=Re.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1);return tt(e.adapter||be.adapter,e)(e).then((function(t){return nt(e),t.data=Re.call(e,e.transformResponse,t),t.headers=Te.from(t.headers),t}),(function(t){return ke(t)||(nt(e),t&&t.response&&(t.response.data=Re.call(e,e.transformResponse,t.response),t.response.headers=Te.from(t.response.headers))),Promise.reject(t)}))}const ot="1.12.2",it={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{it[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));const st={};it.transitional=function(e,t,n){function r(e,t){return"[Axios v"+ot+"] Transitional option '"+e+"'"+t+(n?". "+n:"")}return(n,o,i)=>{if(!1===e)throw new G(r(o," has been removed"+(t?" in "+t:"")),G.ERR_DEPRECATED);return t&&!st[o]&&(st[o]=!0,console.warn(r(o," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,o,i)}},it.spelling=function(e){return(t,n)=>(console.warn(`${n} is likely a misspelling of ${e}`),!0)};var at={assertOptions:function(e,t,n){if("object"!=typeof e)throw new G("options must be an object",G.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let o=r.length;for(;o-- >0;){const i=r[o],s=t[i];if(s){const t=e[i],n=void 0===t||s(t,i,e);if(!0!==n)throw new G("option "+i+" must be "+n,G.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new G("Unknown option "+i,G.ERR_BAD_OPTION)}},validators:it};const ct=at.validators;class ut{constructor(e){this.defaults=e||{},this.interceptors={request:new ae,response:new ae}}async request(e,t){try{return await this._request(e,t)}catch(e){if(e instanceof Error){let t={};Error.captureStackTrace?Error.captureStackTrace(t):t=new Error;const n=t.stack?t.stack.replace(/^.+\n/,""):"";try{e.stack?n&&!String(e.stack).endsWith(n.replace(/^.+\n.+\n/,""))&&(e.stack+="\n"+n):e.stack=n}catch(e){}}throw e}}_request(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},t=Je(this.defaults,t);const{transitional:n,paramsSerializer:r,headers:o}=t;void 0!==n&&at.assertOptions(n,{silentJSONParsing:ct.transitional(ct.boolean),forcedJSONParsing:ct.transitional(ct.boolean),clarifyTimeoutError:ct.transitional(ct.boolean)},!1),null!=r&&(V.isFunction(r)?t.paramsSerializer={serialize:r}:at.assertOptions(r,{encode:ct.function,serialize:ct.function},!0)),void 0!==t.allowAbsoluteUrls||(void 0!==this.defaults.allowAbsoluteUrls?t.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:t.allowAbsoluteUrls=!0),at.assertOptions(t,{baseUrl:ct.spelling("baseURL"),withXsrfToken:ct.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();let i=o&&V.merge(o.common,o[t.method]);o&&V.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete o[e]})),t.headers=Te.concat(i,o);const s=[];let a=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(a=a&&e.synchronous,s.unshift(e.fulfilled,e.rejected))}));const c=[];let u;this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));let l,f=0;if(!a){const e=[rt.bind(this),void 0];for(e.unshift(...s),e.push(...c),l=e.length,u=Promise.resolve(t);f<l;)u=u.then(e[f++],e[f++]);return u}l=s.length;let d=t;for(;f<l;){const e=s[f++],t=s[f++];try{d=e(d)}catch(e){t.call(this,e);break}}try{u=rt.call(this,d)}catch(e){return Promise.reject(e)}for(f=0,l=c.length;f<l;)u=u.then(c[f++],c[f++]);return u}getUri(e){return se(Le((e=Je(this.defaults,e)).baseURL,e.url,e.allowAbsoluteUrls),e.params,e.paramsSerializer)}}V.forEach(["delete","get","head","options"],(function(e){ut.prototype[e]=function(t,n){return this.request(Je(n||{},{method:e,url:t,data:(n||{}).data}))}})),V.forEach(["post","put","patch"],(function(e){function t(t){return function(n,r,o){return this.request(Je(o||{},{method:e,headers:t?{"Content-Type":"multipart/form-data"}:{},url:n,data:r}))}}ut.prototype[e]=t(),ut.prototype[e+"Form"]=t(!0)}));var lt=ut;class ft{constructor(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");let t;this.promise=new Promise((function(e){t=e}));const n=this;this.promise.then((e=>{if(!n._listeners)return;let t=n._listeners.length;for(;t-- >0;)n._listeners[t](e);n._listeners=null})),this.promise.then=e=>{let t;const r=new Promise((e=>{n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e,r,o){n.reason||(n.reason=new xe(e,r,o),t(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}toAbortSignal(){const e=new AbortController,t=t=>{e.abort(t)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let e;return{token:new ft((function(t){e=t})),cancel:e}}}var dt=ft;const pt={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(pt).forEach((([e,t])=>{pt[t]=e}));var ht=pt;const yt=function e(t){const n=new lt(t),o=r(lt.prototype.request,n);return V.extend(o,lt.prototype,n,{allOwnKeys:!0}),V.extend(o,n,null,{allOwnKeys:!0}),o.create=function(n){return e(Je(t,n))},o}(be);yt.Axios=lt,yt.CanceledError=xe,yt.CancelToken=dt,yt.isCancel=ke,yt.VERSION=ot,yt.toFormData=te,yt.AxiosError=G,yt.Cancel=yt.CanceledError,yt.all=function(e){return Promise.all(e)},yt.spread=function(e){return function(t){return e.apply(null,t)}},yt.isAxiosError=function(e){return V.isObject(e)&&!0===e.isAxiosError},yt.mergeConfig=Je,yt.AxiosHeaders=Te,yt.formToJSON=e=>me(V.isHTMLForm(e)?new FormData(e):e),yt.getAdapter=tt,yt.HttpStatusCode=ht,yt.default=yt,e.exports=yt},747:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getEnv=void 0;var o=r(n(489));t.getEnv=function(){return o.default.getOptions().env}},767:function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(c){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.getUserIp=void 0;var i=n(384),s=n(747),a={getUserIp:{test:"https://xtest.cnki.net/ip/client",development:"/proxy-sdk-ip/client",production:"https://x.cnki.net/ip/client"}};t.getUserIp=function(){return r(void 0,void 0,void 0,(function(){var e,t,n;return o(this,(function(r){switch(r.label){case 0:return r.trys.push([0,4,,5]),(e=(0,i.getCookie)("yxIP"))&&"undefined"!==e&&"null"!==e?[3,3]:[4,fetch(a.getUserIp[(0,s.getEnv)()],{method:"GET",headers:{source:"x.cnki.net"}})];case 1:return[4,r.sent().json()];case 2:return t=r.sent().content,n=(0,s.getEnv)(),(0,i.setCookie)("yxIP","development"===n?"124.193.98.142":t,432e3,"development"===n?"":".cnki.net"),[2,Promise.resolve(t)];case 3:return[2,Promise.resolve(e)];case 4:return r.sent(),[2,Promise.resolve("")];case 5:return[2]}}))}))}},776:function(e,t,n){"use strict";var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},r.apply(this,arguments)},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getBaseUrl=void 0;var i=o(n(598)),s=o(n(598)),a=o(n(365)),c=o(n(489)),u=n(747),l={development:i.default,test:s.default,production:a.default};t.getBaseUrl=function(e){var t,n,o=c.default.getOptions(),i=(0,u.getEnv)(),a=o.proxy?r(r({},o.proxy),l[i]):"development"===i?s.default:l[i],f=e;if("development"!==i){var d=null!==(n=null===(t=e.match(/^\/[^/]+/))||void 0===t?void 0:t[0])&&void 0!==n?n:"";Object.keys(a).forEach((function(t){(d===t||e.includes(t))&&(f=f.replace(t,a[t].target))}))}return f}},811:function(e,t,n){"use strict";var r,o=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s=this&&this.__importStar||(r=function(e){return r=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},r(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n=r(e),s=0;s<n.length;s++)"default"!==n[s]&&o(t,e,n[s]);return i(t,e),t}),a=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))},c=this&&this.__generator||function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(c){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.localQueueStore=t.removeCookie=t.setCookie=t.getCookie=void 0;var l=s(n(489)),f=n(471),d=n(537),p=u(n(65));t.localQueueStore=p.default;var h=n(767),y=n(551),m=n(336),g=function(){function e(){this.getAction=f.getAction,this.getRefreshToken=f.getRefreshToken,this.postAction=f.postAction,this.getJwt=function(){return(0,d.getJwt)((0,l.getJwtKey)())},this.removeJwt=function(){return(0,d.removeJwt)((0,l.getJwtKey)())},this.getUserIp=function(){return(0,h.getUserIp)()},this.toTrack=function(){return(0,h.getUserIp)()},this.logOut=function(){return(0,m.logOut)()}}return e.getInstance=function(){return this.instance||(this.instance=new e),this.instance},e.prototype.config=function(e){return l.default.config(e),this},e.prototype.ready=function(){return a(this,void 0,void 0,(function(){return c(this,(function(e){switch(e.label){case 0:return[4,(0,h.getUserIp)()];case 1:return e.sent(),l.default.getOptions().tracker&&(0,y.tracker)(),[4,(0,f.getRefreshToken)()];case 2:return[2,e.sent()]}}))}))},e.instance=null,e}();t.default=g.getInstance();var b=n(384);Object.defineProperty(t,"getCookie",{enumerable:!0,get:function(){return b.getCookie}}),Object.defineProperty(t,"setCookie",{enumerable:!0,get:function(){return b.setCookie}}),Object.defineProperty(t,"removeCookie",{enumerable:!0,get:function(){return b.removeCookie}})},935:function(e,t,n){"use strict";var r,o=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s=this&&this.__importStar||(r=function(e){return r=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},r(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n=r(e),s=0;s<n.length;s++)"default"!==n[s]&&o(t,e,n[s]);return i(t,e),t}),a=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))},c=this&&this.__generator||function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(c){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.getRefreshToken=void 0;var u=n(384),l=n(471),f=n(537),d=s(n(489)),p=n(336);t.getRefreshToken=function(){return a(void 0,void 0,void 0,(function(){var e,t,n,r,o,i,s,a,p;return c(this,(function(c){switch(c.label){case 0:if(e=d.default.getOptions(),t=(0,d.getJwtKey)(),!(n=(0,u.getCookie)("LID")))return[2,{code:5014,message:"无法获取 LID,请重新登录"}];if(r=(0,f.getJwt)(t))return[2,{code:0,content:r,message:"JWT 已缓存,无需刷新"}];c.label=1;case 1:return c.trys.push([1,3,,4]),o={AppId:e.appId,ClientId:(0,u.getCookie)("Ecp_ClientId")||"9240617191000011664",ClientIp:(0,u.getCookie)("yxIP"),EcpToken:n},[4,(0,l.postAction)("/proxy-sdk-jwt/JwtToken/ecptoken",o,{withCredentials:!1})];case 2:return(i=c.sent()).Success&&i.Content?(s=i.Content,a=s.JwtToken,p=s.ExpireIn,(0,f.addJwt)(t,a,p),[2,{code:0,content:a,message:"JWT 刷新成功"}]):5019===i.Code?[2,{code:5019,message:i.Message||"Token 刷新失败"}]:5014===i.Code?[2,{code:5014,message:i.Message||"Token 刷新失败"}]:[2,{code:-1,message:i.Message||"Token 刷新失败"}];case 3:return[2,{code:500,message:c.sent().message||"Token 刷新异常,请稍后重试"}];case 4:return[2]}}))}))};var h=0,y=!1,m=[];t.default=function(e,n){return a(void 0,void 0,void 0,(function(){var r,o;return c(this,(function(i){switch(i.label){case 0:if(y)return[3,6];if(y=!0,h>=2)return y=!1,(0,p.logOut)(),[2,Promise.reject("Token 刷新异常,请稍后重试,超出最大重发次数。")];h+=1,i.label=1;case 1:return i.trys.push([1,3,4,5]),[4,(0,t.getRefreshToken)()];case 2:if(0!==(r=i.sent()).code)throw r;return m.forEach((function(e){return e()})),m=[],[2,e(n.config)];case 3:return o=i.sent(),(0,p.logOut)(),[2,Promise.reject(o)];case 4:return y=!1,[7];case 5:return[3,7];case 6:return[2,new Promise((function(t){m.push((function(){t(e(n.config))}))}))];case 7:return[2]}}))}))}}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var i=t[r]={exports:{}};return e[r].call(i.exports,i,i.exports,n),i.exports}return n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n(811)})()));
1
+ /*!
2
+ * openx-js-sdk v0.0.27
3
+ * author: charlie
4
+ * build: 2026-01-09T08:24:56.014Z
5
+ * (c) CNKI
6
+ */
7
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("openx",[],t):"object"==typeof exports?exports.openx=t():e.openx=t()}(this,(()=>(()=>{var e={65:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=new(function(){function e(e,t){void 0===e&&(e=1/0),void 0===t&&(t="queue"),this.key=t,this.maxSize=e;var n=localStorage.getItem(this.key);this.queue=n?new Map(this.parseQueue(n)):new Map}return e.prototype.setValue=function(e,t){if(this.size()>=this.maxSize){var n=this.queue.keys().next().value;this.queue.delete(n)}this.queue.set(e,t),this.saveToLocalStorage()},e.prototype.isEmpty=function(){return 0===this.queue.size},e.prototype.size=function(){return this.queue.size},e.prototype.clear=function(){this.queue.clear(),this.saveToLocalStorage()},e.prototype.getValue=function(e){return this.queue.get(e)},e.prototype.saveToLocalStorage=function(){var e=Array.from(this.queue);localStorage.setItem(this.key,JSON.stringify(e))},e.prototype.parseQueue=function(e){try{var t=JSON.parse(e);return Array.isArray(t)?t:[]}catch(e){return console.error("Failed to parse queue from localStorage:",e),[]}},e}());t.default=n},336:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.logOut=void 0;var r=n(384),o=n(537),i=n(489);t.logOut=function(){try{var e=["LID","AID"];e.forEach((function(e){return(0,r.removeCookie)(e)}));var t=(0,i.getJwtKey)();return t&&(0,o.removeJwt)(t),{code:0,message:"退出登录成功",clearedCookies:e,clearedJwtKey:t}}catch(e){return{code:-1,message:"退出登录失败"}}}},365:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.default={"/proxy-sdk-jwt":{open:!1,ws:!1,target:"https://gateway.cnki.net/coreapi/api",changeOrigin:!0,pathRewrite:{"^/proxy-sdk-jwt":"/"}},"/proxy-sdk-ip":{open:!1,ws:!1,target:"https://x.cnki.net/ip",changeOrigin:!0,pathRewrite:{"^/proxy-sdk-ip":"/"},headers:{origin:"https://x.cnki.net",referer:"https://x.cnki.net"}}}},384:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.removeCookie=t.setCookie=t.getCookie=void 0;t.getCookie=function(e){var t=new RegExp("(^| )"+e+"=([^;]*)(;|$)"),n=document.cookie.match(t);return n?decodeURIComponent(n[2]):null};var n=function(e,t,n,r){var o="";if(n&&0!==n){var i=new Date;i.setTime(i.getTime()+1e3*n),o="; expires=".concat(i.toUTCString())}document.cookie="".concat(e,"=").concat(t).concat(o,"; path=/; domain=").concat(r||"")};t.setCookie=n;t.removeCookie=function(e){n(e,"",-1),n(e,"",-1,"cnki.net")}},471:function(e,t,n){"use strict";var r,o=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s=this&&this.__importStar||(r=function(e){return r=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},r(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n=r(e),s=0;s<n.length;s++)"default"!==n[s]&&o(t,e,n[s]);return i(t,e),t}),a=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))},c=this&&this.__generator||function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(c){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getRefreshToken=t.postAction=t.getAction=void 0;var l=u(n(637)),f=n(537),d=s(n(935));Object.defineProperty(t,"getRefreshToken",{enumerable:!0,get:function(){return d.getRefreshToken}});var p=n(776),h=s(n(489)),y=n(747),m=n(336),g=!1,b=!1,w=l.default.create({timeout:h.default.getOptions().timeout,withCredentials:h.default.getOptions().withCredentials});w.interceptors.request.use((function(e){var t=h.default.getOptions(),n=null==t?void 0:t.interceptorsRequest;if(n){var r=n(e);r&&(e=r)}var o=(0,f.getJwt)((0,h.getJwtKey)());return o&&e.headers&&(e.headers.Authorization="Bearer ".concat(o)),e}),(function(e){return console.error("请求错误:",e),Promise.reject(e)})),w.interceptors.response.use((function(e){return a(void 0,void 0,void 0,(function(){var t,n,r,o,i,s,a,u,l,p,v,O;return c(this,(function(c){switch(c.label){case 0:return t=h.default.getOptions(),n=(0,y.getEnv)(),g?[2,Promise.resolve({data:{message:"请求已被全局阻断!"}})]:"function"!=typeof(r=(null==t?void 0:t.interceptorsResponse)||(null==t?void 0:t.response))?[3,2]:[4,r(e)];case 1:if(void 0!==(o=c.sent()))return[2,o];c.label=2;case 2:if(i=(null===(p=e.data)||void 0===p?void 0:p.code)||(null===(v=e.data)||void 0===v?void 0:v.Code)||(null===(O=e.data)||void 0===O?void 0:O.errcode)||200,[5014,5007].includes(i))return(0,m.logOut)(),[2,Promise.resolve(e)];if(![5013,5016].includes(i))return[3,6];(0,f.removeJwt)((0,h.getJwtKey)()),c.label=3;case 3:return c.trys.push([3,5,,6]),[4,(0,d.default)(w,e)];case 4:return[2,c.sent()];case 5:return s=c.sent(),[2,Promise.resolve({data:s})];case 6:return 429001===i&&(null==t?void 0:t.verifyRealName)&&"development"!==n&&(b||(b=!0,g=!0,a=encodeURIComponent(window.location.href),u=encodeURIComponent("platform=yxpt&returnUrl=".concat(a)),l=["test","development"].includes(n)?"https://xfat.cnki.net":"https://ix.cnki.net",["test","production"].includes(n)&&(window.location.href="".concat(l,"/psmc/user/returnUrl?code=").concat(i,"&paras=").concat(u,"&buries=true")))),[2,Promise.resolve(e)]}}))}))}),(function(e){return a(void 0,void 0,void 0,(function(){var t,n,r;return c(this,(function(o){switch(o.label){case 0:return 401!==e.status?[3,2]:(n=(t=Promise).resolve,[4,(0,d.default)(w,e)]);case 1:return[2,n.apply(t,[o.sent()])];case 2:return(null===(r=e.message)||void 0===r?void 0:r.includes("timeout"))&&console.error("请求超时,请检查网络连接"),[2,Promise.reject(e)]}}))}))}));var v=function(e,t,n,r){void 0===n&&(n={});var o=h.default.getOptions(),i=r||{};if(i.method=e,i.url=(0,p.getBaseUrl)(t),i.timeout=(null==r?void 0:r.timeout)?r.timeout:o.timeout,"get"===e.toLowerCase())i.params=n;else i.data=n;return w(i).then((function(e){var t=h.default.getOptions(),n=null==t?void 0:t.interceptorsResult;if(n&&!0!==i.skipInterceptorsRequest){var r=n(e);if(void 0!==r)return r}return e.data}))};t.getAction=function(e,t,n){return v("get",e,t,n)};t.postAction=function(e,t,n){return v("post",e,t,n)}},489:function(e,t){"use strict";var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},n.apply(this,arguments)};Object.defineProperty(t,"__esModule",{value:!0}),t.getJwtKey=t.store=void 0;var r=function(){function e(){this.options={appId:"",env:"development",scene:"",proxy:"",timeout:5e3,verifyRealName:!0,withCredentials:!0,tracker:!1,overrideTrackerAppId:!1,response:function(){},interceptorsResponse:function(){},interceptorsRequest:function(){},interceptorsResult:function(){}}}return e.getInstance=function(){return this.instance||(this.instance=new e),this.instance},e.prototype.config=function(e){this.options=n(n({},this.options),e)},e.prototype.getOptions=function(){return n({},this.options)},e.prototype.getJwtKey=function(){return this.options.appId},e.prototype.setResponseHandler=function(e){this.options.response=e},e}();t.store=r.getInstance();t.getJwtKey=function(){return t.store.getJwtKey()},t.default=t.store},537:e=>{var t;self,t=()=>(()=>{"use strict";var e={};return{60:function(e,t){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},n.apply(this,arguments)},r=this&&this.__values||function(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},o=this&&this.__read||function(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var r,o,i=n.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(r=i.next()).done;)s.push(r.value)}catch(e){o={error:e}}finally{try{r&&!r.done&&(n=i.return)&&n.call(i)}finally{if(o)throw o.error}}return s},i=this&&this.__spreadArray||function(e,t,n){if(n||2===arguments.length)for(var r,o=0,i=t.length;o<i;o++)!r&&o in t||(r||(r=Array.prototype.slice.call(t,0,o)),r[o]=t[o]);return e.concat(r||Array.prototype.slice.call(t))};Object.defineProperty(t,"__esModule",{value:!0}),t.removeAllJwt=t.removeJwt=t.getJwt=t.addJwt=t.initJwtManager=t.getURLParams=void 0;var s=function(e){var t=new RegExp("(^| )"+e+"=([^;]*)(;|$)"),n=document.cookie.match(t);return n?decodeURIComponent(n[2]):null};t.getURLParams=function(e){var t,n,i=new URLSearchParams(window.location.search),s={};try{for(var a=r(i.entries()),c=a.next();!c.done;c=a.next()){var u=o(c.value,2),l=u[0],f=u[1];s[l]=f}}catch(e){t={error:e}}finally{try{c&&!c.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}return e?s[e]:s};var a=function(){function e(e){this.STORAGE_KEY=(null==e?void 0:e.storageKey)||"X_JWT_LIST",this.MAX_COUNT=(null==e?void 0:e.maxCount)||20,this.POP_DELETE_COUNT=(null==e?void 0:e.popDeleteCount)||5}return e.prototype.addJwt=function(e,r,o){if(!e||""===e.trim())throw new Error("JWT name cannot be empty");if(!r||""===r.trim())throw new Error("JWT token cannot be empty");if(!o||isNaN(o)||o<=0)throw new Error("expiresIn must be a valid positive number");var i=Date.now(),a=this.getJwtList(),c=a.findIndex((function(t){return t.name===e})),u={name:e,expireIn:i+1e3*(o-300),createdAt:i,jwtToken:r,source:s("LID")||(0,t.getURLParams)("LID")||""};c>=0?a[c]=n(n({},a[c]),u):(a.length>=this.MAX_COUNT&&a.splice(0,this.POP_DELETE_COUNT),a.push(u)),this.saveJWTList(a)},e.prototype.getJwt=function(e){if(!e||""===e.trim())throw new Error("JWT name cannot be empty");var n=this.getJwtList().find((function(t){return t.name===e})),r=s("LID")||(0,t.getURLParams)("LID")||"";if(n&&n.source){if(!r)return this.removeAllJwt(),null;if(n.source!==r)return null}return n?n.jwtToken:null},e.prototype.removeJwt=function(e){if(!e||""===e.trim())throw new Error("JWT name cannot be empty");var t=this.getJwtList().filter((function(t){return t.name!==e}));this.saveJWTList(t)},e.prototype.removeAllJwt=function(){localStorage.removeItem(this.STORAGE_KEY)},e.prototype.saveJWTList=function(e){localStorage.setItem(this.STORAGE_KEY,JSON.stringify(e))},e.prototype.removeExpired=function(e){var t=Date.now(),n=e.filter((function(e){return e.expireIn>t}));return this.saveJWTList(n),n},e.prototype.getJwtList=function(){var e=localStorage.getItem(this.STORAGE_KEY);if(!e)return[];try{var t=JSON.parse(e);return this.removeExpired(Array.isArray(t)?t:[])}catch(e){return console.warn("[XJwtManager] getJwtList JSON parse error:",e),[]}},e}(),c=new a;t.initJwtManager=function(e){c=new a(e)},t.addJwt=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return c.addJwt.apply(c,i([],o(e),!1))},t.getJwt=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return c.getJwt.apply(c,i([],o(e),!1))},t.removeJwt=function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return c.removeJwt.apply(c,i([],o(e),!1))},t.removeAllJwt=function(){return c.removeAllJwt()},t.default={addJwt:t.addJwt,getJwt:t.getJwt,removeJwt:t.removeJwt,removeAllJwt:t.removeAllJwt,initJwtManager:t.initJwtManager}}}[60].call(e,0,e),e.default})(),e.exports=t()},551:function(e,t,n){"use strict";var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},r.apply(this,arguments)},o=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))},i=this&&this.__generator||function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(c){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}},s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.tracker=function(){var e=a.default.getOptions();if("development"===e.env)return void(window.sta_api={toTrack:function(){}});if(b(e))return;d=function(t){return o(this,void 0,void 0,(function(){var n;return i(this,(function(r){switch(r.label){case 0:if(u.length>=l&&(u.shift(),console.warn("[STA] trackQueue overflow: oldest dropped.")),u.push(t),f)return g(e),[2];if(y)return[3,5];y=!0,r.label=1;case 1:return r.trys.push([1,3,4,5]),[4,m()];case 2:return r.sent(),b(e),g(e),[3,5];case 3:return n=r.sent(),console.error("[STA] STA load failed:",n),[3,5];case 4:return y=!1,[7];case 5:return[2]}}))}))},window.sta_api=r(r({},window.sta_api||{}),{toTrackOpenx:function(e){if(d)return d(e);console.warn("[STA] proxyToTrackOpenx not ready.")}})};var a=s(n(489)),c="https://piccachex.cnki.net/sta_api/v1/scripts/sensors.min.js?v=20220425",u=[],l=500,f=null,d=null,p=null,h=!1,y=!1;function m(){return h?Promise.resolve():p||(p=new Promise((function(e,t){if(!!document.querySelector('script[src="'.concat(c,'"]')))h=!0,e();else{var n=document.createElement("script");n.src=c,n.async=!1,n.onload=function(){h=!0,e()},n.onerror=function(e){console.error("[STA] script load failed:",e),p=null,t(e)},document.head.appendChild(n)}})))}function g(e){var t,n=null===(t=window.sta_api)||void 0===t?void 0:t.toTrackOpenx;if(n)for(var o=e||{},i=o.appId,s=o.scene;u.length;){var a=u.shift();n(r(r({},a),{app_id:"".concat(i).concat(s?"@"+s:"")}))}}function b(e){var t=window.sta_api;return!(!t||"function"!=typeof t.toTrack)&&(t.__OPENX_PATCHED__||(f=t.toTrack,t.toTrackOpenx=function(e){var t=r(r({},e),{track_from:"openx-js-sdk",app_id:e.app_id});return f(t)},t.__OPENX_PATCHED__=!0),!0)}},598:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.default={"/proxy-sdk-jwt":{open:!1,ws:!1,target:"https://xtest.cnki.net/coreapi/api",changeOrigin:!0,pathRewrite:{"^/proxy-sdk-jwt":"/"},headers:{origin:"https://x.cnki.net",referer:"https://x.cnki.net"}},"/proxy-sdk-ip":{open:!1,ws:!1,target:"https://xtest.cnki.net/ip",changeOrigin:!0,pathRewrite:{"^/proxy-sdk-ip":"/"},headers:{origin:"https://x.cnki.net",referer:"https://x.cnki.net"}}}},637:(e,t,n)=>{"use strict";
8
+ /*! Axios v1.12.2 Copyright (c) 2025 Matt Zabriskie and contributors */function r(e,t){return function(){return e.apply(t,arguments)}}const{toString:o}=Object.prototype,{getPrototypeOf:i}=Object,{iterator:s,toStringTag:a}=Symbol,c=(u=Object.create(null),e=>{const t=o.call(e);return u[t]||(u[t]=t.slice(8,-1).toLowerCase())});var u;const l=e=>(e=e.toLowerCase(),t=>c(t)===e),f=e=>t=>typeof t===e,{isArray:d}=Array,p=f("undefined");function h(e){return null!==e&&!p(e)&&null!==e.constructor&&!p(e.constructor)&&g(e.constructor.isBuffer)&&e.constructor.isBuffer(e)}const y=l("ArrayBuffer");const m=f("string"),g=f("function"),b=f("number"),w=e=>null!==e&&"object"==typeof e,v=e=>{if("object"!==c(e))return!1;const t=i(e);return!(null!==t&&t!==Object.prototype&&null!==Object.getPrototypeOf(t)||a in e||s in e)},O=l("Date"),E=l("File"),_=l("Blob"),R=l("FileList"),S=l("URLSearchParams"),[T,k,x,j]=["ReadableStream","Request","Response","Headers"].map(l);function A(e,t,{allOwnKeys:n=!1}={}){if(null==e)return;let r,o;if("object"!=typeof e&&(e=[e]),d(e))for(r=0,o=e.length;r<o;r++)t.call(null,e[r],r,e);else{if(h(e))return;const o=n?Object.getOwnPropertyNames(e):Object.keys(e),i=o.length;let s;for(r=0;r<i;r++)s=o[r],t.call(null,e[s],s,e)}}function P(e,t){if(h(e))return null;t=t.toLowerCase();const n=Object.keys(e);let r,o=n.length;for(;o-- >0;)if(r=n[o],t===r.toLowerCase())return r;return null}const C="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:n.g,U=e=>!p(e)&&e!==C;const N=(L="undefined"!=typeof Uint8Array&&i(Uint8Array),e=>L&&e instanceof L);var L;const J=l("HTMLFormElement"),I=(({hasOwnProperty:e})=>(t,n)=>e.call(t,n))(Object.prototype),D=l("RegExp"),F=(e,t)=>{const n=Object.getOwnPropertyDescriptors(e),r={};A(n,((n,o)=>{let i;!1!==(i=t(n,o,e))&&(r[o]=i||n)})),Object.defineProperties(e,r)};const B=l("AsyncFunction"),M=(q="function"==typeof setImmediate,z=g(C.postMessage),q?setImmediate:z?(K=`axios@${Math.random()}`,W=[],C.addEventListener("message",(({source:e,data:t})=>{e===C&&t===K&&W.length&&W.shift()()}),!1),e=>{W.push(e),C.postMessage(K,"*")}):e=>setTimeout(e));var q,z,K,W;const H="undefined"!=typeof queueMicrotask?queueMicrotask.bind(C):"undefined"!=typeof process&&process.nextTick||M;var V={isArray:d,isArrayBuffer:y,isBuffer:h,isFormData:e=>{let t;return e&&("function"==typeof FormData&&e instanceof FormData||g(e.append)&&("formdata"===(t=c(e))||"object"===t&&g(e.toString)&&"[object FormData]"===e.toString()))},isArrayBufferView:function(e){let t;return t="undefined"!=typeof ArrayBuffer&&ArrayBuffer.isView?ArrayBuffer.isView(e):e&&e.buffer&&y(e.buffer),t},isString:m,isNumber:b,isBoolean:e=>!0===e||!1===e,isObject:w,isPlainObject:v,isEmptyObject:e=>{if(!w(e)||h(e))return!1;try{return 0===Object.keys(e).length&&Object.getPrototypeOf(e)===Object.prototype}catch(e){return!1}},isReadableStream:T,isRequest:k,isResponse:x,isHeaders:j,isUndefined:p,isDate:O,isFile:E,isBlob:_,isRegExp:D,isFunction:g,isStream:e=>w(e)&&g(e.pipe),isURLSearchParams:S,isTypedArray:N,isFileList:R,forEach:A,merge:function e(){const{caseless:t,skipUndefined:n}=U(this)&&this||{},r={},o=(o,i)=>{const s=t&&P(r,i)||i;v(r[s])&&v(o)?r[s]=e(r[s],o):v(o)?r[s]=e({},o):d(o)?r[s]=o.slice():n&&p(o)||(r[s]=o)};for(let e=0,t=arguments.length;e<t;e++)arguments[e]&&A(arguments[e],o);return r},extend:(e,t,n,{allOwnKeys:o}={})=>(A(t,((t,o)=>{n&&g(t)?e[o]=r(t,n):e[o]=t}),{allOwnKeys:o}),e),trim:e=>e.trim?e.trim():e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""),stripBOM:e=>(65279===e.charCodeAt(0)&&(e=e.slice(1)),e),inherits:(e,t,n,r)=>{e.prototype=Object.create(t.prototype,r),e.prototype.constructor=e,Object.defineProperty(e,"super",{value:t.prototype}),n&&Object.assign(e.prototype,n)},toFlatObject:(e,t,n,r)=>{let o,s,a;const c={};if(t=t||{},null==e)return t;do{for(o=Object.getOwnPropertyNames(e),s=o.length;s-- >0;)a=o[s],r&&!r(a,e,t)||c[a]||(t[a]=e[a],c[a]=!0);e=!1!==n&&i(e)}while(e&&(!n||n(e,t))&&e!==Object.prototype);return t},kindOf:c,kindOfTest:l,endsWith:(e,t,n)=>{e=String(e),(void 0===n||n>e.length)&&(n=e.length),n-=t.length;const r=e.indexOf(t,n);return-1!==r&&r===n},toArray:e=>{if(!e)return null;if(d(e))return e;let t=e.length;if(!b(t))return null;const n=new Array(t);for(;t-- >0;)n[t]=e[t];return n},forEachEntry:(e,t)=>{const n=(e&&e[s]).call(e);let r;for(;(r=n.next())&&!r.done;){const n=r.value;t.call(e,n[0],n[1])}},matchAll:(e,t)=>{let n;const r=[];for(;null!==(n=e.exec(t));)r.push(n);return r},isHTMLForm:J,hasOwnProperty:I,hasOwnProp:I,reduceDescriptors:F,freezeMethods:e=>{F(e,((t,n)=>{if(g(e)&&-1!==["arguments","caller","callee"].indexOf(n))return!1;const r=e[n];g(r)&&(t.enumerable=!1,"writable"in t?t.writable=!1:t.set||(t.set=()=>{throw Error("Can not rewrite read-only method '"+n+"'")}))}))},toObjectSet:(e,t)=>{const n={},r=e=>{e.forEach((e=>{n[e]=!0}))};return d(e)?r(e):r(String(e).split(t)),n},toCamelCase:e=>e.toLowerCase().replace(/[-_\s]([a-z\d])(\w*)/g,(function(e,t,n){return t.toUpperCase()+n})),noop:()=>{},toFiniteNumber:(e,t)=>null!=e&&Number.isFinite(e=+e)?e:t,findKey:P,global:C,isContextDefined:U,isSpecCompliantForm:function(e){return!!(e&&g(e.append)&&"FormData"===e[a]&&e[s])},toJSONObject:e=>{const t=new Array(10),n=(e,r)=>{if(w(e)){if(t.indexOf(e)>=0)return;if(h(e))return e;if(!("toJSON"in e)){t[r]=e;const o=d(e)?[]:{};return A(e,((e,t)=>{const i=n(e,r+1);!p(i)&&(o[t]=i)})),t[r]=void 0,o}}return e};return n(e,0)},isAsyncFn:B,isThenable:e=>e&&(w(e)||g(e))&&g(e.then)&&g(e.catch),setImmediate:M,asap:H,isIterable:e=>null!=e&&g(e[s])};function G(e,t,n,r,o){Error.call(this),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=(new Error).stack,this.message=e,this.name="AxiosError",t&&(this.code=t),n&&(this.config=n),r&&(this.request=r),o&&(this.response=o,this.status=o.status?o.status:null)}V.inherits(G,Error,{toJSON:function(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:V.toJSONObject(this.config),code:this.code,status:this.status}}});const X=G.prototype,$={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED","ERR_NOT_SUPPORT","ERR_INVALID_URL"].forEach((e=>{$[e]={value:e}})),Object.defineProperties(G,$),Object.defineProperty(X,"isAxiosError",{value:!0}),G.from=(e,t,n,r,o,i)=>{const s=Object.create(X);V.toFlatObject(e,s,(function(e){return e!==Error.prototype}),(e=>"isAxiosError"!==e));const a=e&&e.message?e.message:"Error",c=null==t&&e?e.code:t;return G.call(s,a,c,n,r,o),e&&null==s.cause&&Object.defineProperty(s,"cause",{value:e,configurable:!0}),s.name=e&&e.name||"Error",i&&Object.assign(s,i),s};function Q(e){return V.isPlainObject(e)||V.isArray(e)}function Y(e){return V.endsWith(e,"[]")?e.slice(0,-2):e}function Z(e,t,n){return e?e.concat(t).map((function(e,t){return e=Y(e),!n&&t?"["+e+"]":e})).join(n?".":""):t}const ee=V.toFlatObject(V,{},null,(function(e){return/^is[A-Z]/.test(e)}));function te(e,t,n){if(!V.isObject(e))throw new TypeError("target must be an object");t=t||new FormData;const r=(n=V.toFlatObject(n,{metaTokens:!0,dots:!1,indexes:!1},!1,(function(e,t){return!V.isUndefined(t[e])}))).metaTokens,o=n.visitor||u,i=n.dots,s=n.indexes,a=(n.Blob||"undefined"!=typeof Blob&&Blob)&&V.isSpecCompliantForm(t);if(!V.isFunction(o))throw new TypeError("visitor must be a function");function c(e){if(null===e)return"";if(V.isDate(e))return e.toISOString();if(V.isBoolean(e))return e.toString();if(!a&&V.isBlob(e))throw new G("Blob is not supported. Use a Buffer instead.");return V.isArrayBuffer(e)||V.isTypedArray(e)?a&&"function"==typeof Blob?new Blob([e]):Buffer.from(e):e}function u(e,n,o){let a=e;if(e&&!o&&"object"==typeof e)if(V.endsWith(n,"{}"))n=r?n:n.slice(0,-2),e=JSON.stringify(e);else if(V.isArray(e)&&function(e){return V.isArray(e)&&!e.some(Q)}(e)||(V.isFileList(e)||V.endsWith(n,"[]"))&&(a=V.toArray(e)))return n=Y(n),a.forEach((function(e,r){!V.isUndefined(e)&&null!==e&&t.append(!0===s?Z([n],r,i):null===s?n:n+"[]",c(e))})),!1;return!!Q(e)||(t.append(Z(o,n,i),c(e)),!1)}const l=[],f=Object.assign(ee,{defaultVisitor:u,convertValue:c,isVisitable:Q});if(!V.isObject(e))throw new TypeError("data must be an object");return function e(n,r){if(!V.isUndefined(n)){if(-1!==l.indexOf(n))throw Error("Circular reference detected in "+r.join("."));l.push(n),V.forEach(n,(function(n,i){!0===(!(V.isUndefined(n)||null===n)&&o.call(t,n,V.isString(i)?i.trim():i,r,f))&&e(n,r?r.concat(i):[i])})),l.pop()}}(e),t}function ne(e){const t={"!":"%21","'":"%27","(":"%28",")":"%29","~":"%7E","%20":"+","%00":"\0"};return encodeURIComponent(e).replace(/[!'()~]|%20|%00/g,(function(e){return t[e]}))}function re(e,t){this._pairs=[],e&&te(e,this,t)}const oe=re.prototype;function ie(e){return encodeURIComponent(e).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+")}function se(e,t,n){if(!t)return e;const r=n&&n.encode||ie;V.isFunction(n)&&(n={serialize:n});const o=n&&n.serialize;let i;if(i=o?o(t,n):V.isURLSearchParams(t)?t.toString():new re(t,n).toString(r),i){const t=e.indexOf("#");-1!==t&&(e=e.slice(0,t)),e+=(-1===e.indexOf("?")?"?":"&")+i}return e}oe.append=function(e,t){this._pairs.push([e,t])},oe.toString=function(e){const t=e?function(t){return e.call(this,t,ne)}:ne;return this._pairs.map((function(e){return t(e[0])+"="+t(e[1])}),"").join("&")};var ae=class{constructor(){this.handlers=[]}use(e,t,n){return this.handlers.push({fulfilled:e,rejected:t,synchronous:!!n&&n.synchronous,runWhen:n?n.runWhen:null}),this.handlers.length-1}eject(e){this.handlers[e]&&(this.handlers[e]=null)}clear(){this.handlers&&(this.handlers=[])}forEach(e){V.forEach(this.handlers,(function(t){null!==t&&e(t)}))}},ce={silentJSONParsing:!0,forcedJSONParsing:!0,clarifyTimeoutError:!1},ue={isBrowser:!0,classes:{URLSearchParams:"undefined"!=typeof URLSearchParams?URLSearchParams:re,FormData:"undefined"!=typeof FormData?FormData:null,Blob:"undefined"!=typeof Blob?Blob:null},protocols:["http","https","file","blob","url","data"]};const le="undefined"!=typeof window&&"undefined"!=typeof document,fe="object"==typeof navigator&&navigator||void 0,de=le&&(!fe||["ReactNative","NativeScript","NS"].indexOf(fe.product)<0),pe="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope&&"function"==typeof self.importScripts,he=le&&window.location.href||"http://localhost";var ye={...Object.freeze({__proto__:null,hasBrowserEnv:le,hasStandardBrowserWebWorkerEnv:pe,hasStandardBrowserEnv:de,navigator:fe,origin:he}),...ue};function me(e){function t(e,n,r,o){let i=e[o++];if("__proto__"===i)return!0;const s=Number.isFinite(+i),a=o>=e.length;if(i=!i&&V.isArray(r)?r.length:i,a)return V.hasOwnProp(r,i)?r[i]=[r[i],n]:r[i]=n,!s;r[i]&&V.isObject(r[i])||(r[i]=[]);return t(e,n,r[i],o)&&V.isArray(r[i])&&(r[i]=function(e){const t={},n=Object.keys(e);let r;const o=n.length;let i;for(r=0;r<o;r++)i=n[r],t[i]=e[i];return t}(r[i])),!s}if(V.isFormData(e)&&V.isFunction(e.entries)){const n={};return V.forEachEntry(e,((e,r)=>{t(function(e){return V.matchAll(/\w+|\[(\w*)]/g,e).map((e=>"[]"===e[0]?"":e[1]||e[0]))}(e),r,n,0)})),n}return null}const ge={transitional:ce,adapter:["xhr","http","fetch"],transformRequest:[function(e,t){const n=t.getContentType()||"",r=n.indexOf("application/json")>-1,o=V.isObject(e);o&&V.isHTMLForm(e)&&(e=new FormData(e));if(V.isFormData(e))return r?JSON.stringify(me(e)):e;if(V.isArrayBuffer(e)||V.isBuffer(e)||V.isStream(e)||V.isFile(e)||V.isBlob(e)||V.isReadableStream(e))return e;if(V.isArrayBufferView(e))return e.buffer;if(V.isURLSearchParams(e))return t.setContentType("application/x-www-form-urlencoded;charset=utf-8",!1),e.toString();let i;if(o){if(n.indexOf("application/x-www-form-urlencoded")>-1)return function(e,t){return te(e,new ye.classes.URLSearchParams,{visitor:function(e,t,n,r){return ye.isNode&&V.isBuffer(e)?(this.append(t,e.toString("base64")),!1):r.defaultVisitor.apply(this,arguments)},...t})}(e,this.formSerializer).toString();if((i=V.isFileList(e))||n.indexOf("multipart/form-data")>-1){const t=this.env&&this.env.FormData;return te(i?{"files[]":e}:e,t&&new t,this.formSerializer)}}return o||r?(t.setContentType("application/json",!1),function(e,t,n){if(V.isString(e))try{return(t||JSON.parse)(e),V.trim(e)}catch(e){if("SyntaxError"!==e.name)throw e}return(n||JSON.stringify)(e)}(e)):e}],transformResponse:[function(e){const t=this.transitional||ge.transitional,n=t&&t.forcedJSONParsing,r="json"===this.responseType;if(V.isResponse(e)||V.isReadableStream(e))return e;if(e&&V.isString(e)&&(n&&!this.responseType||r)){const n=!(t&&t.silentJSONParsing)&&r;try{return JSON.parse(e,this.parseReviver)}catch(e){if(n){if("SyntaxError"===e.name)throw G.from(e,G.ERR_BAD_RESPONSE,this,null,this.response);throw e}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:ye.classes.FormData,Blob:ye.classes.Blob},validateStatus:function(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*","Content-Type":void 0}}};V.forEach(["delete","get","head","post","put","patch"],(e=>{ge.headers[e]={}}));var be=ge;const we=V.toObjectSet(["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"]);const ve=Symbol("internals");function Oe(e){return e&&String(e).trim().toLowerCase()}function Ee(e){return!1===e||null==e?e:V.isArray(e)?e.map(Ee):String(e)}function _e(e,t,n,r,o){return V.isFunction(r)?r.call(this,t,n):(o&&(t=n),V.isString(t)?V.isString(r)?-1!==t.indexOf(r):V.isRegExp(r)?r.test(t):void 0:void 0)}class Re{constructor(e){e&&this.set(e)}set(e,t,n){const r=this;function o(e,t,n){const o=Oe(t);if(!o)throw new Error("header name must be a non-empty string");const i=V.findKey(r,o);(!i||void 0===r[i]||!0===n||void 0===n&&!1!==r[i])&&(r[i||t]=Ee(e))}const i=(e,t)=>V.forEach(e,((e,n)=>o(e,n,t)));if(V.isPlainObject(e)||e instanceof this.constructor)i(e,t);else if(V.isString(e)&&(e=e.trim())&&!/^[-_a-zA-Z0-9^`|~,!#$%&'*+.]+$/.test(e.trim()))i((e=>{const t={};let n,r,o;return e&&e.split("\n").forEach((function(e){o=e.indexOf(":"),n=e.substring(0,o).trim().toLowerCase(),r=e.substring(o+1).trim(),!n||t[n]&&we[n]||("set-cookie"===n?t[n]?t[n].push(r):t[n]=[r]:t[n]=t[n]?t[n]+", "+r:r)})),t})(e),t);else if(V.isObject(e)&&V.isIterable(e)){let n,r,o={};for(const t of e){if(!V.isArray(t))throw TypeError("Object iterator must return a key-value pair");o[r=t[0]]=(n=o[r])?V.isArray(n)?[...n,t[1]]:[n,t[1]]:t[1]}i(o,t)}else null!=e&&o(t,e,n);return this}get(e,t){if(e=Oe(e)){const n=V.findKey(this,e);if(n){const e=this[n];if(!t)return e;if(!0===t)return function(e){const t=Object.create(null),n=/([^\s,;=]+)\s*(?:=\s*([^,;]+))?/g;let r;for(;r=n.exec(e);)t[r[1]]=r[2];return t}(e);if(V.isFunction(t))return t.call(this,e,n);if(V.isRegExp(t))return t.exec(e);throw new TypeError("parser must be boolean|regexp|function")}}}has(e,t){if(e=Oe(e)){const n=V.findKey(this,e);return!(!n||void 0===this[n]||t&&!_e(0,this[n],n,t))}return!1}delete(e,t){const n=this;let r=!1;function o(e){if(e=Oe(e)){const o=V.findKey(n,e);!o||t&&!_e(0,n[o],o,t)||(delete n[o],r=!0)}}return V.isArray(e)?e.forEach(o):o(e),r}clear(e){const t=Object.keys(this);let n=t.length,r=!1;for(;n--;){const o=t[n];e&&!_e(0,this[o],o,e,!0)||(delete this[o],r=!0)}return r}normalize(e){const t=this,n={};return V.forEach(this,((r,o)=>{const i=V.findKey(n,o);if(i)return t[i]=Ee(r),void delete t[o];const s=e?function(e){return e.trim().toLowerCase().replace(/([a-z\d])(\w*)/g,((e,t,n)=>t.toUpperCase()+n))}(o):String(o).trim();s!==o&&delete t[o],t[s]=Ee(r),n[s]=!0})),this}concat(...e){return this.constructor.concat(this,...e)}toJSON(e){const t=Object.create(null);return V.forEach(this,((n,r)=>{null!=n&&!1!==n&&(t[r]=e&&V.isArray(n)?n.join(", "):n)})),t}[Symbol.iterator](){return Object.entries(this.toJSON())[Symbol.iterator]()}toString(){return Object.entries(this.toJSON()).map((([e,t])=>e+": "+t)).join("\n")}getSetCookie(){return this.get("set-cookie")||[]}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(e){return e instanceof this?e:new this(e)}static concat(e,...t){const n=new this(e);return t.forEach((e=>n.set(e))),n}static accessor(e){const t=(this[ve]=this[ve]={accessors:{}}).accessors,n=this.prototype;function r(e){const r=Oe(e);t[r]||(!function(e,t){const n=V.toCamelCase(" "+t);["get","set","has"].forEach((r=>{Object.defineProperty(e,r+n,{value:function(e,n,o){return this[r].call(this,t,e,n,o)},configurable:!0})}))}(n,e),t[r]=!0)}return V.isArray(e)?e.forEach(r):r(e),this}}Re.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]),V.reduceDescriptors(Re.prototype,(({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(e){this[n]=e}}})),V.freezeMethods(Re);var Se=Re;function Te(e,t){const n=this||be,r=t||n,o=Se.from(r.headers);let i=r.data;return V.forEach(e,(function(e){i=e.call(n,i,o.normalize(),t?t.status:void 0)})),o.normalize(),i}function ke(e){return!(!e||!e.__CANCEL__)}function xe(e,t,n){G.call(this,null==e?"canceled":e,G.ERR_CANCELED,t,n),this.name="CanceledError"}function je(e,t,n){const r=n.config.validateStatus;n.status&&r&&!r(n.status)?t(new G("Request failed with status code "+n.status,[G.ERR_BAD_REQUEST,G.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n)):e(n)}V.inherits(xe,G,{__CANCEL__:!0});const Ae=(e,t,n=3)=>{let r=0;const o=function(e,t){e=e||10;const n=new Array(e),r=new Array(e);let o,i=0,s=0;return t=void 0!==t?t:1e3,function(a){const c=Date.now(),u=r[s];o||(o=c),n[i]=a,r[i]=c;let l=s,f=0;for(;l!==i;)f+=n[l++],l%=e;if(i=(i+1)%e,i===s&&(s=(s+1)%e),c-o<t)return;const d=u&&c-u;return d?Math.round(1e3*f/d):void 0}}(50,250);return function(e,t){let n,r,o=0,i=1e3/t;const s=(t,i=Date.now())=>{o=i,n=null,r&&(clearTimeout(r),r=null),e(...t)};return[(...e)=>{const t=Date.now(),a=t-o;a>=i?s(e,t):(n=e,r||(r=setTimeout((()=>{r=null,s(n)}),i-a)))},()=>n&&s(n)]}((n=>{const i=n.loaded,s=n.lengthComputable?n.total:void 0,a=i-r,c=o(a);r=i;e({loaded:i,total:s,progress:s?i/s:void 0,bytes:a,rate:c||void 0,estimated:c&&s&&i<=s?(s-i)/c:void 0,event:n,lengthComputable:null!=s,[t?"download":"upload"]:!0})}),n)},Pe=(e,t)=>{const n=null!=e;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},Ce=e=>(...t)=>V.asap((()=>e(...t)));var Ue=ye.hasStandardBrowserEnv?((e,t)=>n=>(n=new URL(n,ye.origin),e.protocol===n.protocol&&e.host===n.host&&(t||e.port===n.port)))(new URL(ye.origin),ye.navigator&&/(msie|trident)/i.test(ye.navigator.userAgent)):()=>!0,Ne=ye.hasStandardBrowserEnv?{write(e,t,n,r,o,i){const s=[e+"="+encodeURIComponent(t)];V.isNumber(n)&&s.push("expires="+new Date(n).toGMTString()),V.isString(r)&&s.push("path="+r),V.isString(o)&&s.push("domain="+o),!0===i&&s.push("secure"),document.cookie=s.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read:()=>null,remove(){}};function Le(e,t,n){let r=!/^([a-z][a-z\d+\-.]*:)?\/\//i.test(t);return e&&(r||0==n)?function(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}(e,t):t}const Je=e=>e instanceof Se?{...e}:e;function Ie(e,t){t=t||{};const n={};function r(e,t,n,r){return V.isPlainObject(e)&&V.isPlainObject(t)?V.merge.call({caseless:r},e,t):V.isPlainObject(t)?V.merge({},t):V.isArray(t)?t.slice():t}function o(e,t,n,o){return V.isUndefined(t)?V.isUndefined(e)?void 0:r(void 0,e,0,o):r(e,t,0,o)}function i(e,t){if(!V.isUndefined(t))return r(void 0,t)}function s(e,t){return V.isUndefined(t)?V.isUndefined(e)?void 0:r(void 0,e):r(void 0,t)}function a(n,o,i){return i in t?r(n,o):i in e?r(void 0,n):void 0}const c={url:i,method:i,data:i,baseURL:s,transformRequest:s,transformResponse:s,paramsSerializer:s,timeout:s,timeoutMessage:s,withCredentials:s,withXSRFToken:s,adapter:s,responseType:s,xsrfCookieName:s,xsrfHeaderName:s,onUploadProgress:s,onDownloadProgress:s,decompress:s,maxContentLength:s,maxBodyLength:s,beforeRedirect:s,transport:s,httpAgent:s,httpsAgent:s,cancelToken:s,socketPath:s,responseEncoding:s,validateStatus:a,headers:(e,t,n)=>o(Je(e),Je(t),0,!0)};return V.forEach(Object.keys({...e,...t}),(function(r){const i=c[r]||o,s=i(e[r],t[r],r);V.isUndefined(s)&&i!==a||(n[r]=s)})),n}var De=e=>{const t=Ie({},e);let{data:n,withXSRFToken:r,xsrfHeaderName:o,xsrfCookieName:i,headers:s,auth:a}=t;if(t.headers=s=Se.from(s),t.url=se(Le(t.baseURL,t.url,t.allowAbsoluteUrls),e.params,e.paramsSerializer),a&&s.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):""))),V.isFormData(n))if(ye.hasStandardBrowserEnv||ye.hasStandardBrowserWebWorkerEnv)s.setContentType(void 0);else if(V.isFunction(n.getHeaders)){const e=n.getHeaders(),t=["content-type","content-length"];Object.entries(e).forEach((([e,n])=>{t.includes(e.toLowerCase())&&s.set(e,n)}))}if(ye.hasStandardBrowserEnv&&(r&&V.isFunction(r)&&(r=r(t)),r||!1!==r&&Ue(t.url))){const e=o&&i&&Ne.read(i);e&&s.set(o,e)}return t};var Fe="undefined"!=typeof XMLHttpRequest&&function(e){return new Promise((function(t,n){const r=De(e);let o=r.data;const i=Se.from(r.headers).normalize();let s,a,c,u,l,{responseType:f,onUploadProgress:d,onDownloadProgress:p}=r;function h(){u&&u(),l&&l(),r.cancelToken&&r.cancelToken.unsubscribe(s),r.signal&&r.signal.removeEventListener("abort",s)}let y=new XMLHttpRequest;function m(){if(!y)return;const r=Se.from("getAllResponseHeaders"in y&&y.getAllResponseHeaders());je((function(e){t(e),h()}),(function(e){n(e),h()}),{data:f&&"text"!==f&&"json"!==f?y.response:y.responseText,status:y.status,statusText:y.statusText,headers:r,config:e,request:y}),y=null}y.open(r.method.toUpperCase(),r.url,!0),y.timeout=r.timeout,"onloadend"in y?y.onloadend=m:y.onreadystatechange=function(){y&&4===y.readyState&&(0!==y.status||y.responseURL&&0===y.responseURL.indexOf("file:"))&&setTimeout(m)},y.onabort=function(){y&&(n(new G("Request aborted",G.ECONNABORTED,e,y)),y=null)},y.onerror=function(t){const r=new G(t&&t.message?t.message:"Network Error",G.ERR_NETWORK,e,y);r.event=t||null,n(r),y=null},y.ontimeout=function(){let t=r.timeout?"timeout of "+r.timeout+"ms exceeded":"timeout exceeded";const o=r.transitional||ce;r.timeoutErrorMessage&&(t=r.timeoutErrorMessage),n(new G(t,o.clarifyTimeoutError?G.ETIMEDOUT:G.ECONNABORTED,e,y)),y=null},void 0===o&&i.setContentType(null),"setRequestHeader"in y&&V.forEach(i.toJSON(),(function(e,t){y.setRequestHeader(t,e)})),V.isUndefined(r.withCredentials)||(y.withCredentials=!!r.withCredentials),f&&"json"!==f&&(y.responseType=r.responseType),p&&([c,l]=Ae(p,!0),y.addEventListener("progress",c)),d&&y.upload&&([a,u]=Ae(d),y.upload.addEventListener("progress",a),y.upload.addEventListener("loadend",u)),(r.cancelToken||r.signal)&&(s=t=>{y&&(n(!t||t.type?new xe(null,e,y):t),y.abort(),y=null)},r.cancelToken&&r.cancelToken.subscribe(s),r.signal&&(r.signal.aborted?s():r.signal.addEventListener("abort",s)));const g=function(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}(r.url);g&&-1===ye.protocols.indexOf(g)?n(new G("Unsupported protocol "+g+":",G.ERR_BAD_REQUEST,e)):y.send(o||null)}))};var Be=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let n,r=new AbortController;const o=function(e){if(!n){n=!0,s();const t=e instanceof Error?e:this.reason;r.abort(t instanceof G?t:new xe(t instanceof Error?t.message:t))}};let i=t&&setTimeout((()=>{i=null,o(new G(`timeout ${t} of ms exceeded`,G.ETIMEDOUT))}),t);const s=()=>{e&&(i&&clearTimeout(i),i=null,e.forEach((e=>{e.unsubscribe?e.unsubscribe(o):e.removeEventListener("abort",o)})),e=null)};e.forEach((e=>e.addEventListener("abort",o)));const{signal:a}=r;return a.unsubscribe=()=>V.asap(s),a}};const Me=function*(e,t){let n=e.byteLength;if(!t||n<t)return void(yield e);let r,o=0;for(;o<n;)r=o+t,yield e.slice(o,r),o=r},qe=async function*(e){if(e[Symbol.asyncIterator])return void(yield*e);const t=e.getReader();try{for(;;){const{done:e,value:n}=await t.read();if(e)break;yield n}}finally{await t.cancel()}},ze=(e,t,n,r)=>{const o=async function*(e,t){for await(const n of qe(e))yield*Me(n,t)}(e,t);let i,s=0,a=e=>{i||(i=!0,r&&r(e))};return new ReadableStream({async pull(e){try{const{done:t,value:r}=await o.next();if(t)return a(),void e.close();let i=r.byteLength;if(n){let e=s+=i;n(e)}e.enqueue(new Uint8Array(r))}catch(e){throw a(e),e}},cancel:e=>(a(e),o.return())},{highWaterMark:2})},{isFunction:Ke}=V,We=(({Request:e,Response:t})=>({Request:e,Response:t}))(V.global),{ReadableStream:He,TextEncoder:Ve}=V.global,Ge=(e,...t)=>{try{return!!e(...t)}catch(e){return!1}},Xe=e=>{e=V.merge.call({skipUndefined:!0},We,e);const{fetch:t,Request:n,Response:r}=e,o=t?Ke(t):"function"==typeof fetch,i=Ke(n),s=Ke(r);if(!o)return!1;const a=o&&Ke(He),c=o&&("function"==typeof Ve?(u=new Ve,e=>u.encode(e)):async e=>new Uint8Array(await new n(e).arrayBuffer()));var u;const l=i&&a&&Ge((()=>{let e=!1;const t=new n(ye.origin,{body:new He,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t})),f=s&&a&&Ge((()=>V.isReadableStream(new r("").body))),d={stream:f&&(e=>e.body)};o&&["text","arrayBuffer","blob","formData","stream"].forEach((e=>{!d[e]&&(d[e]=(t,n)=>{let r=t&&t[e];if(r)return r.call(t);throw new G(`Response type '${e}' is not supported`,G.ERR_NOT_SUPPORT,n)})}));const p=async(e,t)=>{const r=V.toFiniteNumber(e.getContentLength());return null==r?(async e=>{if(null==e)return 0;if(V.isBlob(e))return e.size;if(V.isSpecCompliantForm(e)){const t=new n(ye.origin,{method:"POST",body:e});return(await t.arrayBuffer()).byteLength}return V.isArrayBufferView(e)||V.isArrayBuffer(e)?e.byteLength:(V.isURLSearchParams(e)&&(e+=""),V.isString(e)?(await c(e)).byteLength:void 0)})(t):r};return async e=>{let{url:o,method:s,data:a,signal:c,cancelToken:u,timeout:h,onDownloadProgress:y,onUploadProgress:m,responseType:g,headers:b,withCredentials:w="same-origin",fetchOptions:v}=De(e),O=t||fetch;g=g?(g+"").toLowerCase():"text";let E=Be([c,u&&u.toAbortSignal()],h),_=null;const R=E&&E.unsubscribe&&(()=>{E.unsubscribe()});let S;try{if(m&&l&&"get"!==s&&"head"!==s&&0!==(S=await p(b,a))){let e,t=new n(o,{method:"POST",body:a,duplex:"half"});if(V.isFormData(a)&&(e=t.headers.get("content-type"))&&b.setContentType(e),t.body){const[e,n]=Pe(S,Ae(Ce(m)));a=ze(t.body,65536,e,n)}}V.isString(w)||(w=w?"include":"omit");const t=i&&"credentials"in n.prototype,c={...v,signal:E,method:s.toUpperCase(),headers:b.normalize().toJSON(),body:a,duplex:"half",credentials:t?w:void 0};_=i&&new n(o,c);let u=await(i?O(_,v):O(o,c));const h=f&&("stream"===g||"response"===g);if(f&&(y||h&&R)){const e={};["status","statusText","headers"].forEach((t=>{e[t]=u[t]}));const t=V.toFiniteNumber(u.headers.get("content-length")),[n,o]=y&&Pe(t,Ae(Ce(y),!0))||[];u=new r(ze(u.body,65536,n,(()=>{o&&o(),R&&R()})),e)}g=g||"text";let T=await d[V.findKey(d,g)||"text"](u,e);return!h&&R&&R(),await new Promise(((t,n)=>{je(t,n,{data:T,headers:Se.from(u.headers),status:u.status,statusText:u.statusText,config:e,request:_})}))}catch(t){if(R&&R(),t&&"TypeError"===t.name&&/Load failed|fetch/i.test(t.message))throw Object.assign(new G("Network Error",G.ERR_NETWORK,e,_),{cause:t.cause||t});throw G.from(t,t&&t.code,e,_)}}},$e=new Map,Qe=e=>{let t=e?e.env:{};const{fetch:n,Request:r,Response:o}=t,i=[r,o,n];let s,a,c=i.length,u=$e;for(;c--;)s=i[c],a=u.get(s),void 0===a&&u.set(s,a=c?new Map:Xe(t)),u=a;return a};Qe();const Ye={http:null,xhr:Fe,fetch:{get:Qe}};V.forEach(Ye,((e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch(e){}Object.defineProperty(e,"adapterName",{value:t})}}));const Ze=e=>`- ${e}`,et=e=>V.isFunction(e)||null===e||!1===e;var tt=(e,t)=>{e=V.isArray(e)?e:[e];const{length:n}=e;let r,o;const i={};for(let s=0;s<n;s++){let n;if(r=e[s],o=r,!et(r)&&(o=Ye[(n=String(r)).toLowerCase()],void 0===o))throw new G(`Unknown adapter '${n}'`);if(o&&(V.isFunction(o)||(o=o.get(t))))break;i[n||"#"+s]=o}if(!o){const e=Object.entries(i).map((([e,t])=>`adapter ${e} `+(!1===t?"is not supported by the environment":"is not available in the build")));throw new G("There is no suitable adapter to dispatch the request "+(n?e.length>1?"since :\n"+e.map(Ze).join("\n"):" "+Ze(e[0]):"as no adapter specified"),"ERR_NOT_SUPPORT")}return o};function nt(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new xe(null,e)}function rt(e){nt(e),e.headers=Se.from(e.headers),e.data=Te.call(e,e.transformRequest),-1!==["post","put","patch"].indexOf(e.method)&&e.headers.setContentType("application/x-www-form-urlencoded",!1);return tt(e.adapter||be.adapter,e)(e).then((function(t){return nt(e),t.data=Te.call(e,e.transformResponse,t),t.headers=Se.from(t.headers),t}),(function(t){return ke(t)||(nt(e),t&&t.response&&(t.response.data=Te.call(e,e.transformResponse,t.response),t.response.headers=Se.from(t.response.headers))),Promise.reject(t)}))}const ot="1.12.2",it={};["object","boolean","number","function","string","symbol"].forEach(((e,t)=>{it[e]=function(n){return typeof n===e||"a"+(t<1?"n ":" ")+e}}));const st={};it.transitional=function(e,t,n){function r(e,t){return"[Axios v"+ot+"] Transitional option '"+e+"'"+t+(n?". "+n:"")}return(n,o,i)=>{if(!1===e)throw new G(r(o," has been removed"+(t?" in "+t:"")),G.ERR_DEPRECATED);return t&&!st[o]&&(st[o]=!0,console.warn(r(o," has been deprecated since v"+t+" and will be removed in the near future"))),!e||e(n,o,i)}},it.spelling=function(e){return(t,n)=>(console.warn(`${n} is likely a misspelling of ${e}`),!0)};var at={assertOptions:function(e,t,n){if("object"!=typeof e)throw new G("options must be an object",G.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let o=r.length;for(;o-- >0;){const i=r[o],s=t[i];if(s){const t=e[i],n=void 0===t||s(t,i,e);if(!0!==n)throw new G("option "+i+" must be "+n,G.ERR_BAD_OPTION_VALUE)}else if(!0!==n)throw new G("Unknown option "+i,G.ERR_BAD_OPTION)}},validators:it};const ct=at.validators;class ut{constructor(e){this.defaults=e||{},this.interceptors={request:new ae,response:new ae}}async request(e,t){try{return await this._request(e,t)}catch(e){if(e instanceof Error){let t={};Error.captureStackTrace?Error.captureStackTrace(t):t=new Error;const n=t.stack?t.stack.replace(/^.+\n/,""):"";try{e.stack?n&&!String(e.stack).endsWith(n.replace(/^.+\n.+\n/,""))&&(e.stack+="\n"+n):e.stack=n}catch(e){}}throw e}}_request(e,t){"string"==typeof e?(t=t||{}).url=e:t=e||{},t=Ie(this.defaults,t);const{transitional:n,paramsSerializer:r,headers:o}=t;void 0!==n&&at.assertOptions(n,{silentJSONParsing:ct.transitional(ct.boolean),forcedJSONParsing:ct.transitional(ct.boolean),clarifyTimeoutError:ct.transitional(ct.boolean)},!1),null!=r&&(V.isFunction(r)?t.paramsSerializer={serialize:r}:at.assertOptions(r,{encode:ct.function,serialize:ct.function},!0)),void 0!==t.allowAbsoluteUrls||(void 0!==this.defaults.allowAbsoluteUrls?t.allowAbsoluteUrls=this.defaults.allowAbsoluteUrls:t.allowAbsoluteUrls=!0),at.assertOptions(t,{baseUrl:ct.spelling("baseURL"),withXsrfToken:ct.spelling("withXSRFToken")},!0),t.method=(t.method||this.defaults.method||"get").toLowerCase();let i=o&&V.merge(o.common,o[t.method]);o&&V.forEach(["delete","get","head","post","put","patch","common"],(e=>{delete o[e]})),t.headers=Se.concat(i,o);const s=[];let a=!0;this.interceptors.request.forEach((function(e){"function"==typeof e.runWhen&&!1===e.runWhen(t)||(a=a&&e.synchronous,s.unshift(e.fulfilled,e.rejected))}));const c=[];let u;this.interceptors.response.forEach((function(e){c.push(e.fulfilled,e.rejected)}));let l,f=0;if(!a){const e=[rt.bind(this),void 0];for(e.unshift(...s),e.push(...c),l=e.length,u=Promise.resolve(t);f<l;)u=u.then(e[f++],e[f++]);return u}l=s.length;let d=t;for(;f<l;){const e=s[f++],t=s[f++];try{d=e(d)}catch(e){t.call(this,e);break}}try{u=rt.call(this,d)}catch(e){return Promise.reject(e)}for(f=0,l=c.length;f<l;)u=u.then(c[f++],c[f++]);return u}getUri(e){return se(Le((e=Ie(this.defaults,e)).baseURL,e.url,e.allowAbsoluteUrls),e.params,e.paramsSerializer)}}V.forEach(["delete","get","head","options"],(function(e){ut.prototype[e]=function(t,n){return this.request(Ie(n||{},{method:e,url:t,data:(n||{}).data}))}})),V.forEach(["post","put","patch"],(function(e){function t(t){return function(n,r,o){return this.request(Ie(o||{},{method:e,headers:t?{"Content-Type":"multipart/form-data"}:{},url:n,data:r}))}}ut.prototype[e]=t(),ut.prototype[e+"Form"]=t(!0)}));var lt=ut;class ft{constructor(e){if("function"!=typeof e)throw new TypeError("executor must be a function.");let t;this.promise=new Promise((function(e){t=e}));const n=this;this.promise.then((e=>{if(!n._listeners)return;let t=n._listeners.length;for(;t-- >0;)n._listeners[t](e);n._listeners=null})),this.promise.then=e=>{let t;const r=new Promise((e=>{n.subscribe(e),t=e})).then(e);return r.cancel=function(){n.unsubscribe(t)},r},e((function(e,r,o){n.reason||(n.reason=new xe(e,r,o),t(n.reason))}))}throwIfRequested(){if(this.reason)throw this.reason}subscribe(e){this.reason?e(this.reason):this._listeners?this._listeners.push(e):this._listeners=[e]}unsubscribe(e){if(!this._listeners)return;const t=this._listeners.indexOf(e);-1!==t&&this._listeners.splice(t,1)}toAbortSignal(){const e=new AbortController,t=t=>{e.abort(t)};return this.subscribe(t),e.signal.unsubscribe=()=>this.unsubscribe(t),e.signal}static source(){let e;return{token:new ft((function(t){e=t})),cancel:e}}}var dt=ft;const pt={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(pt).forEach((([e,t])=>{pt[t]=e}));var ht=pt;const yt=function e(t){const n=new lt(t),o=r(lt.prototype.request,n);return V.extend(o,lt.prototype,n,{allOwnKeys:!0}),V.extend(o,n,null,{allOwnKeys:!0}),o.create=function(n){return e(Ie(t,n))},o}(be);yt.Axios=lt,yt.CanceledError=xe,yt.CancelToken=dt,yt.isCancel=ke,yt.VERSION=ot,yt.toFormData=te,yt.AxiosError=G,yt.Cancel=yt.CanceledError,yt.all=function(e){return Promise.all(e)},yt.spread=function(e){return function(t){return e.apply(null,t)}},yt.isAxiosError=function(e){return V.isObject(e)&&!0===e.isAxiosError},yt.mergeConfig=Ie,yt.AxiosHeaders=Se,yt.formToJSON=e=>me(V.isHTMLForm(e)?new FormData(e):e),yt.getAdapter=tt,yt.HttpStatusCode=ht,yt.default=yt,e.exports=yt},747:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getEnv=void 0;var o=r(n(489));t.getEnv=function(){return o.default.getOptions().env}},767:function(e,t,n){"use strict";var r=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(c){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.getUserIp=void 0;var i=n(384),s=n(747),a={getUserIp:{test:"https://xtest.cnki.net/ip/client",development:"/proxy-sdk-ip/client",production:"https://x.cnki.net/ip/client"}};t.getUserIp=function(){return r(void 0,void 0,void 0,(function(){var e,t,n;return o(this,(function(r){switch(r.label){case 0:return r.trys.push([0,4,,5]),(e=(0,i.getCookie)("yxIP"))&&"undefined"!==e&&"null"!==e?[3,3]:[4,fetch(a.getUserIp[(0,s.getEnv)()],{method:"GET",headers:{source:"x.cnki.net"}})];case 1:return[4,r.sent().json()];case 2:return t=r.sent().content,n=(0,s.getEnv)(),(0,i.setCookie)("yxIP","development"===n?"124.193.98.142":t,432e3,"development"===n?"":".cnki.net"),[2,Promise.resolve(t)];case 3:return[2,Promise.resolve(e)];case 4:return r.sent(),[2,Promise.resolve("")];case 5:return[2]}}))}))}},776:function(e,t,n){"use strict";var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},r.apply(this,arguments)},o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getBaseUrl=void 0;var i=o(n(598)),s=o(n(598)),a=o(n(365)),c=o(n(489)),u=n(747),l={development:i.default,test:s.default,production:a.default};t.getBaseUrl=function(e){var t,n,o=c.default.getOptions(),i=(0,u.getEnv)(),a=o.proxy?r(r({},o.proxy),l[i]):"development"===i?s.default:l[i],f=e;if("development"!==i){var d=null!==(n=null===(t=e.match(/^\/[^/]+/))||void 0===t?void 0:t[0])&&void 0!==n?n:"";Object.keys(a).forEach((function(t){(d===t||e.includes(t))&&(f=f.replace(t,a[t].target))}))}return f}},811:function(e,t,n){"use strict";var r,o=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s=this&&this.__importStar||(r=function(e){return r=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},r(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n=r(e),s=0;s<n.length;s++)"default"!==n[s]&&o(t,e,n[s]);return i(t,e),t}),a=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))},c=this&&this.__generator||function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(c){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}},u=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.localQueueStore=t.removeCookie=t.setCookie=t.getCookie=void 0;var l=s(n(489)),f=n(471),d=n(537),p=u(n(65));t.localQueueStore=p.default;var h=n(767),y=n(551),m=n(336),g=function(){function e(){this.getAction=f.getAction,this.getRefreshToken=f.getRefreshToken,this.postAction=f.postAction,this.getJwt=function(){return(0,d.getJwt)((0,l.getJwtKey)())},this.removeJwt=function(){return(0,d.removeJwt)((0,l.getJwtKey)())},this.getUserIp=function(){return(0,h.getUserIp)()},this.toTrack=function(){return(0,h.getUserIp)()},this.logOut=function(){return(0,m.logOut)()}}return e.getInstance=function(){return this.instance||(this.instance=new e),this.instance},e.prototype.config=function(e){return l.default.config(e),this},e.prototype.ready=function(){return a(this,void 0,void 0,(function(){return c(this,(function(e){switch(e.label){case 0:return[4,(0,h.getUserIp)()];case 1:return e.sent(),l.default.getOptions().tracker&&(0,y.tracker)(),[4,(0,f.getRefreshToken)()];case 2:return[2,e.sent()]}}))}))},e.instance=null,e}();t.default=g.getInstance();var b=n(384);Object.defineProperty(t,"getCookie",{enumerable:!0,get:function(){return b.getCookie}}),Object.defineProperty(t,"setCookie",{enumerable:!0,get:function(){return b.setCookie}}),Object.defineProperty(t,"removeCookie",{enumerable:!0,get:function(){return b.removeCookie}})},935:function(e,t,n){"use strict";var r,o=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),i=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),s=this&&this.__importStar||(r=function(e){return r=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},r(e)},function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n=r(e),s=0;s<n.length;s++)"default"!==n[s]&&o(t,e,n[s]);return i(t,e),t}),a=this&&this.__awaiter||function(e,t,n,r){return new(n||(n=Promise))((function(o,i){function s(e){try{c(r.next(e))}catch(e){i(e)}}function a(e){try{c(r.throw(e))}catch(e){i(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(s,a)}c((r=r.apply(e,t||[])).next())}))},c=this&&this.__generator||function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return s.next=a(0),s.throw=a(1),s.return=a(2),"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(a){return function(c){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.getRefreshToken=void 0;var u=n(384),l=n(471),f=n(537),d=s(n(489)),p=n(336);t.getRefreshToken=function(){return a(void 0,void 0,void 0,(function(){var e,t,n,r,o,i,s,a,p;return c(this,(function(c){switch(c.label){case 0:if(e=d.default.getOptions(),t=(0,d.getJwtKey)(),!(n=(0,u.getCookie)("LID")))return[2,{code:5014,message:"无法获取 LID,请重新登录"}];if(r=(0,f.getJwt)(t))return[2,{code:0,content:r,message:"JWT 已缓存,无需刷新"}];c.label=1;case 1:return c.trys.push([1,3,,4]),o={AppId:e.appId,ClientId:(0,u.getCookie)("Ecp_ClientId")||"9240617191000011664",ClientIp:(0,u.getCookie)("yxIP"),EcpToken:n},[4,(0,l.postAction)("/proxy-sdk-jwt/JwtToken/ecptoken",o,{withCredentials:!1,skipInterceptorsRequest:!0})];case 2:return(i=c.sent()).Success&&i.Content?(s=i.Content,a=s.JwtToken,p=s.ExpireIn,(0,f.addJwt)(t,a,p),[2,{code:0,content:a,message:"JWT 刷新成功"}]):5019===i.Code?[2,{code:5019,message:i.Message||"Token 刷新失败"}]:5014===i.Code?[2,{code:5014,message:i.Message||"Token 刷新失败"}]:[2,{code:-1,message:i.Message||"Token 刷新失败"}];case 3:return[2,{code:500,message:c.sent().message||"Token 刷新异常,请稍后重试"}];case 4:return[2]}}))}))};var h=0,y=!1,m=[];t.default=function(e,n){return a(void 0,void 0,void 0,(function(){var r,o;return c(this,(function(i){switch(i.label){case 0:if(y)return[3,6];if(y=!0,h>=2)return y=!1,(0,p.logOut)(),[2,Promise.reject("Token 刷新异常,请稍后重试,超出最大重发次数。")];h+=1,i.label=1;case 1:return i.trys.push([1,3,4,5]),[4,(0,t.getRefreshToken)()];case 2:if(0!==(r=i.sent()).code)throw r;return m.forEach((function(e){return e()})),m=[],[2,e(n.config)];case 3:return o=i.sent(),(0,p.logOut)(),[2,Promise.reject(o)];case 4:return y=!1,[7];case 5:return[3,7];case 6:return[2,new Promise((function(t){m.push((function(){t(e(n.config))}))}))];case 7:return[2]}}))}))}}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var i=t[r]={exports:{}};return e[r].call(i.exports,i,i.exports,n),i.exports}return n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n(811)})()));
package/app.js.gz CHANGED
Binary file
package/fetch/index.d.ts CHANGED
@@ -1,5 +1,8 @@
1
1
  import { AxiosRequestConfig } from 'axios';
2
2
  import { getRefreshToken } from './refreshToken';
3
- declare const getAction: <T = any>(url: string, data?: Record<string, any>, config?: AxiosRequestConfig) => Promise<T>;
4
- declare const postAction: <T = any>(url: string, data?: Record<string, any>, config?: AxiosRequestConfig) => Promise<T>;
3
+ export interface OpenxRequestConfig extends AxiosRequestConfig {
4
+ skipInterceptorsRequest?: boolean;
5
+ }
6
+ declare const getAction: <T = any>(url: string, data?: Record<string, any>, config?: OpenxRequestConfig) => Promise<T>;
7
+ declare const postAction: <T = any>(url: string, data?: Record<string, any>, config?: OpenxRequestConfig) => Promise<T>;
5
8
  export { getAction, postAction, getRefreshToken };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openx-js-sdk",
3
- "version": "0.0.25",
3
+ "version": "0.0.27",
4
4
  "main": "./app.js",
5
5
  "scripts": {
6
6
  "serve": "set NODE_ENV=development&& webpack-dev-server --config build/webpack.dev.js --env=development",
@@ -3,7 +3,8 @@ type StaFn = (params: StaEvent) => void;
3
3
  declare global {
4
4
  interface Window {
5
5
  sta_api?: {
6
- toTrack: StaFn;
6
+ toTrack?: StaFn;
7
+ toTrackOpenx?: StaFn;
7
8
  __OPENX_PATCHED__?: boolean;
8
9
  [key: string]: any;
9
10
  };
package/types/index.d.ts CHANGED
@@ -2,6 +2,7 @@ export interface ConfigOptions {
2
2
  appId: string;
3
3
  env?: string;
4
4
  proxy?: any;
5
+ scene?: string;
5
6
  timeout?: number;
6
7
  withCredentials?: boolean;
7
8
  verifyRealName?: boolean;
@@ -10,5 +11,5 @@ export interface ConfigOptions {
10
11
  response?: (...args: any[]) => void;
11
12
  interceptorsResponse?: (...args: any[]) => void;
12
13
  interceptorsRequest?: (...args: any[]) => void;
13
- interceptorResult?: (...args: any[]) => void;
14
+ interceptorsResult?: (...args: any[]) => void;
14
15
  }