@vlian/framework 1.2.19 → 1.2.37

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.
Files changed (252) hide show
  1. package/dist/analytics.umd.js +208 -2395
  2. package/dist/analytics.umd.js.map +1 -1
  3. package/dist/core/error/ErrorHandler.cjs.map +1 -1
  4. package/dist/core/error/ErrorHandler.d.ts +1 -1
  5. package/dist/core/error/ErrorHandler.js.map +1 -1
  6. package/dist/core/index.cjs +0 -1
  7. package/dist/core/index.cjs.map +1 -1
  8. package/dist/core/index.d.ts +1 -2
  9. package/dist/core/index.js +0 -1
  10. package/dist/core/index.js.map +1 -1
  11. package/dist/core/initialization/index.cjs.map +1 -1
  12. package/dist/core/initialization/index.d.ts +1 -1
  13. package/dist/core/initialization/index.js.map +1 -1
  14. package/dist/core/initialization/initialization.cjs +2 -147
  15. package/dist/core/initialization/initialization.cjs.map +1 -1
  16. package/dist/core/initialization/initialization.d.ts +0 -57
  17. package/dist/core/initialization/initialization.js +2 -148
  18. package/dist/core/initialization/initialization.js.map +1 -1
  19. package/dist/core/kernel/startKernel.cjs +1 -2
  20. package/dist/core/kernel/startKernel.cjs.map +1 -1
  21. package/dist/core/kernel/startKernel.js +1 -2
  22. package/dist/core/kernel/startKernel.js.map +1 -1
  23. package/dist/core/plugin.cjs +16 -16
  24. package/dist/core/plugin.cjs.map +1 -1
  25. package/dist/core/plugin.d.ts +5 -1
  26. package/dist/core/plugin.js +17 -17
  27. package/dist/core/plugin.js.map +1 -1
  28. package/dist/core/router/monitoring/RouterMonitoring.cjs +1 -1
  29. package/dist/core/router/monitoring/RouterMonitoring.cjs.map +1 -1
  30. package/dist/core/router/monitoring/RouterMonitoring.js +1 -1
  31. package/dist/core/router/monitoring/RouterMonitoring.js.map +1 -1
  32. package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.cjs +13 -8
  33. package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.cjs.map +1 -1
  34. package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.js +13 -8
  35. package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.js.map +1 -1
  36. package/dist/core/router/utils/adapters/react-router/transform.cjs +4 -0
  37. package/dist/core/router/utils/adapters/react-router/transform.cjs.map +1 -1
  38. package/dist/core/router/utils/adapters/react-router/transform.js +4 -0
  39. package/dist/core/router/utils/adapters/react-router/transform.js.map +1 -1
  40. package/dist/core/startup/initializeServices.cjs +1 -1
  41. package/dist/core/startup/initializeServices.cjs.map +1 -1
  42. package/dist/core/startup/initializeServices.d.ts +1 -1
  43. package/dist/core/startup/initializeServices.js +1 -1
  44. package/dist/core/startup/initializeServices.js.map +1 -1
  45. package/dist/core/startup/performanceTracker.cjs.map +1 -1
  46. package/dist/core/startup/performanceTracker.d.ts +1 -1
  47. package/dist/core/startup/performanceTracker.js.map +1 -1
  48. package/dist/core/startup/renderApp.cjs +1 -1
  49. package/dist/core/startup/renderApp.cjs.map +1 -1
  50. package/dist/core/startup/renderApp.d.ts +1 -1
  51. package/dist/core/startup/renderApp.js +1 -1
  52. package/dist/core/startup/renderApp.js.map +1 -1
  53. package/dist/core/startup/startApp.cjs +2 -4
  54. package/dist/core/startup/startApp.cjs.map +1 -1
  55. package/dist/core/startup/startApp.js +3 -5
  56. package/dist/core/startup/startApp.js.map +1 -1
  57. package/dist/core/types.d.ts +2 -6
  58. package/dist/core/types.js.map +1 -1
  59. package/dist/index.cjs +15 -2
  60. package/dist/index.cjs.map +1 -1
  61. package/dist/index.d.ts +6 -4
  62. package/dist/index.js +5 -4
  63. package/dist/index.js.map +1 -1
  64. package/dist/index.umd.js +11758 -32895
  65. package/dist/index.umd.js.map +1 -1
  66. package/dist/kernel/constants.cjs +67 -0
  67. package/dist/kernel/constants.cjs.map +1 -0
  68. package/dist/kernel/constants.d.ts +5 -0
  69. package/dist/kernel/constants.js +43 -0
  70. package/dist/kernel/constants.js.map +1 -0
  71. package/dist/kernel/index.cjs +40 -0
  72. package/dist/kernel/index.cjs.map +1 -0
  73. package/dist/kernel/index.d.ts +3 -0
  74. package/dist/kernel/index.js +4 -0
  75. package/dist/kernel/index.js.map +1 -0
  76. package/dist/kernel/kernel.cjs +296 -0
  77. package/dist/kernel/kernel.cjs.map +1 -0
  78. package/dist/kernel/kernel.d.ts +40 -0
  79. package/dist/kernel/kernel.js +272 -0
  80. package/dist/kernel/kernel.js.map +1 -0
  81. package/dist/kernel/manager/cacheManager.cjs +46 -0
  82. package/dist/kernel/manager/cacheManager.cjs.map +1 -0
  83. package/dist/kernel/manager/cacheManager.d.ts +6 -0
  84. package/dist/kernel/manager/cacheManager.js +36 -0
  85. package/dist/kernel/manager/cacheManager.js.map +1 -0
  86. package/dist/kernel/manager/i18nManager.cjs +68 -0
  87. package/dist/kernel/manager/i18nManager.cjs.map +1 -0
  88. package/dist/kernel/manager/i18nManager.d.ts +8 -0
  89. package/dist/kernel/manager/i18nManager.js +58 -0
  90. package/dist/kernel/manager/i18nManager.js.map +1 -0
  91. package/dist/kernel/manager/index.cjs +30 -0
  92. package/dist/kernel/manager/index.cjs.map +1 -0
  93. package/dist/kernel/manager/index.d.ts +4 -0
  94. package/dist/kernel/manager/index.js +6 -0
  95. package/dist/kernel/manager/index.js.map +1 -0
  96. package/dist/kernel/manager/loggerManager.cjs +70 -0
  97. package/dist/kernel/manager/loggerManager.cjs.map +1 -0
  98. package/dist/kernel/manager/loggerManager.d.ts +14 -0
  99. package/dist/kernel/manager/loggerManager.js +60 -0
  100. package/dist/kernel/manager/loggerManager.js.map +1 -0
  101. package/dist/kernel/manager/persistence.cjs +93 -0
  102. package/dist/kernel/manager/persistence.cjs.map +1 -0
  103. package/dist/kernel/manager/persistence.d.ts +3 -0
  104. package/dist/kernel/manager/persistence.js +75 -0
  105. package/dist/kernel/manager/persistence.js.map +1 -0
  106. package/dist/kernel/manager/themeManager.cjs +85 -0
  107. package/dist/kernel/manager/themeManager.cjs.map +1 -0
  108. package/dist/kernel/manager/themeManager.d.ts +9 -0
  109. package/dist/kernel/manager/themeManager.js +75 -0
  110. package/dist/kernel/manager/themeManager.js.map +1 -0
  111. package/dist/kernel/types.cjs.map +1 -0
  112. package/dist/kernel/types.d.ts +72 -0
  113. package/dist/kernel/types.js.map +1 -0
  114. package/dist/library/storage/index.cjs +1 -1
  115. package/dist/library/storage/index.cjs.map +1 -1
  116. package/dist/library/storage/index.d.ts +1 -0
  117. package/dist/library/storage/index.js +1 -1
  118. package/dist/library/storage/index.js.map +1 -1
  119. package/dist/request/adapter.d.ts +1 -0
  120. package/dist/request/core.d.ts +1 -0
  121. package/dist/request/index.d.ts +1 -42
  122. package/dist/request/plugin/csrfPlugin.d.ts +2 -2
  123. package/dist/request/plugin/queue.d.ts +2 -2
  124. package/dist/request/plugin.d.ts +1 -0
  125. package/dist/request/runtime.d.ts +1 -0
  126. package/dist/request/types.d.ts +1 -394
  127. package/dist/request/utils.d.ts +1 -0
  128. package/dist/state.umd.js +1 -1
  129. package/dist/utils/csrf.cjs +13 -152
  130. package/dist/utils/csrf.cjs.map +1 -1
  131. package/dist/utils/csrf.d.ts +1 -72
  132. package/dist/utils/csrf.js +1 -142
  133. package/dist/utils/csrf.js.map +1 -1
  134. package/dist/utils/errors/ErrorCodes.cjs +6 -76
  135. package/dist/utils/errors/ErrorCodes.cjs.map +1 -1
  136. package/dist/utils/errors/ErrorCodes.d.ts +1 -45
  137. package/dist/utils/errors/ErrorCodes.js +1 -84
  138. package/dist/utils/errors/ErrorCodes.js.map +1 -1
  139. package/dist/utils/errors.cjs +15 -344
  140. package/dist/utils/errors.cjs.map +1 -1
  141. package/dist/utils/errors.d.ts +1 -183
  142. package/dist/utils/errors.js +1 -352
  143. package/dist/utils/errors.js.map +1 -1
  144. package/dist/utils/logger.cjs +5 -374
  145. package/dist/utils/logger.cjs.map +1 -1
  146. package/dist/utils/logger.d.ts +2 -189
  147. package/dist/utils/logger.js +1 -379
  148. package/dist/utils/logger.js.map +1 -1
  149. package/dist/utils/logger.types.cjs +3 -12
  150. package/dist/utils/logger.types.cjs.map +1 -1
  151. package/dist/utils/logger.types.d.ts +2 -57
  152. package/dist/utils/logger.types.js +1 -10
  153. package/dist/utils/logger.types.js.map +1 -1
  154. package/dist/utils/monitoring.cjs +11 -302
  155. package/dist/utils/monitoring.cjs.map +1 -1
  156. package/dist/utils/monitoring.d.ts +1 -163
  157. package/dist/utils/monitoring.js +1 -294
  158. package/dist/utils/monitoring.js.map +1 -1
  159. package/dist/utils/performance.cjs +5 -352
  160. package/dist/utils/performance.cjs.map +1 -1
  161. package/dist/utils/performance.d.ts +2 -246
  162. package/dist/utils/performance.js +1 -354
  163. package/dist/utils/performance.js.map +1 -1
  164. package/dist/utils/resourceLoader.cjs +5 -303
  165. package/dist/utils/resourceLoader.cjs.map +1 -1
  166. package/dist/utils/resourceLoader.d.ts +2 -130
  167. package/dist/utils/resourceLoader.js +1 -305
  168. package/dist/utils/resourceLoader.js.map +1 -1
  169. package/dist/utils/runtimeSecurity.cjs +2 -140
  170. package/dist/utils/runtimeSecurity.cjs.map +1 -1
  171. package/dist/utils/runtimeSecurity.d.ts +2 -104
  172. package/dist/utils/runtimeSecurity.js +1 -141
  173. package/dist/utils/runtimeSecurity.js.map +1 -1
  174. package/dist/utils/security.cjs +3 -314
  175. package/dist/utils/security.cjs.map +1 -1
  176. package/dist/utils/security.d.ts +2 -80
  177. package/dist/utils/security.js +1 -311
  178. package/dist/utils/security.js.map +1 -1
  179. package/dist/utils/traceId.cjs +10 -111
  180. package/dist/utils/traceId.cjs.map +1 -1
  181. package/dist/utils/traceId.d.ts +1 -63
  182. package/dist/utils/traceId.js +1 -116
  183. package/dist/utils/traceId.js.map +1 -1
  184. package/dist/utils/validation.cjs +3 -173
  185. package/dist/utils/validation.cjs.map +1 -1
  186. package/dist/utils/validation.d.ts +2 -110
  187. package/dist/utils/validation.js +1 -175
  188. package/dist/utils/validation.js.map +1 -1
  189. package/package.json +98 -13
  190. package/dist/core/ui-adapter/adapters.cjs +0 -45
  191. package/dist/core/ui-adapter/adapters.cjs.map +0 -1
  192. package/dist/core/ui-adapter/adapters.d.ts +0 -4
  193. package/dist/core/ui-adapter/adapters.js +0 -27
  194. package/dist/core/ui-adapter/adapters.js.map +0 -1
  195. package/dist/core/ui-adapter/index.cjs +0 -21
  196. package/dist/core/ui-adapter/index.cjs.map +0 -1
  197. package/dist/core/ui-adapter/index.d.ts +0 -2
  198. package/dist/core/ui-adapter/index.js +0 -3
  199. package/dist/core/ui-adapter/index.js.map +0 -1
  200. package/dist/core/ui-adapter/types.cjs.map +0 -1
  201. package/dist/core/ui-adapter/types.d.ts +0 -24
  202. package/dist/core/ui-adapter/types.js.map +0 -1
  203. package/dist/request/adapter/RequestAdapter.cjs +0 -78
  204. package/dist/request/adapter/RequestAdapter.cjs.map +0 -1
  205. package/dist/request/adapter/axiosAdapter.cjs +0 -164
  206. package/dist/request/adapter/axiosAdapter.cjs.map +0 -1
  207. package/dist/request/adapter/fetchAdapter.cjs +0 -134
  208. package/dist/request/adapter/fetchAdapter.cjs.map +0 -1
  209. package/dist/request/adapter/index.cjs +0 -80
  210. package/dist/request/adapter/index.cjs.map +0 -1
  211. package/dist/request/adapter/kyAdapter.cjs +0 -191
  212. package/dist/request/adapter/kyAdapter.cjs.map +0 -1
  213. package/dist/request/adapter/undiciAdapter.cjs +0 -213
  214. package/dist/request/adapter/undiciAdapter.cjs.map +0 -1
  215. package/dist/request/core/RequestClient.cjs +0 -558
  216. package/dist/request/core/RequestClient.cjs.map +0 -1
  217. package/dist/request/core/index.cjs +0 -15
  218. package/dist/request/core/index.cjs.map +0 -1
  219. package/dist/request/index.cjs +0 -149
  220. package/dist/request/index.cjs.map +0 -1
  221. package/dist/request/plugin/RequestPlugin.cjs +0 -218
  222. package/dist/request/plugin/RequestPlugin.cjs.map +0 -1
  223. package/dist/request/plugin/cache.cjs +0 -269
  224. package/dist/request/plugin/cache.cjs.map +0 -1
  225. package/dist/request/plugin/csrfPlugin.cjs +0 -40
  226. package/dist/request/plugin/csrfPlugin.cjs.map +0 -1
  227. package/dist/request/plugin/index.cjs +0 -53
  228. package/dist/request/plugin/index.cjs.map +0 -1
  229. package/dist/request/plugin/monitoring.cjs +0 -216
  230. package/dist/request/plugin/monitoring.cjs.map +0 -1
  231. package/dist/request/plugin/queue.cjs +0 -140
  232. package/dist/request/plugin/queue.cjs.map +0 -1
  233. package/dist/request/plugin/retry.cjs +0 -98
  234. package/dist/request/plugin/retry.cjs.map +0 -1
  235. package/dist/request/plugin/validation.cjs +0 -121
  236. package/dist/request/plugin/validation.cjs.map +0 -1
  237. package/dist/request/runtime/RequestContext.cjs +0 -77
  238. package/dist/request/runtime/RequestContext.cjs.map +0 -1
  239. package/dist/request/runtime/index.cjs +0 -32
  240. package/dist/request/runtime/index.cjs.map +0 -1
  241. package/dist/request/types.cjs +0 -112
  242. package/dist/request/types.cjs.map +0 -1
  243. package/dist/request/utils/RequestQueueManager.cjs +0 -168
  244. package/dist/request/utils/RequestQueueManager.cjs.map +0 -1
  245. package/dist/request/utils/dependencyCheck.cjs +0 -237
  246. package/dist/request/utils/dependencyCheck.cjs.map +0 -1
  247. package/dist/request/utils/index.cjs +0 -30
  248. package/dist/request/utils/index.cjs.map +0 -1
  249. package/dist/request.umd.js +0 -5392
  250. package/dist/request.umd.js.map +0 -1
  251. /package/dist/{core/ui-adapter → kernel}/types.cjs +0 -0
  252. /package/dist/{core/ui-adapter → kernel}/types.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/library/storage/index.ts"],"sourcesContent":["import { createStorage } from '@vlian/utils';\nimport type { StorageInstance } from '@vlian/utils';\nimport type { StorageOptions } from '../../types';\nimport type { EncryptionConfig } from './encryption';\nimport { MultiLevelCache } from './cache';\n\n/**\n * 增强的存储选项\n */\nexport interface EnhancedStorageOptions extends StorageOptions {\n /**\n * 加密配置\n */\n encryption?: EncryptionConfig;\n /**\n * 缓存配置\n */\n cache?: {\n enabled?: boolean;\n defaultTTL?: number;\n maxSize?: number;\n };\n}\n\nclass Storage {\n private static instance: Storage | null = null;\n\n private _local!: StorageInstance;\n private _session!: StorageInstance;\n private _indexedDB!: StorageInstance;\n private _localCache?: MultiLevelCache;\n private _sessionCache?: MultiLevelCache;\n private cacheEnabled: boolean = false;\n\n public get local(): StorageInstance {\n return this._local;\n }\n\n public get session(): StorageInstance {\n return this._session;\n }\n\n public get indexedDB(): StorageInstance {\n return this._indexedDB;\n }\n\n /**\n * 获取本地存储缓存\n */\n public get localCache(): MultiLevelCache | undefined {\n return this._localCache;\n }\n\n /**\n * 获取会话存储缓存\n */\n public get sessionCache(): MultiLevelCache | undefined {\n return this._sessionCache;\n }\n\n /**\n * 私有构造函数,防止外部直接实例化\n */\n private constructor() {\n // 私有构造函数\n }\n\n /**\n * 获取单例实例\n * \n * @returns Singleton 实例\n */\n public static getInstance(): Storage {\n if (!Storage.instance) {\n Storage.instance = new Storage();\n }\n return Storage.instance;\n }\n\n public initialize(options?: EnhancedStorageOptions): void {\n const local = createStorage({\n type: 'local',\n prefix: options?.prefix || 'vlian',\n defaultExpire: options?.defaultExpire || 24 * 60 * 60 * 1000,\n });\n const session = createStorage({\n type: 'session',\n prefix: options?.prefix || 'vlian',\n defaultExpire: options?.defaultExpire || 24 * 60 * 60 * 1000,\n });\n const indexedDB = createStorage({\n type: 'indexedDB',\n prefix: options?.prefix || 'vlian',\n defaultExpire: options?.defaultExpire || 24 * 60 * 60 * 1000,\n dbName: options?.tableName,\n });\n\n this._local = local;\n this._session = session;\n this._indexedDB = indexedDB;\n\n // 初始化缓存\n this.cacheEnabled = options?.cache?.enabled ?? false;\n if (this.cacheEnabled) {\n this._localCache = new MultiLevelCache(local, {\n defaultTTL: options?.cache?.defaultTTL,\n maxSize: options?.cache?.maxSize,\n });\n this._sessionCache = new MultiLevelCache(session, {\n defaultTTL: options?.cache?.defaultTTL,\n maxSize: options?.cache?.maxSize,\n });\n }\n }\n\n /**\n * 清理过期缓存\n */\n public async cleanupCache(): Promise<void> {\n if (this._localCache) {\n await this._localCache.cleanup();\n }\n if (this._sessionCache) {\n await this._sessionCache.cleanup();\n }\n }\n}\n\nexport const storage = Storage.getInstance();\n\n// 导出加密和缓存相关类型\nexport type { EncryptionConfig } from './encryption';\nexport type { CacheConfig } from './cache';\nexport { MultiLevelCache } from './cache';\nexport { EncryptionUtils } from './encryption';"],"names":["EncryptionUtils","MultiLevelCache","storage","Storage","local","_local","session","_session","indexedDB","_indexedDB","localCache","_localCache","sessionCache","_sessionCache","getInstance","instance","initialize","options","createStorage","type","prefix","defaultExpire","dbName","tableName","cacheEnabled","cache","enabled","defaultTTL","maxSize","cleanupCache","cleanup"],"mappings":";;;;;;;;;;;QAsISA;eAAAA,2BAAe;;QADfC;eAAAA,sBAAe;;QALXC;eAAAA;;;uBAhIiB;uBAIE;4BAkIA;;;;;;;;;;;;;;AA9GhC,IAAA,AAAMC,UAAN,MAAMA;IAUF,IAAWC,QAAyB;QAChC,OAAO,IAAI,CAACC,MAAM;IACtB;IAEA,IAAWC,UAA2B;QAClC,OAAO,IAAI,CAACC,QAAQ;IACxB;IAEA,IAAWC,YAA6B;QACpC,OAAO,IAAI,CAACC,UAAU;IAC1B;IAEA;;KAEC,GACD,IAAWC,aAA0C;QACjD,OAAO,IAAI,CAACC,WAAW;IAC3B;IAEA;;KAEC,GACD,IAAWC,eAA4C;QACnD,OAAO,IAAI,CAACC,aAAa;IAC7B;IASA;;;;GAID,GACC,OAAcC,cAAuB;QACjC,IAAI,CAACX,QAAQY,QAAQ,EAAE;YACnBZ,QAAQY,QAAQ,GAAG,IAAIZ;QAC3B;QACA,OAAOA,QAAQY,QAAQ;IAC3B;IAEOC,WAAWC,OAAgC,EAAQ;QACtD,MAAMb,QAAQc,IAAAA,oBAAa,EAAC;YACxBC,MAAM;YACNC,QAAQH,SAASG,UAAU;YAC3BC,eAAeJ,SAASI,iBAAiB,KAAK,KAAK,KAAK;QAC5D;QACA,MAAMf,UAAUY,IAAAA,oBAAa,EAAC;YAC1BC,MAAM;YACNC,QAAQH,SAASG,UAAU;YAC3BC,eAAeJ,SAASI,iBAAiB,KAAK,KAAK,KAAK;QAC5D;QACA,MAAMb,YAAYU,IAAAA,oBAAa,EAAC;YAC5BC,MAAM;YACNC,QAAQH,SAASG,UAAU;YAC3BC,eAAeJ,SAASI,iBAAiB,KAAK,KAAK,KAAK;YACxDC,QAAQL,SAASM;QACrB;QAEA,IAAI,CAAClB,MAAM,GAAGD;QACd,IAAI,CAACG,QAAQ,GAAGD;QAChB,IAAI,CAACG,UAAU,GAAGD;QAElB,QAAQ;QACR,IAAI,CAACgB,YAAY,GAAGP,SAASQ,OAAOC,WAAW;QAC/C,IAAI,IAAI,CAACF,YAAY,EAAE;YACnB,IAAI,CAACb,WAAW,GAAG,IAAIV,sBAAe,CAACG,OAAO;gBAC1CuB,YAAYV,SAASQ,OAAOE;gBAC5BC,SAASX,SAASQ,OAAOG;YAC7B;YACA,IAAI,CAACf,aAAa,GAAG,IAAIZ,sBAAe,CAACK,SAAS;gBAC9CqB,YAAYV,SAASQ,OAAOE;gBAC5BC,SAASX,SAASQ,OAAOG;YAC7B;QACJ;IACJ;IAEA;;KAEC,GACD,MAAaC,eAA8B;QACvC,IAAI,IAAI,CAAClB,WAAW,EAAE;YAClB,MAAM,IAAI,CAACA,WAAW,CAACmB,OAAO;QAClC;QACA,IAAI,IAAI,CAACjB,aAAa,EAAE;YACpB,MAAM,IAAI,CAACA,aAAa,CAACiB,OAAO;QACpC;IACJ;IAjEA;;KAEC,GACD,aAAsB;QApCtB,uBAAQzB,UAAR,KAAA;QACA,uBAAQE,YAAR,KAAA;QACA,uBAAQE,cAAR,KAAA;QACA,uBAAQE,eAAR,KAAA;QACA,uBAAQE,iBAAR,KAAA;QACA,uBAAQW,gBAAwB;IAgC5B,SAAS;IACb;AA6DJ;AArGI,iBADErB,SACaY,YAA2B;AAuGvC,MAAMb,UAAUC,QAAQW,WAAW"}
1
+ {"version":3,"sources":["../../../src/library/storage/index.ts"],"sourcesContent":["import { createStorage } from '@vlian/utils';\nimport type { StorageInstance } from '@vlian/utils';\nimport type { StorageOptions } from '../../types';\nimport type { EncryptionConfig } from './encryption';\nimport { MultiLevelCache } from './cache';\n\n\nexport {\n StorageInstance\n}\n\n/**\n * 增强的存储选项\n */\nexport interface EnhancedStorageOptions extends StorageOptions {\n /**\n * 加密配置\n */\n encryption?: EncryptionConfig;\n /**\n * 缓存配置\n */\n cache?: {\n enabled?: boolean;\n defaultTTL?: number;\n maxSize?: number;\n };\n}\n\nclass Storage {\n private static instance: Storage | null = null;\n\n private _local!: StorageInstance;\n private _session!: StorageInstance;\n private _indexedDB!: StorageInstance;\n private _localCache?: MultiLevelCache;\n private _sessionCache?: MultiLevelCache;\n private cacheEnabled: boolean = false;\n\n public get local(): StorageInstance {\n return this._local;\n }\n\n public get session(): StorageInstance {\n return this._session;\n }\n\n public get indexedDB(): StorageInstance {\n return this._indexedDB;\n }\n\n /**\n * 获取本地存储缓存\n */\n public get localCache(): MultiLevelCache | undefined {\n return this._localCache;\n }\n\n /**\n * 获取会话存储缓存\n */\n public get sessionCache(): MultiLevelCache | undefined {\n return this._sessionCache;\n }\n\n /**\n * 私有构造函数,防止外部直接实例化\n */\n private constructor() {\n // 私有构造函数\n }\n\n /**\n * 获取单例实例\n *\n * @returns Singleton 实例\n */\n public static getInstance(): Storage {\n if (!Storage.instance) {\n Storage.instance = new Storage();\n }\n return Storage.instance;\n }\n\n public initialize(options?: EnhancedStorageOptions): void {\n const local = createStorage({\n type: 'local',\n prefix: options?.prefix || 'vlian',\n defaultExpire: options?.defaultExpire || 24 * 60 * 60 * 1000,\n });\n const session = createStorage({\n type: 'session',\n prefix: options?.prefix || 'vlian',\n defaultExpire: options?.defaultExpire || 24 * 60 * 60 * 1000,\n });\n const indexedDB = createStorage({\n type: 'indexedDB',\n prefix: options?.prefix || 'vlian',\n defaultExpire: options?.defaultExpire || 24 * 60 * 60 * 1000,\n dbName: options?.tableName,\n });\n\n this._local = local;\n this._session = session;\n this._indexedDB = indexedDB;\n\n // 初始化缓存\n this.cacheEnabled = options?.cache?.enabled ?? false;\n if (this.cacheEnabled) {\n this._localCache = new MultiLevelCache(local, {\n defaultTTL: options?.cache?.defaultTTL,\n maxSize: options?.cache?.maxSize,\n });\n this._sessionCache = new MultiLevelCache(session, {\n defaultTTL: options?.cache?.defaultTTL,\n maxSize: options?.cache?.maxSize,\n });\n }\n }\n\n /**\n * 清理过期缓存\n */\n public async cleanupCache(): Promise<void> {\n if (this._localCache) {\n await this._localCache.cleanup();\n }\n if (this._sessionCache) {\n await this._sessionCache.cleanup();\n }\n }\n}\n\nexport const storage = Storage.getInstance();\n\n// 导出加密和缓存相关类型\nexport type { EncryptionConfig } from './encryption';\nexport type { CacheConfig } from './cache';\nexport { MultiLevelCache } from './cache';\nexport { EncryptionUtils } from './encryption';\n"],"names":["EncryptionUtils","MultiLevelCache","storage","Storage","local","_local","session","_session","indexedDB","_indexedDB","localCache","_localCache","sessionCache","_sessionCache","getInstance","instance","initialize","options","createStorage","type","prefix","defaultExpire","dbName","tableName","cacheEnabled","cache","enabled","defaultTTL","maxSize","cleanupCache","cleanup"],"mappings":";;;;;;;;;;;QA2ISA;eAAAA,2BAAe;;QADfC;eAAAA,sBAAe;;QALXC;eAAAA;;;uBArIiB;uBAIE;4BAuIA;;;;;;;;;;;;;;AA9GhC,IAAA,AAAMC,UAAN,MAAMA;IAUF,IAAWC,QAAyB;QAChC,OAAO,IAAI,CAACC,MAAM;IACtB;IAEA,IAAWC,UAA2B;QAClC,OAAO,IAAI,CAACC,QAAQ;IACxB;IAEA,IAAWC,YAA6B;QACpC,OAAO,IAAI,CAACC,UAAU;IAC1B;IAEA;;KAEC,GACD,IAAWC,aAA0C;QACjD,OAAO,IAAI,CAACC,WAAW;IAC3B;IAEA;;KAEC,GACD,IAAWC,eAA4C;QACnD,OAAO,IAAI,CAACC,aAAa;IAC7B;IASA;;;;GAID,GACC,OAAcC,cAAuB;QACjC,IAAI,CAACX,QAAQY,QAAQ,EAAE;YACnBZ,QAAQY,QAAQ,GAAG,IAAIZ;QAC3B;QACA,OAAOA,QAAQY,QAAQ;IAC3B;IAEOC,WAAWC,OAAgC,EAAQ;QACtD,MAAMb,QAAQc,IAAAA,oBAAa,EAAC;YACxBC,MAAM;YACNC,QAAQH,SAASG,UAAU;YAC3BC,eAAeJ,SAASI,iBAAiB,KAAK,KAAK,KAAK;QAC5D;QACA,MAAMf,UAAUY,IAAAA,oBAAa,EAAC;YAC1BC,MAAM;YACNC,QAAQH,SAASG,UAAU;YAC3BC,eAAeJ,SAASI,iBAAiB,KAAK,KAAK,KAAK;QAC5D;QACA,MAAMb,YAAYU,IAAAA,oBAAa,EAAC;YAC5BC,MAAM;YACNC,QAAQH,SAASG,UAAU;YAC3BC,eAAeJ,SAASI,iBAAiB,KAAK,KAAK,KAAK;YACxDC,QAAQL,SAASM;QACrB;QAEA,IAAI,CAAClB,MAAM,GAAGD;QACd,IAAI,CAACG,QAAQ,GAAGD;QAChB,IAAI,CAACG,UAAU,GAAGD;QAElB,QAAQ;QACR,IAAI,CAACgB,YAAY,GAAGP,SAASQ,OAAOC,WAAW;QAC/C,IAAI,IAAI,CAACF,YAAY,EAAE;YACnB,IAAI,CAACb,WAAW,GAAG,IAAIV,sBAAe,CAACG,OAAO;gBAC1CuB,YAAYV,SAASQ,OAAOE;gBAC5BC,SAASX,SAASQ,OAAOG;YAC7B;YACA,IAAI,CAACf,aAAa,GAAG,IAAIZ,sBAAe,CAACK,SAAS;gBAC9CqB,YAAYV,SAASQ,OAAOE;gBAC5BC,SAASX,SAASQ,OAAOG;YAC7B;QACJ;IACJ;IAEA;;KAEC,GACD,MAAaC,eAA8B;QACvC,IAAI,IAAI,CAAClB,WAAW,EAAE;YAClB,MAAM,IAAI,CAACA,WAAW,CAACmB,OAAO;QAClC;QACA,IAAI,IAAI,CAACjB,aAAa,EAAE;YACpB,MAAM,IAAI,CAACA,aAAa,CAACiB,OAAO;QACpC;IACJ;IAjEA;;KAEC,GACD,aAAsB;QApCtB,uBAAQzB,UAAR,KAAA;QACA,uBAAQE,YAAR,KAAA;QACA,uBAAQE,cAAR,KAAA;QACA,uBAAQE,eAAR,KAAA;QACA,uBAAQE,iBAAR,KAAA;QACA,uBAAQW,gBAAwB;IAgC5B,SAAS;IACb;AA6DJ;AArGI,iBADErB,SACaY,YAA2B;AAuGvC,MAAMb,UAAUC,QAAQW,WAAW"}
@@ -2,6 +2,7 @@ import type { StorageInstance } from '@vlian/utils';
2
2
  import type { StorageOptions } from '../../types';
3
3
  import type { EncryptionConfig } from './encryption';
4
4
  import { MultiLevelCache } from './cache';
5
+ export { StorageInstance };
5
6
  /**
6
7
  * 增强的存储选项
7
8
  */
@@ -35,7 +35,7 @@ let Storage = class Storage {
35
35
  }
36
36
  /**
37
37
  * 获取单例实例
38
- *
38
+ *
39
39
  * @returns Singleton 实例
40
40
  */ static getInstance() {
41
41
  if (!Storage.instance) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/library/storage/index.ts"],"sourcesContent":["import { createStorage } from '@vlian/utils';\nimport type { StorageInstance } from '@vlian/utils';\nimport type { StorageOptions } from '../../types';\nimport type { EncryptionConfig } from './encryption';\nimport { MultiLevelCache } from './cache';\n\n/**\n * 增强的存储选项\n */\nexport interface EnhancedStorageOptions extends StorageOptions {\n /**\n * 加密配置\n */\n encryption?: EncryptionConfig;\n /**\n * 缓存配置\n */\n cache?: {\n enabled?: boolean;\n defaultTTL?: number;\n maxSize?: number;\n };\n}\n\nclass Storage {\n private static instance: Storage | null = null;\n\n private _local!: StorageInstance;\n private _session!: StorageInstance;\n private _indexedDB!: StorageInstance;\n private _localCache?: MultiLevelCache;\n private _sessionCache?: MultiLevelCache;\n private cacheEnabled: boolean = false;\n\n public get local(): StorageInstance {\n return this._local;\n }\n\n public get session(): StorageInstance {\n return this._session;\n }\n\n public get indexedDB(): StorageInstance {\n return this._indexedDB;\n }\n\n /**\n * 获取本地存储缓存\n */\n public get localCache(): MultiLevelCache | undefined {\n return this._localCache;\n }\n\n /**\n * 获取会话存储缓存\n */\n public get sessionCache(): MultiLevelCache | undefined {\n return this._sessionCache;\n }\n\n /**\n * 私有构造函数,防止外部直接实例化\n */\n private constructor() {\n // 私有构造函数\n }\n\n /**\n * 获取单例实例\n * \n * @returns Singleton 实例\n */\n public static getInstance(): Storage {\n if (!Storage.instance) {\n Storage.instance = new Storage();\n }\n return Storage.instance;\n }\n\n public initialize(options?: EnhancedStorageOptions): void {\n const local = createStorage({\n type: 'local',\n prefix: options?.prefix || 'vlian',\n defaultExpire: options?.defaultExpire || 24 * 60 * 60 * 1000,\n });\n const session = createStorage({\n type: 'session',\n prefix: options?.prefix || 'vlian',\n defaultExpire: options?.defaultExpire || 24 * 60 * 60 * 1000,\n });\n const indexedDB = createStorage({\n type: 'indexedDB',\n prefix: options?.prefix || 'vlian',\n defaultExpire: options?.defaultExpire || 24 * 60 * 60 * 1000,\n dbName: options?.tableName,\n });\n\n this._local = local;\n this._session = session;\n this._indexedDB = indexedDB;\n\n // 初始化缓存\n this.cacheEnabled = options?.cache?.enabled ?? false;\n if (this.cacheEnabled) {\n this._localCache = new MultiLevelCache(local, {\n defaultTTL: options?.cache?.defaultTTL,\n maxSize: options?.cache?.maxSize,\n });\n this._sessionCache = new MultiLevelCache(session, {\n defaultTTL: options?.cache?.defaultTTL,\n maxSize: options?.cache?.maxSize,\n });\n }\n }\n\n /**\n * 清理过期缓存\n */\n public async cleanupCache(): Promise<void> {\n if (this._localCache) {\n await this._localCache.cleanup();\n }\n if (this._sessionCache) {\n await this._sessionCache.cleanup();\n }\n }\n}\n\nexport const storage = Storage.getInstance();\n\n// 导出加密和缓存相关类型\nexport type { EncryptionConfig } from './encryption';\nexport type { CacheConfig } from './cache';\nexport { MultiLevelCache } from './cache';\nexport { EncryptionUtils } from './encryption';"],"names":["createStorage","MultiLevelCache","Storage","local","_local","session","_session","indexedDB","_indexedDB","localCache","_localCache","sessionCache","_sessionCache","getInstance","instance","initialize","options","type","prefix","defaultExpire","dbName","tableName","cacheEnabled","cache","enabled","defaultTTL","maxSize","cleanupCache","cleanup","storage","EncryptionUtils"],"mappings":";;;;;;;;;;;;;AAAA,SAASA,aAAa,QAAQ,eAAe;AAI7C,SAASC,eAAe,QAAQ,UAAU;AAoB1C,IAAA,AAAMC,UAAN,MAAMA;IAUF,IAAWC,QAAyB;QAChC,OAAO,IAAI,CAACC,MAAM;IACtB;IAEA,IAAWC,UAA2B;QAClC,OAAO,IAAI,CAACC,QAAQ;IACxB;IAEA,IAAWC,YAA6B;QACpC,OAAO,IAAI,CAACC,UAAU;IAC1B;IAEA;;KAEC,GACD,IAAWC,aAA0C;QACjD,OAAO,IAAI,CAACC,WAAW;IAC3B;IAEA;;KAEC,GACD,IAAWC,eAA4C;QACnD,OAAO,IAAI,CAACC,aAAa;IAC7B;IASA;;;;GAID,GACC,OAAcC,cAAuB;QACjC,IAAI,CAACX,QAAQY,QAAQ,EAAE;YACnBZ,QAAQY,QAAQ,GAAG,IAAIZ;QAC3B;QACA,OAAOA,QAAQY,QAAQ;IAC3B;IAEOC,WAAWC,OAAgC,EAAQ;QACtD,MAAMb,QAAQH,cAAc;YACxBiB,MAAM;YACNC,QAAQF,SAASE,UAAU;YAC3BC,eAAeH,SAASG,iBAAiB,KAAK,KAAK,KAAK;QAC5D;QACA,MAAMd,UAAUL,cAAc;YAC1BiB,MAAM;YACNC,QAAQF,SAASE,UAAU;YAC3BC,eAAeH,SAASG,iBAAiB,KAAK,KAAK,KAAK;QAC5D;QACA,MAAMZ,YAAYP,cAAc;YAC5BiB,MAAM;YACNC,QAAQF,SAASE,UAAU;YAC3BC,eAAeH,SAASG,iBAAiB,KAAK,KAAK,KAAK;YACxDC,QAAQJ,SAASK;QACrB;QAEA,IAAI,CAACjB,MAAM,GAAGD;QACd,IAAI,CAACG,QAAQ,GAAGD;QAChB,IAAI,CAACG,UAAU,GAAGD;QAElB,QAAQ;QACR,IAAI,CAACe,YAAY,GAAGN,SAASO,OAAOC,WAAW;QAC/C,IAAI,IAAI,CAACF,YAAY,EAAE;YACnB,IAAI,CAACZ,WAAW,GAAG,IAAIT,gBAAgBE,OAAO;gBAC1CsB,YAAYT,SAASO,OAAOE;gBAC5BC,SAASV,SAASO,OAAOG;YAC7B;YACA,IAAI,CAACd,aAAa,GAAG,IAAIX,gBAAgBI,SAAS;gBAC9CoB,YAAYT,SAASO,OAAOE;gBAC5BC,SAASV,SAASO,OAAOG;YAC7B;QACJ;IACJ;IAEA;;KAEC,GACD,MAAaC,eAA8B;QACvC,IAAI,IAAI,CAACjB,WAAW,EAAE;YAClB,MAAM,IAAI,CAACA,WAAW,CAACkB,OAAO;QAClC;QACA,IAAI,IAAI,CAAChB,aAAa,EAAE;YACpB,MAAM,IAAI,CAACA,aAAa,CAACgB,OAAO;QACpC;IACJ;IAjEA;;KAEC,GACD,aAAsB;QApCtB,uBAAQxB,UAAR,KAAA;QACA,uBAAQE,YAAR,KAAA;QACA,uBAAQE,cAAR,KAAA;QACA,uBAAQE,eAAR,KAAA;QACA,uBAAQE,iBAAR,KAAA;QACA,uBAAQU,gBAAwB;IAgC5B,SAAS;IACb;AA6DJ;AArGI,iBADEpB,SACaY,YAA2B;AAuG9C,OAAO,MAAMe,UAAU3B,QAAQW,WAAW,GAAG;AAK7C,SAASZ,eAAe,QAAQ,UAAU;AAC1C,SAAS6B,eAAe,QAAQ,eAAe"}
1
+ {"version":3,"sources":["../../../src/library/storage/index.ts"],"sourcesContent":["import { createStorage } from '@vlian/utils';\nimport type { StorageInstance } from '@vlian/utils';\nimport type { StorageOptions } from '../../types';\nimport type { EncryptionConfig } from './encryption';\nimport { MultiLevelCache } from './cache';\n\n\nexport {\n StorageInstance\n}\n\n/**\n * 增强的存储选项\n */\nexport interface EnhancedStorageOptions extends StorageOptions {\n /**\n * 加密配置\n */\n encryption?: EncryptionConfig;\n /**\n * 缓存配置\n */\n cache?: {\n enabled?: boolean;\n defaultTTL?: number;\n maxSize?: number;\n };\n}\n\nclass Storage {\n private static instance: Storage | null = null;\n\n private _local!: StorageInstance;\n private _session!: StorageInstance;\n private _indexedDB!: StorageInstance;\n private _localCache?: MultiLevelCache;\n private _sessionCache?: MultiLevelCache;\n private cacheEnabled: boolean = false;\n\n public get local(): StorageInstance {\n return this._local;\n }\n\n public get session(): StorageInstance {\n return this._session;\n }\n\n public get indexedDB(): StorageInstance {\n return this._indexedDB;\n }\n\n /**\n * 获取本地存储缓存\n */\n public get localCache(): MultiLevelCache | undefined {\n return this._localCache;\n }\n\n /**\n * 获取会话存储缓存\n */\n public get sessionCache(): MultiLevelCache | undefined {\n return this._sessionCache;\n }\n\n /**\n * 私有构造函数,防止外部直接实例化\n */\n private constructor() {\n // 私有构造函数\n }\n\n /**\n * 获取单例实例\n *\n * @returns Singleton 实例\n */\n public static getInstance(): Storage {\n if (!Storage.instance) {\n Storage.instance = new Storage();\n }\n return Storage.instance;\n }\n\n public initialize(options?: EnhancedStorageOptions): void {\n const local = createStorage({\n type: 'local',\n prefix: options?.prefix || 'vlian',\n defaultExpire: options?.defaultExpire || 24 * 60 * 60 * 1000,\n });\n const session = createStorage({\n type: 'session',\n prefix: options?.prefix || 'vlian',\n defaultExpire: options?.defaultExpire || 24 * 60 * 60 * 1000,\n });\n const indexedDB = createStorage({\n type: 'indexedDB',\n prefix: options?.prefix || 'vlian',\n defaultExpire: options?.defaultExpire || 24 * 60 * 60 * 1000,\n dbName: options?.tableName,\n });\n\n this._local = local;\n this._session = session;\n this._indexedDB = indexedDB;\n\n // 初始化缓存\n this.cacheEnabled = options?.cache?.enabled ?? false;\n if (this.cacheEnabled) {\n this._localCache = new MultiLevelCache(local, {\n defaultTTL: options?.cache?.defaultTTL,\n maxSize: options?.cache?.maxSize,\n });\n this._sessionCache = new MultiLevelCache(session, {\n defaultTTL: options?.cache?.defaultTTL,\n maxSize: options?.cache?.maxSize,\n });\n }\n }\n\n /**\n * 清理过期缓存\n */\n public async cleanupCache(): Promise<void> {\n if (this._localCache) {\n await this._localCache.cleanup();\n }\n if (this._sessionCache) {\n await this._sessionCache.cleanup();\n }\n }\n}\n\nexport const storage = Storage.getInstance();\n\n// 导出加密和缓存相关类型\nexport type { EncryptionConfig } from './encryption';\nexport type { CacheConfig } from './cache';\nexport { MultiLevelCache } from './cache';\nexport { EncryptionUtils } from './encryption';\n"],"names":["createStorage","MultiLevelCache","Storage","local","_local","session","_session","indexedDB","_indexedDB","localCache","_localCache","sessionCache","_sessionCache","getInstance","instance","initialize","options","type","prefix","defaultExpire","dbName","tableName","cacheEnabled","cache","enabled","defaultTTL","maxSize","cleanupCache","cleanup","storage","EncryptionUtils"],"mappings":";;;;;;;;;;;;;AAAA,SAASA,aAAa,QAAQ,eAAe;AAI7C,SAASC,eAAe,QAAQ,UAAU;AAyB1C,IAAA,AAAMC,UAAN,MAAMA;IAUF,IAAWC,QAAyB;QAChC,OAAO,IAAI,CAACC,MAAM;IACtB;IAEA,IAAWC,UAA2B;QAClC,OAAO,IAAI,CAACC,QAAQ;IACxB;IAEA,IAAWC,YAA6B;QACpC,OAAO,IAAI,CAACC,UAAU;IAC1B;IAEA;;KAEC,GACD,IAAWC,aAA0C;QACjD,OAAO,IAAI,CAACC,WAAW;IAC3B;IAEA;;KAEC,GACD,IAAWC,eAA4C;QACnD,OAAO,IAAI,CAACC,aAAa;IAC7B;IASA;;;;GAID,GACC,OAAcC,cAAuB;QACjC,IAAI,CAACX,QAAQY,QAAQ,EAAE;YACnBZ,QAAQY,QAAQ,GAAG,IAAIZ;QAC3B;QACA,OAAOA,QAAQY,QAAQ;IAC3B;IAEOC,WAAWC,OAAgC,EAAQ;QACtD,MAAMb,QAAQH,cAAc;YACxBiB,MAAM;YACNC,QAAQF,SAASE,UAAU;YAC3BC,eAAeH,SAASG,iBAAiB,KAAK,KAAK,KAAK;QAC5D;QACA,MAAMd,UAAUL,cAAc;YAC1BiB,MAAM;YACNC,QAAQF,SAASE,UAAU;YAC3BC,eAAeH,SAASG,iBAAiB,KAAK,KAAK,KAAK;QAC5D;QACA,MAAMZ,YAAYP,cAAc;YAC5BiB,MAAM;YACNC,QAAQF,SAASE,UAAU;YAC3BC,eAAeH,SAASG,iBAAiB,KAAK,KAAK,KAAK;YACxDC,QAAQJ,SAASK;QACrB;QAEA,IAAI,CAACjB,MAAM,GAAGD;QACd,IAAI,CAACG,QAAQ,GAAGD;QAChB,IAAI,CAACG,UAAU,GAAGD;QAElB,QAAQ;QACR,IAAI,CAACe,YAAY,GAAGN,SAASO,OAAOC,WAAW;QAC/C,IAAI,IAAI,CAACF,YAAY,EAAE;YACnB,IAAI,CAACZ,WAAW,GAAG,IAAIT,gBAAgBE,OAAO;gBAC1CsB,YAAYT,SAASO,OAAOE;gBAC5BC,SAASV,SAASO,OAAOG;YAC7B;YACA,IAAI,CAACd,aAAa,GAAG,IAAIX,gBAAgBI,SAAS;gBAC9CoB,YAAYT,SAASO,OAAOE;gBAC5BC,SAASV,SAASO,OAAOG;YAC7B;QACJ;IACJ;IAEA;;KAEC,GACD,MAAaC,eAA8B;QACvC,IAAI,IAAI,CAACjB,WAAW,EAAE;YAClB,MAAM,IAAI,CAACA,WAAW,CAACkB,OAAO;QAClC;QACA,IAAI,IAAI,CAAChB,aAAa,EAAE;YACpB,MAAM,IAAI,CAACA,aAAa,CAACgB,OAAO;QACpC;IACJ;IAjEA;;KAEC,GACD,aAAsB;QApCtB,uBAAQxB,UAAR,KAAA;QACA,uBAAQE,YAAR,KAAA;QACA,uBAAQE,cAAR,KAAA;QACA,uBAAQE,eAAR,KAAA;QACA,uBAAQE,iBAAR,KAAA;QACA,uBAAQU,gBAAwB;IAgC5B,SAAS;IACb;AA6DJ;AArGI,iBADEpB,SACaY,YAA2B;AAuG9C,OAAO,MAAMe,UAAU3B,QAAQW,WAAW,GAAG;AAK7C,SAASZ,eAAe,QAAQ,UAAU;AAC1C,SAAS6B,eAAe,QAAQ,eAAe"}
@@ -0,0 +1 @@
1
+ export * from '@vlian/request/adapter';
@@ -0,0 +1 @@
1
+ export * from '@vlian/request/core';
@@ -1,42 +1 @@
1
- /**
2
- * 请求库主入口
3
- *
4
- * 提供企业级、可扩展、类型安全的 HTTP 请求能力
5
- */
6
- export type { RequestOptions, Response, RequestContext, RequestHeaders, RequestQuery, RequestBody, HttpMethod, RetryConfig, CacheConfig, ValidationConfig, AdapterCapabilities, } from './types';
7
- export { RequestError, RequestErrorType, RequestErrorCode, } from './types';
8
- export { RequestClient } from './core/RequestClient';
9
- export type { RequestClientConfig } from './types';
10
- export type { RequestAdapter, AdapterFactory } from './adapter/RequestAdapter';
11
- export { adapterRegistry } from './adapter/RequestAdapter';
12
- export { fetchAdapter, kyAdapter, axiosAdapter } from './adapter';
13
- export declare function undiciAdapter(): Promise<import("./adapter").RequestAdapter>;
14
- export type { RequestPlugin } from './plugin/RequestPlugin';
15
- export { PluginManager, PluginLifecycleStage, PluginPriority } from './plugin/RequestPlugin';
16
- export { createCachePlugin, createRetryPlugin, createValidationPlugin, createMonitoringPlugin, createQueuePlugin, } from './plugin';
17
- export type { CachePluginConfig, RetryPluginConfig, ValidationPluginConfig, MonitoringPluginConfig, MonitoringEvent, MonitoringReporter, QueuePluginConfig, QueueTriggerCondition, } from './plugin';
18
- export { MonitoringEventType } from './plugin';
19
- export { createRequestContext, updateRequestContext, completeRequestContext, failRequestContext, cancelRequestContext, } from './runtime/RequestContext';
20
- /**
21
- * 创建请求客户端实例
22
- *
23
- * @param config - 请求客户端配置
24
- * @returns 请求客户端实例
25
- *
26
- * @example
27
- * ```typescript
28
- * import { createRequestClient } from '@vlian/framework/request';
29
- *
30
- * const client = createRequestClient({
31
- * baseURL: 'https://api.example.com',
32
- * defaultTimeout: 5000,
33
- * plugins: [
34
- * createCachePlugin(),
35
- * createRetryPlugin(),
36
- * ],
37
- * });
38
- *
39
- * const response = await client.get<User>('/user/1');
40
- * ```
41
- */
42
- export declare function createRequestClient(config?: import('./types').RequestClientConfig): Promise<import(".").RequestClient>;
1
+ export * from '@vlian/request';
@@ -8,8 +8,8 @@ import type { RequestPlugin } from './RequestPlugin';
8
8
  *
9
9
  * @example
10
10
  * ```typescript
11
- * import { createRequestClient } from '@vlian/framework/request';
12
- * import { createCSRFPlugin } from '@vlian/framework/request/plugin';
11
+ * import { createRequestClient } from '@vlian/request';
12
+ * import { createCSRFPlugin } from '@vlian/request/plugin';
13
13
  *
14
14
  * const client = await createRequestClient({
15
15
  * plugins: [
@@ -69,8 +69,8 @@ export interface QueuePluginConfig {
69
69
  *
70
70
  * @example
71
71
  * ```typescript
72
- * import { createRequestClient } from '@vlian/framework/request';
73
- * import { createQueuePlugin } from '@vlian/framework/request/plugin';
72
+ * import { createRequestClient } from '@vlian/request';
73
+ * import { createQueuePlugin } from '@vlian/request/plugin';
74
74
  *
75
75
  * const client = await createRequestClient({
76
76
  * plugins: [
@@ -0,0 +1 @@
1
+ export * from '@vlian/request/plugin';
@@ -0,0 +1 @@
1
+ export * from '@vlian/request/runtime';
@@ -1,394 +1 @@
1
- /**
2
- * 请求库核心类型定义
3
- */
4
- /**
5
- * HTTP 请求方法
6
- */
7
- export type HttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'HEAD' | 'OPTIONS';
8
- /**
9
- * 请求头类型
10
- */
11
- export type RequestHeaders = Record<string, string | number | boolean>;
12
- /**
13
- * 请求查询参数类型
14
- */
15
- export type RequestQuery = Record<string, string | number | boolean | null | undefined>;
16
- /**
17
- * 请求体类型
18
- */
19
- export type RequestBody = string | FormData | URLSearchParams | Blob | ArrayBuffer | Record<string, unknown> | null;
20
- /**
21
- * 请求配置选项
22
- *
23
- * @template TResponse - 响应数据类型(用于类型推导)
24
- */
25
- export interface RequestOptions<TResponse = unknown> {
26
- /**
27
- * 响应类型占位符(用于类型推导,实际不使用)
28
- * @internal
29
- */
30
- _responseType?: TResponse;
31
- /**
32
- * 请求方法
33
- */
34
- method?: HttpMethod;
35
- /**
36
- * 请求 URL
37
- */
38
- url: string;
39
- /**
40
- * 请求头
41
- */
42
- headers?: RequestHeaders;
43
- /**
44
- * 查询参数
45
- */
46
- query?: RequestQuery;
47
- /**
48
- * 请求体
49
- */
50
- body?: RequestBody;
51
- /**
52
- * 请求超时时间(毫秒)
53
- */
54
- timeout?: number;
55
- /**
56
- * 是否允许跨域请求
57
- */
58
- credentials?: 'include' | 'same-origin' | 'omit';
59
- /**
60
- * 响应类型
61
- */
62
- responseType?: 'json' | 'text' | 'blob' | 'arrayBuffer' | 'formData';
63
- /**
64
- * 是否中止请求
65
- */
66
- signal?: AbortSignal;
67
- /**
68
- * 请求元数据(用于插件扩展)
69
- */
70
- meta?: Record<string, unknown>;
71
- /**
72
- * 请求标签(用于缓存、监控等)
73
- */
74
- tags?: string[];
75
- /**
76
- * 是否跳过默认插件
77
- */
78
- skipPlugins?: string[];
79
- /**
80
- * 请求重试配置
81
- */
82
- retry?: RetryConfig;
83
- /**
84
- * 请求缓存配置
85
- */
86
- cache?: CacheConfig;
87
- /**
88
- * 请求验证配置
89
- */
90
- validation?: ValidationConfig;
91
- }
92
- /**
93
- * 重试配置
94
- */
95
- export interface RetryConfig {
96
- /**
97
- * 最大重试次数
98
- */
99
- maxAttempts?: number;
100
- /**
101
- * 重试延迟(毫秒)
102
- */
103
- delay?: number;
104
- /**
105
- * 重试延迟策略(指数退避)
106
- */
107
- exponentialBackoff?: boolean;
108
- /**
109
- * 重试条件函数
110
- */
111
- shouldRetry?: (error: unknown, attempt: number) => boolean;
112
- /**
113
- * 重试延迟计算函数
114
- */
115
- calculateDelay?: (attempt: number) => number;
116
- }
117
- /**
118
- * 缓存配置
119
- */
120
- export interface CacheConfig {
121
- /**
122
- * 缓存键
123
- */
124
- key?: string;
125
- /**
126
- * 缓存时间(毫秒)
127
- */
128
- ttl?: number;
129
- /**
130
- * 是否强制刷新
131
- */
132
- forceRefresh?: boolean;
133
- /**
134
- * 缓存存储类型
135
- */
136
- storage?: 'memory' | 'localStorage' | 'sessionStorage';
137
- /**
138
- * 缓存条件函数
139
- */
140
- shouldCache?: (response: Response<unknown>) => boolean;
141
- }
142
- /**
143
- * 验证配置
144
- *
145
- * @template TResponse - 响应数据类型
146
- */
147
- export interface ValidationConfig {
148
- /**
149
- * 请求参数验证 Schema(Zod)
150
- */
151
- requestSchema?: unknown;
152
- /**
153
- * 响应数据验证 Schema(Zod)
154
- */
155
- responseSchema?: unknown;
156
- /**
157
- * 验证失败时的处理方式
158
- */
159
- onValidationError?: (error: unknown) => void;
160
- }
161
- /**
162
- * 响应对象
163
- *
164
- * @template TData - 响应数据类型
165
- * @template TMeta - 响应元数据类型
166
- */
167
- export interface Response<TData = unknown, TMeta = Record<string, unknown>> {
168
- /**
169
- * 响应数据
170
- */
171
- data: TData;
172
- /**
173
- * HTTP 状态码
174
- */
175
- status: number;
176
- /**
177
- * HTTP 状态文本
178
- */
179
- statusText: string;
180
- /**
181
- * 响应头
182
- */
183
- headers: RequestHeaders;
184
- /**
185
- * 响应元数据(由插件注入)
186
- */
187
- meta?: TMeta;
188
- /**
189
- * 原始响应对象(适配器提供)
190
- */
191
- raw?: unknown;
192
- }
193
- /**
194
- * 请求错误类型
195
- */
196
- export declare enum RequestErrorType {
197
- /**
198
- * 网络错误
199
- */
200
- NETWORK_ERROR = "NETWORK_ERROR",
201
- /**
202
- * 超时错误
203
- */
204
- TIMEOUT_ERROR = "TIMEOUT_ERROR",
205
- /**
206
- * HTTP 错误(4xx, 5xx)
207
- */
208
- HTTP_ERROR = "HTTP_ERROR",
209
- /**
210
- * 取消错误
211
- */
212
- ABORT_ERROR = "ABORT_ERROR",
213
- /**
214
- * 验证错误
215
- */
216
- VALIDATION_ERROR = "VALIDATION_ERROR",
217
- /**
218
- * 未知错误
219
- */
220
- UNKNOWN_ERROR = "UNKNOWN_ERROR"
221
- }
222
- /**
223
- * 请求错误代码
224
- */
225
- export declare enum RequestErrorCode {
226
- /**
227
- * 网络连接失败
228
- */
229
- NETWORK_CONNECTION_FAILED = "NETWORK_CONNECTION_FAILED",
230
- /**
231
- * 请求超时
232
- */
233
- REQUEST_TIMEOUT = "REQUEST_TIMEOUT",
234
- /**
235
- * 服务器错误(5xx)
236
- */
237
- SERVER_ERROR = "SERVER_ERROR",
238
- /**
239
- * 客户端错误(4xx)
240
- */
241
- CLIENT_ERROR = "CLIENT_ERROR",
242
- /**
243
- * 请求被取消
244
- */
245
- REQUEST_ABORTED = "REQUEST_ABORTED",
246
- /**
247
- * 响应验证失败
248
- */
249
- RESPONSE_VALIDATION_FAILED = "RESPONSE_VALIDATION_FAILED",
250
- /**
251
- * 请求参数验证失败
252
- */
253
- REQUEST_VALIDATION_FAILED = "REQUEST_VALIDATION_FAILED"
254
- }
255
- /**
256
- * 请求错误类
257
- */
258
- export declare class RequestError extends Error {
259
- /**
260
- * 错误类型
261
- */
262
- type: RequestErrorType;
263
- /**
264
- * 错误代码
265
- */
266
- code: RequestErrorCode;
267
- /**
268
- * HTTP 状态码(如果有)
269
- */
270
- status?: number;
271
- /**
272
- * 原始错误
273
- */
274
- cause?: unknown;
275
- /**
276
- * 请求配置
277
- */
278
- request?: RequestOptions;
279
- /**
280
- * 响应数据(如果有)
281
- */
282
- response?: Response;
283
- /**
284
- * 错误上下文
285
- */
286
- context?: Record<string, unknown>;
287
- constructor(message: string, type: RequestErrorType, code: RequestErrorCode, options?: {
288
- status?: number;
289
- cause?: unknown;
290
- request?: RequestOptions;
291
- response?: Response;
292
- context?: Record<string, unknown>;
293
- });
294
- }
295
- /**
296
- * 请求上下文
297
- *
298
- * @template TRequest - 请求配置类型
299
- * @template TResponse - 响应类型
300
- * @template TMeta - 元数据类型
301
- */
302
- export interface RequestContext<TRequest = RequestOptions, TResponse = Response, TMeta = Record<string, unknown>> {
303
- /**
304
- * 请求配置
305
- */
306
- request: TRequest;
307
- /**
308
- * 响应(如果已收到)
309
- */
310
- response?: TResponse;
311
- /**
312
- * 错误(如果发生)
313
- */
314
- error?: RequestError;
315
- /**
316
- * 上下文元数据(由插件注入)
317
- */
318
- meta: TMeta;
319
- /**
320
- * 请求开始时间
321
- */
322
- startTime: number;
323
- /**
324
- * 请求结束时间(如果已完成)
325
- */
326
- endTime?: number;
327
- /**
328
- * 请求耗时(毫秒)
329
- */
330
- duration?: number;
331
- /**
332
- * 重试次数
333
- */
334
- retryCount: number;
335
- /**
336
- * 是否已取消
337
- */
338
- cancelled: boolean;
339
- /**
340
- * 中止控制器
341
- */
342
- abortController?: AbortController;
343
- }
344
- /**
345
- * 适配器能力声明
346
- */
347
- export interface AdapterCapabilities {
348
- /**
349
- * 是否支持取消请求
350
- */
351
- supportsAbort?: boolean;
352
- /**
353
- * 是否支持超时
354
- */
355
- supportsTimeout?: boolean;
356
- /**
357
- * 是否支持进度追踪
358
- */
359
- supportsProgress?: boolean;
360
- /**
361
- * 是否支持拦截器
362
- */
363
- supportsInterceptors?: boolean;
364
- }
365
- /**
366
- * 请求客户端配置
367
- */
368
- export interface RequestClientConfig {
369
- /**
370
- * 基础 URL
371
- */
372
- baseURL?: string;
373
- /**
374
- * 默认请求头
375
- */
376
- defaultHeaders?: RequestHeaders;
377
- /**
378
- * 默认超时时间(毫秒)
379
- */
380
- defaultTimeout?: number;
381
- /**
382
- * 默认适配器(按需加载)
383
- * 可以是适配器名称字符串,或返回适配器的工厂函数
384
- */
385
- defaultAdapter?: string | (() => Promise<import('./adapter/RequestAdapter').RequestAdapter>);
386
- /**
387
- * 插件列表
388
- */
389
- plugins?: Array<import('./plugin/RequestPlugin').RequestPlugin>;
390
- /**
391
- * 是否启用开发模式
392
- */
393
- devMode?: boolean;
394
- }
1
+ export * from '@vlian/request/types';
@@ -0,0 +1 @@
1
+ export * from '@vlian/request/utils';
package/dist/state.umd.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * @vlian/framework v1.2.19
2
+ * @vlian/framework v1.2.36
3
3
  * Secra Framework - 一个现代化的低代码框架
4
4
  * (c) 2026 Secra Framework Contributors
5
5
  * Licensed under Apache-2.0