@vlian/framework 1.2.57 → 1.2.60

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 (685) hide show
  1. package/README.md +15 -3
  2. package/dist/analytics/index.cjs +1 -24
  3. package/dist/analytics/index.js +1 -3
  4. package/dist/analytics.umd.js +8 -208
  5. package/dist/components/LocaleSwitch.cjs +1 -118
  6. package/dist/components/LocaleSwitch.js +1 -103
  7. package/dist/components/ThemeSwitch.cjs +1 -117
  8. package/dist/components/ThemeSwitch.js +1 -102
  9. package/dist/components/index.cjs +1 -22
  10. package/dist/components/index.js +1 -4
  11. package/dist/components/persistence.cjs +1 -60
  12. package/dist/components/persistence.js +1 -39
  13. package/dist/core/Test.cjs +1 -66
  14. package/dist/core/Test.js +1 -15
  15. package/dist/core/app/AppContext.cjs +1 -350
  16. package/dist/core/app/AppContext.js +1 -339
  17. package/dist/core/app/AppContext.types.cjs +1 -6
  18. package/dist/core/app/AppContext.types.js +1 -5
  19. package/dist/core/app/BasicLayout.cjs +1 -124
  20. package/dist/core/app/BasicLayout.js +1 -74
  21. package/dist/core/app/DefaultApp.cjs +1 -152
  22. package/dist/core/app/DefaultApp.js +1 -143
  23. package/dist/core/app/index.cjs +1 -43
  24. package/dist/core/app/index.js +1 -7
  25. package/dist/core/config/AppConfig.cjs +1 -141
  26. package/dist/core/config/AppConfig.js +1 -133
  27. package/dist/core/config/ConfigLoader.cjs +1 -325
  28. package/dist/core/config/ConfigLoader.js +1 -311
  29. package/dist/core/config/ConfigValidator.cjs +2 -135
  30. package/dist/core/config/ConfigValidator.js +2 -121
  31. package/dist/core/config/index.cjs +1 -30
  32. package/dist/core/config/index.js +1 -7
  33. package/dist/core/dev/DevTools.cjs +1 -228
  34. package/dist/core/dev/DevTools.js +1 -210
  35. package/dist/core/error/ErrorBoundary.cjs +1 -403
  36. package/dist/core/error/ErrorBoundary.js +1 -399
  37. package/dist/core/error/ErrorHandler.cjs +1 -277
  38. package/dist/core/error/ErrorHandler.js +1 -261
  39. package/dist/core/error/index.cjs +1 -36
  40. package/dist/core/error/index.js +1 -6
  41. package/dist/core/event/AppEventBus.cjs +1 -446
  42. package/dist/core/event/AppEventBus.js +1 -438
  43. package/dist/core/event/frameworkEvents.cjs +1 -143
  44. package/dist/core/event/frameworkEvents.js +1 -135
  45. package/dist/core/event/hooks.cjs +1 -71
  46. package/dist/core/event/hooks.js +1 -95
  47. package/dist/core/event/index.cjs +1 -43
  48. package/dist/core/event/index.js +1 -10
  49. package/dist/core/event/types.cjs +1 -64
  50. package/dist/core/event/types.js +1 -56
  51. package/dist/core/event/useEventBus.cjs +1 -27
  52. package/dist/core/event/useEventBus.js +1 -39
  53. package/dist/core/index.cjs +1 -142
  54. package/dist/core/index.js +1 -69
  55. package/dist/core/initialization/InitializationErrorThrower.cjs +1 -77
  56. package/dist/core/initialization/InitializationErrorThrower.js +1 -30
  57. package/dist/core/initialization/index.cjs +1 -28
  58. package/dist/core/initialization/index.js +1 -7
  59. package/dist/core/initialization/initialization.cjs +1 -66
  60. package/dist/core/initialization/initialization.js +1 -78
  61. package/dist/core/initialization/initializationErrorState.cjs +1 -68
  62. package/dist/core/initialization/initializationErrorState.js +1 -60
  63. package/dist/core/kernel/defaultAdapters.cjs +1 -186
  64. package/dist/core/kernel/defaultAdapters.js +1 -176
  65. package/dist/core/kernel/errors.cjs +1 -71
  66. package/dist/core/kernel/errors.js +1 -53
  67. package/dist/core/kernel/index.cjs +1 -22
  68. package/dist/core/kernel/index.js +1 -4
  69. package/dist/core/kernel/startKernel.cjs +1 -202
  70. package/dist/core/kernel/startKernel.js +1 -192
  71. package/dist/core/kernel/types.cjs +1 -6
  72. package/dist/core/kernel/types.js +1 -3
  73. package/dist/core/middleware.cjs +1 -75
  74. package/dist/core/middleware.js +1 -61
  75. package/dist/core/plugin/PluginEventBus.cjs +1 -300
  76. package/dist/core/plugin/PluginEventBus.js +1 -286
  77. package/dist/core/plugin/PluginSandbox.cjs +1 -139
  78. package/dist/core/plugin/PluginSandbox.js +1 -125
  79. package/dist/core/plugin.cjs +1 -496
  80. package/dist/core/plugin.js +1 -438
  81. package/dist/core/router/RouterManager.cjs +1 -288
  82. package/dist/core/router/RouterManager.js +1 -272
  83. package/dist/core/router/adapter/AdapterManager.cjs +1 -237
  84. package/dist/core/router/adapter/AdapterManager.js +1 -221
  85. package/dist/core/router/adapter/index.cjs +1 -24
  86. package/dist/core/router/adapter/index.js +1 -7
  87. package/dist/core/router/adapter/react-router/ReactRouterAdapter.cjs +1 -130
  88. package/dist/core/router/adapter/react-router/ReactRouterAdapter.js +1 -116
  89. package/dist/core/router/adapter/react-router/index.cjs +1 -22
  90. package/dist/core/router/adapter/react-router/index.js +1 -5
  91. package/dist/core/router/adapter/types.cjs +1 -8
  92. package/dist/core/router/adapter/types.js +1 -7
  93. package/dist/core/router/dev/RouterDevTools.cjs +1 -262
  94. package/dist/core/router/dev/RouterDevTools.js +1 -211
  95. package/dist/core/router/dev/index.cjs +1 -22
  96. package/dist/core/router/dev/index.js +1 -5
  97. package/dist/core/router/dynamic/DynamicRouteManager.cjs +1 -195
  98. package/dist/core/router/dynamic/DynamicRouteManager.js +1 -179
  99. package/dist/core/router/dynamic/index.cjs +1 -22
  100. package/dist/core/router/dynamic/index.js +1 -5
  101. package/dist/core/router/errors/RouterError.cjs +1 -63
  102. package/dist/core/router/errors/RouterError.js +1 -48
  103. package/dist/core/router/errors/index.cjs +1 -22
  104. package/dist/core/router/errors/index.js +1 -5
  105. package/dist/core/router/index.cjs +1 -38
  106. package/dist/core/router/index.js +1 -32
  107. package/dist/core/router/lifecycle/RouterLifecycleManager.cjs +1 -146
  108. package/dist/core/router/lifecycle/RouterLifecycleManager.js +1 -130
  109. package/dist/core/router/lifecycle/index.cjs +1 -22
  110. package/dist/core/router/lifecycle/index.js +1 -5
  111. package/dist/core/router/middleware/RouterMiddlewareManager.cjs +1 -195
  112. package/dist/core/router/middleware/RouterMiddlewareManager.js +1 -179
  113. package/dist/core/router/middleware/auth.cjs +1 -68
  114. package/dist/core/router/middleware/auth.js +1 -63
  115. package/dist/core/router/middleware/index.cjs +1 -24
  116. package/dist/core/router/middleware/index.js +1 -7
  117. package/dist/core/router/middleware/types.cjs +1 -8
  118. package/dist/core/router/middleware/types.js +1 -7
  119. package/dist/core/router/monitoring/RouterMonitoring.cjs +1 -229
  120. package/dist/core/router/monitoring/RouterMonitoring.js +1 -213
  121. package/dist/core/router/monitoring/index.cjs +1 -22
  122. package/dist/core/router/monitoring/index.js +1 -5
  123. package/dist/core/router/navigation/RouterNavigation.cjs +1 -241
  124. package/dist/core/router/navigation/RouterNavigation.js +1 -192
  125. package/dist/core/router/navigation/index.cjs +1 -22
  126. package/dist/core/router/navigation/index.js +1 -5
  127. package/dist/core/router/performance/RouteCache.cjs +1 -307
  128. package/dist/core/router/performance/RouteCache.js +1 -291
  129. package/dist/core/router/performance/RoutePreloader.cjs +1 -294
  130. package/dist/core/router/performance/RoutePreloader.js +1 -277
  131. package/dist/core/router/performance/index.cjs +1 -23
  132. package/dist/core/router/performance/index.js +1 -6
  133. package/dist/core/router/plugin/RouterPluginManager.cjs +1 -264
  134. package/dist/core/router/plugin/RouterPluginManager.js +1 -248
  135. package/dist/core/router/plugin/index.cjs +1 -23
  136. package/dist/core/router/plugin/index.js +1 -6
  137. package/dist/core/router/plugin/types.cjs +1 -41
  138. package/dist/core/router/plugin/types.js +1 -33
  139. package/dist/core/router/types.cjs +1 -6
  140. package/dist/core/router/types.js +1 -5
  141. package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.cjs +1 -131
  142. package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.js +1 -121
  143. package/dist/core/router/utils/adapters/react-router/transform.cjs +1 -252
  144. package/dist/core/router/utils/adapters/react-router/transform.js +1 -242
  145. package/dist/core/router/utils/transform.cjs +1 -782
  146. package/dist/core/router/utils/transform.js +1 -791
  147. package/dist/core/router/validation/RouterConfigValidator.cjs +2 -85
  148. package/dist/core/router/validation/RouterConfigValidator.js +2 -77
  149. package/dist/core/router/validation/index.cjs +1 -23
  150. package/dist/core/router/validation/index.js +1 -6
  151. package/dist/core/router/validation/schema.cjs +1 -161
  152. package/dist/core/router/validation/schema.js +1 -151
  153. package/dist/core/router/version/RouteVersionManager.cjs +1 -207
  154. package/dist/core/router/version/RouteVersionManager.js +1 -191
  155. package/dist/core/router/version/index.cjs +1 -22
  156. package/dist/core/router/version/index.js +1 -5
  157. package/dist/core/splash/SplashScreen.cjs +1 -343
  158. package/dist/core/splash/SplashScreen.js +1 -293
  159. package/dist/core/splash/index.cjs +1 -24
  160. package/dist/core/splash/index.js +1 -6
  161. package/dist/core/splash/splashScreenUtils.cjs +1 -40
  162. package/dist/core/splash/splashScreenUtils.js +1 -30
  163. package/dist/core/startup/AppInstance.cjs +1 -241
  164. package/dist/core/startup/AppInstance.js +1 -226
  165. package/dist/core/startup/environment.cjs +1 -171
  166. package/dist/core/startup/environment.js +1 -154
  167. package/dist/core/startup/index.cjs +1 -25
  168. package/dist/core/startup/index.js +1 -8
  169. package/dist/core/startup/initializeServices.cjs +1 -228
  170. package/dist/core/startup/initializeServices.js +1 -188
  171. package/dist/core/startup/performanceTracker.cjs +1 -181
  172. package/dist/core/startup/performanceTracker.js +1 -167
  173. package/dist/core/startup/renderApp.cjs +1 -316
  174. package/dist/core/startup/renderApp.js +1 -267
  175. package/dist/core/startup/startApp.cjs +1 -319
  176. package/dist/core/startup/startApp.js +1 -315
  177. package/dist/core/types.cjs +1 -6
  178. package/dist/core/types.js +1 -5
  179. package/dist/index.cjs +1 -54
  180. package/dist/index.js +1 -11
  181. package/dist/index.umd.cjs +1 -29
  182. package/dist/index.umd.js +362 -13233
  183. package/dist/kernel/constants.cjs +1 -67
  184. package/dist/kernel/constants.js +1 -43
  185. package/dist/kernel/index.cjs +1 -40
  186. package/dist/kernel/index.js +1 -4
  187. package/dist/kernel/kernel.cjs +1 -297
  188. package/dist/kernel/kernel.js +1 -273
  189. package/dist/kernel/manager/cacheManager.cjs +1 -48
  190. package/dist/kernel/manager/cacheManager.js +1 -38
  191. package/dist/kernel/manager/i18n/I18nManager.cjs +1 -93
  192. package/dist/kernel/manager/i18n/I18nManager.js +1 -83
  193. package/dist/kernel/manager/i18n/i18n.persistence.cjs +1 -62
  194. package/dist/kernel/manager/i18n/i18n.persistence.js +1 -41
  195. package/dist/kernel/manager/i18n/i18n.schema.cjs +1 -88
  196. package/dist/kernel/manager/i18n/i18n.schema.js +1 -64
  197. package/dist/kernel/manager/i18n/index.cjs +1 -13
  198. package/dist/kernel/manager/i18n/index.js +1 -3
  199. package/dist/kernel/manager/i18nManager.cjs +1 -13
  200. package/dist/kernel/manager/i18nManager.js +1 -3
  201. package/dist/kernel/manager/index.cjs +1 -30
  202. package/dist/kernel/manager/index.js +1 -6
  203. package/dist/kernel/manager/logger/LoggerManager.cjs +1 -109
  204. package/dist/kernel/manager/logger/LoggerManager.js +1 -99
  205. package/dist/kernel/manager/logger/index.cjs +1 -13
  206. package/dist/kernel/manager/logger/index.js +1 -3
  207. package/dist/kernel/manager/logger/logger.persistence.cjs +1 -64
  208. package/dist/kernel/manager/logger/logger.persistence.js +1 -43
  209. package/dist/kernel/manager/logger/logger.schema.cjs +1 -76
  210. package/dist/kernel/manager/logger/logger.schema.js +1 -55
  211. package/dist/kernel/manager/loggerManager.cjs +1 -13
  212. package/dist/kernel/manager/loggerManager.js +1 -3
  213. package/dist/kernel/manager/theme/ThemeManager.cjs +1 -86
  214. package/dist/kernel/manager/theme/ThemeManager.js +1 -76
  215. package/dist/kernel/manager/theme/index.cjs +1 -13
  216. package/dist/kernel/manager/theme/index.js +1 -3
  217. package/dist/kernel/manager/theme/theme.dom.cjs +1 -63
  218. package/dist/kernel/manager/theme/theme.dom.js +1 -45
  219. package/dist/kernel/manager/theme/theme.persistence.cjs +1 -59
  220. package/dist/kernel/manager/theme/theme.persistence.js +1 -38
  221. package/dist/kernel/manager/theme/theme.schema.cjs +1 -124
  222. package/dist/kernel/manager/theme/theme.schema.js +1 -97
  223. package/dist/kernel/manager/themeManager.cjs +1 -13
  224. package/dist/kernel/manager/themeManager.js +1 -3
  225. package/dist/kernel/types.cjs +1 -6
  226. package/dist/kernel/types.js +1 -3
  227. package/dist/library/index.cjs +1 -21
  228. package/dist/library/index.js +1 -4
  229. package/dist/library/locale/index.cjs +1 -41
  230. package/dist/library/locale/index.js +1 -12
  231. package/dist/library/locale/langs/en-us/index.cjs +1 -34
  232. package/dist/library/locale/langs/en-us/index.js +1 -24
  233. package/dist/library/locale/langs/zh-cn/index.cjs +1 -34
  234. package/dist/library/locale/langs/zh-cn/index.js +1 -24
  235. package/dist/library/locale/types.cjs +1 -6
  236. package/dist/library/locale/types.js +1 -3
  237. package/dist/library/storage/cache.cjs +1 -245
  238. package/dist/library/storage/cache.js +1 -237
  239. package/dist/library/storage/encryption.cjs +1 -149
  240. package/dist/library/storage/encryption.js +1 -141
  241. package/dist/library/storage/index.cjs +1 -126
  242. package/dist/library/storage/index.js +1 -106
  243. package/dist/state/StateManager.cjs +1 -168
  244. package/dist/state/StateManager.js +1 -160
  245. package/dist/state/adapters/AdapterFactory.cjs +1 -91
  246. package/dist/state/adapters/AdapterFactory.js +1 -85
  247. package/dist/state/adapters/DefaultAdapter.cjs +1 -77
  248. package/dist/state/adapters/DefaultAdapter.js +1 -71
  249. package/dist/state/adapters/ReduxAdapter.cjs +1 -445
  250. package/dist/state/adapters/ReduxAdapter.js +1 -439
  251. package/dist/state/adapters/ZustandAdapter.cjs +1 -71
  252. package/dist/state/adapters/ZustandAdapter.js +1 -70
  253. package/dist/state/adapters/index.cjs +1 -46
  254. package/dist/state/adapters/index.js +1 -9
  255. package/dist/state/adapters/types.cjs +1 -22
  256. package/dist/state/adapters/types.js +1 -5
  257. package/dist/state/core/DerivedStateInstance.cjs +1 -176
  258. package/dist/state/core/DerivedStateInstance.js +1 -173
  259. package/dist/state/core/StateInstance.cjs +1 -172
  260. package/dist/state/core/StateInstance.js +1 -168
  261. package/dist/state/core/StateRegistry.cjs +1 -112
  262. package/dist/state/core/StateRegistry.js +1 -106
  263. package/dist/state/core/StateScope.cjs +1 -139
  264. package/dist/state/core/StateScope.js +1 -133
  265. package/dist/state/core/index.cjs +1 -32
  266. package/dist/state/core/index.js +1 -8
  267. package/dist/state/index.cjs +1 -32
  268. package/dist/state/index.js +1 -12
  269. package/dist/state/types.cjs +1 -14
  270. package/dist/state/types.js +1 -13
  271. package/dist/state.umd.js +22 -1395
  272. package/dist/types.cjs +1 -6
  273. package/dist/types.js +1 -3
  274. package/dist/utils/analytics.cjs +1 -219
  275. package/dist/utils/analytics.js +1 -204
  276. package/dist/utils/configSecurity.cjs +3 -184
  277. package/dist/utils/configSecurity.js +3 -176
  278. package/dist/utils/csrf.cjs +1 -20
  279. package/dist/utils/csrf.js +1 -3
  280. package/dist/utils/errors/ErrorCodes.cjs +1 -27
  281. package/dist/utils/errors/ErrorCodes.js +1 -3
  282. package/dist/utils/errors.cjs +1 -113
  283. package/dist/utils/errors.js +1 -18
  284. package/dist/utils/index.cjs +1 -137
  285. package/dist/utils/index.js +1 -48
  286. package/dist/utils/logger.cjs +1 -27
  287. package/dist/utils/logger.js +1 -3
  288. package/dist/utils/logger.types.cjs +1 -13
  289. package/dist/utils/logger.types.js +1 -3
  290. package/dist/utils/monitoring.cjs +1 -20
  291. package/dist/utils/monitoring.js +1 -3
  292. package/dist/utils/performance.cjs +1 -24
  293. package/dist/utils/performance.js +1 -3
  294. package/dist/utils/resourceLoader.cjs +1 -24
  295. package/dist/utils/resourceLoader.js +1 -3
  296. package/dist/utils/runtimeSecurity.cjs +1 -13
  297. package/dist/utils/runtimeSecurity.js +1 -3
  298. package/dist/utils/security.cjs +1 -21
  299. package/dist/utils/security.js +1 -3
  300. package/dist/utils/traceId.cjs +1 -39
  301. package/dist/utils/traceId.js +1 -3
  302. package/dist/utils/validation.cjs +1 -21
  303. package/dist/utils/validation.js +1 -3
  304. package/package.json +9 -6
  305. package/dist/analytics/index.cjs.map +0 -1
  306. package/dist/analytics/index.js.map +0 -1
  307. package/dist/analytics.umd.js.map +0 -1
  308. package/dist/components/LocaleSwitch.cjs.map +0 -1
  309. package/dist/components/LocaleSwitch.js.map +0 -1
  310. package/dist/components/ThemeSwitch.cjs.map +0 -1
  311. package/dist/components/ThemeSwitch.js.map +0 -1
  312. package/dist/components/index.cjs.map +0 -1
  313. package/dist/components/index.js.map +0 -1
  314. package/dist/components/persistence.cjs.map +0 -1
  315. package/dist/components/persistence.js.map +0 -1
  316. package/dist/core/Test.cjs.map +0 -1
  317. package/dist/core/Test.js.map +0 -1
  318. package/dist/core/app/AppContext.cjs.map +0 -1
  319. package/dist/core/app/AppContext.js.map +0 -1
  320. package/dist/core/app/AppContext.types.cjs.map +0 -1
  321. package/dist/core/app/AppContext.types.js.map +0 -1
  322. package/dist/core/app/BasicLayout.cjs.map +0 -1
  323. package/dist/core/app/BasicLayout.js.map +0 -1
  324. package/dist/core/app/DefaultApp.cjs.map +0 -1
  325. package/dist/core/app/DefaultApp.js.map +0 -1
  326. package/dist/core/app/index.cjs.map +0 -1
  327. package/dist/core/app/index.js.map +0 -1
  328. package/dist/core/config/AppConfig.cjs.map +0 -1
  329. package/dist/core/config/AppConfig.js.map +0 -1
  330. package/dist/core/config/ConfigLoader.cjs.map +0 -1
  331. package/dist/core/config/ConfigLoader.js.map +0 -1
  332. package/dist/core/config/ConfigValidator.cjs.map +0 -1
  333. package/dist/core/config/ConfigValidator.js.map +0 -1
  334. package/dist/core/config/index.cjs.map +0 -1
  335. package/dist/core/config/index.js.map +0 -1
  336. package/dist/core/dev/DevTools.cjs.map +0 -1
  337. package/dist/core/dev/DevTools.js.map +0 -1
  338. package/dist/core/error/ErrorBoundary.cjs.map +0 -1
  339. package/dist/core/error/ErrorBoundary.js.map +0 -1
  340. package/dist/core/error/ErrorHandler.cjs.map +0 -1
  341. package/dist/core/error/ErrorHandler.js.map +0 -1
  342. package/dist/core/error/index.cjs.map +0 -1
  343. package/dist/core/error/index.js.map +0 -1
  344. package/dist/core/event/AppEventBus.cjs.map +0 -1
  345. package/dist/core/event/AppEventBus.js.map +0 -1
  346. package/dist/core/event/frameworkEvents.cjs.map +0 -1
  347. package/dist/core/event/frameworkEvents.js.map +0 -1
  348. package/dist/core/event/hooks.cjs.map +0 -1
  349. package/dist/core/event/hooks.js.map +0 -1
  350. package/dist/core/event/index.cjs.map +0 -1
  351. package/dist/core/event/index.js.map +0 -1
  352. package/dist/core/event/types.cjs.map +0 -1
  353. package/dist/core/event/types.js.map +0 -1
  354. package/dist/core/event/useEventBus.cjs.map +0 -1
  355. package/dist/core/event/useEventBus.js.map +0 -1
  356. package/dist/core/index.cjs.map +0 -1
  357. package/dist/core/index.js.map +0 -1
  358. package/dist/core/initialization/InitializationErrorThrower.cjs.map +0 -1
  359. package/dist/core/initialization/InitializationErrorThrower.js.map +0 -1
  360. package/dist/core/initialization/index.cjs.map +0 -1
  361. package/dist/core/initialization/index.js.map +0 -1
  362. package/dist/core/initialization/initialization.cjs.map +0 -1
  363. package/dist/core/initialization/initialization.js.map +0 -1
  364. package/dist/core/initialization/initializationErrorState.cjs.map +0 -1
  365. package/dist/core/initialization/initializationErrorState.js.map +0 -1
  366. package/dist/core/kernel/defaultAdapters.cjs.map +0 -1
  367. package/dist/core/kernel/defaultAdapters.js.map +0 -1
  368. package/dist/core/kernel/errors.cjs.map +0 -1
  369. package/dist/core/kernel/errors.js.map +0 -1
  370. package/dist/core/kernel/index.cjs.map +0 -1
  371. package/dist/core/kernel/index.js.map +0 -1
  372. package/dist/core/kernel/startKernel.cjs.map +0 -1
  373. package/dist/core/kernel/startKernel.js.map +0 -1
  374. package/dist/core/kernel/types.cjs.map +0 -1
  375. package/dist/core/kernel/types.js.map +0 -1
  376. package/dist/core/middleware.cjs.map +0 -1
  377. package/dist/core/middleware.js.map +0 -1
  378. package/dist/core/plugin/PluginEventBus.cjs.map +0 -1
  379. package/dist/core/plugin/PluginEventBus.js.map +0 -1
  380. package/dist/core/plugin/PluginSandbox.cjs.map +0 -1
  381. package/dist/core/plugin/PluginSandbox.js.map +0 -1
  382. package/dist/core/plugin.cjs.map +0 -1
  383. package/dist/core/plugin.js.map +0 -1
  384. package/dist/core/router/RouterManager.cjs.map +0 -1
  385. package/dist/core/router/RouterManager.js.map +0 -1
  386. package/dist/core/router/adapter/AdapterManager.cjs.map +0 -1
  387. package/dist/core/router/adapter/AdapterManager.js.map +0 -1
  388. package/dist/core/router/adapter/index.cjs.map +0 -1
  389. package/dist/core/router/adapter/index.js.map +0 -1
  390. package/dist/core/router/adapter/react-router/ReactRouterAdapter.cjs.map +0 -1
  391. package/dist/core/router/adapter/react-router/ReactRouterAdapter.js.map +0 -1
  392. package/dist/core/router/adapter/react-router/index.cjs.map +0 -1
  393. package/dist/core/router/adapter/react-router/index.js.map +0 -1
  394. package/dist/core/router/adapter/types.cjs.map +0 -1
  395. package/dist/core/router/adapter/types.js.map +0 -1
  396. package/dist/core/router/dev/RouterDevTools.cjs.map +0 -1
  397. package/dist/core/router/dev/RouterDevTools.js.map +0 -1
  398. package/dist/core/router/dev/index.cjs.map +0 -1
  399. package/dist/core/router/dev/index.js.map +0 -1
  400. package/dist/core/router/dynamic/DynamicRouteManager.cjs.map +0 -1
  401. package/dist/core/router/dynamic/DynamicRouteManager.js.map +0 -1
  402. package/dist/core/router/dynamic/index.cjs.map +0 -1
  403. package/dist/core/router/dynamic/index.js.map +0 -1
  404. package/dist/core/router/errors/RouterError.cjs.map +0 -1
  405. package/dist/core/router/errors/RouterError.js.map +0 -1
  406. package/dist/core/router/errors/index.cjs.map +0 -1
  407. package/dist/core/router/errors/index.js.map +0 -1
  408. package/dist/core/router/index.cjs.map +0 -1
  409. package/dist/core/router/index.js.map +0 -1
  410. package/dist/core/router/lifecycle/RouterLifecycleManager.cjs.map +0 -1
  411. package/dist/core/router/lifecycle/RouterLifecycleManager.js.map +0 -1
  412. package/dist/core/router/lifecycle/index.cjs.map +0 -1
  413. package/dist/core/router/lifecycle/index.js.map +0 -1
  414. package/dist/core/router/middleware/RouterMiddlewareManager.cjs.map +0 -1
  415. package/dist/core/router/middleware/RouterMiddlewareManager.js.map +0 -1
  416. package/dist/core/router/middleware/auth.cjs.map +0 -1
  417. package/dist/core/router/middleware/auth.js.map +0 -1
  418. package/dist/core/router/middleware/index.cjs.map +0 -1
  419. package/dist/core/router/middleware/index.js.map +0 -1
  420. package/dist/core/router/middleware/types.cjs.map +0 -1
  421. package/dist/core/router/middleware/types.js.map +0 -1
  422. package/dist/core/router/monitoring/RouterMonitoring.cjs.map +0 -1
  423. package/dist/core/router/monitoring/RouterMonitoring.js.map +0 -1
  424. package/dist/core/router/monitoring/index.cjs.map +0 -1
  425. package/dist/core/router/monitoring/index.js.map +0 -1
  426. package/dist/core/router/navigation/RouterNavigation.cjs.map +0 -1
  427. package/dist/core/router/navigation/RouterNavigation.js.map +0 -1
  428. package/dist/core/router/navigation/index.cjs.map +0 -1
  429. package/dist/core/router/navigation/index.js.map +0 -1
  430. package/dist/core/router/performance/RouteCache.cjs.map +0 -1
  431. package/dist/core/router/performance/RouteCache.js.map +0 -1
  432. package/dist/core/router/performance/RoutePreloader.cjs.map +0 -1
  433. package/dist/core/router/performance/RoutePreloader.js.map +0 -1
  434. package/dist/core/router/performance/index.cjs.map +0 -1
  435. package/dist/core/router/performance/index.js.map +0 -1
  436. package/dist/core/router/plugin/RouterPluginManager.cjs.map +0 -1
  437. package/dist/core/router/plugin/RouterPluginManager.js.map +0 -1
  438. package/dist/core/router/plugin/index.cjs.map +0 -1
  439. package/dist/core/router/plugin/index.js.map +0 -1
  440. package/dist/core/router/plugin/types.cjs.map +0 -1
  441. package/dist/core/router/plugin/types.js.map +0 -1
  442. package/dist/core/router/types.cjs.map +0 -1
  443. package/dist/core/router/types.js.map +0 -1
  444. package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.cjs.map +0 -1
  445. package/dist/core/router/utils/adapters/react-router/RouteErrorBoundary.js.map +0 -1
  446. package/dist/core/router/utils/adapters/react-router/transform.cjs.map +0 -1
  447. package/dist/core/router/utils/adapters/react-router/transform.js.map +0 -1
  448. package/dist/core/router/utils/transform.cjs.map +0 -1
  449. package/dist/core/router/utils/transform.js.map +0 -1
  450. package/dist/core/router/validation/RouterConfigValidator.cjs.map +0 -1
  451. package/dist/core/router/validation/RouterConfigValidator.js.map +0 -1
  452. package/dist/core/router/validation/index.cjs.map +0 -1
  453. package/dist/core/router/validation/index.js.map +0 -1
  454. package/dist/core/router/validation/schema.cjs.map +0 -1
  455. package/dist/core/router/validation/schema.js.map +0 -1
  456. package/dist/core/router/version/RouteVersionManager.cjs.map +0 -1
  457. package/dist/core/router/version/RouteVersionManager.js.map +0 -1
  458. package/dist/core/router/version/index.cjs.map +0 -1
  459. package/dist/core/router/version/index.js.map +0 -1
  460. package/dist/core/splash/SplashScreen.cjs.map +0 -1
  461. package/dist/core/splash/SplashScreen.js.map +0 -1
  462. package/dist/core/splash/index.cjs.map +0 -1
  463. package/dist/core/splash/index.js.map +0 -1
  464. package/dist/core/splash/splashScreenUtils.cjs.map +0 -1
  465. package/dist/core/splash/splashScreenUtils.js.map +0 -1
  466. package/dist/core/startup/AppInstance.cjs.map +0 -1
  467. package/dist/core/startup/AppInstance.js.map +0 -1
  468. package/dist/core/startup/environment.cjs.map +0 -1
  469. package/dist/core/startup/environment.js.map +0 -1
  470. package/dist/core/startup/index.cjs.map +0 -1
  471. package/dist/core/startup/index.js.map +0 -1
  472. package/dist/core/startup/initializeServices.cjs.map +0 -1
  473. package/dist/core/startup/initializeServices.js.map +0 -1
  474. package/dist/core/startup/performanceTracker.cjs.map +0 -1
  475. package/dist/core/startup/performanceTracker.js.map +0 -1
  476. package/dist/core/startup/renderApp.cjs.map +0 -1
  477. package/dist/core/startup/renderApp.js.map +0 -1
  478. package/dist/core/startup/startApp.cjs.map +0 -1
  479. package/dist/core/startup/startApp.js.map +0 -1
  480. package/dist/core/types.cjs.map +0 -1
  481. package/dist/core/types.js.map +0 -1
  482. package/dist/index.cjs.map +0 -1
  483. package/dist/index.js.map +0 -1
  484. package/dist/index.umd.cjs.map +0 -1
  485. package/dist/index.umd.js.map +0 -1
  486. package/dist/kernel/constants.cjs.map +0 -1
  487. package/dist/kernel/constants.js.map +0 -1
  488. package/dist/kernel/index.cjs.map +0 -1
  489. package/dist/kernel/index.js.map +0 -1
  490. package/dist/kernel/kernel.cjs.map +0 -1
  491. package/dist/kernel/kernel.js.map +0 -1
  492. package/dist/kernel/manager/cacheManager.cjs.map +0 -1
  493. package/dist/kernel/manager/cacheManager.js.map +0 -1
  494. package/dist/kernel/manager/i18n/I18nManager.cjs.map +0 -1
  495. package/dist/kernel/manager/i18n/I18nManager.js.map +0 -1
  496. package/dist/kernel/manager/i18n/i18n.persistence.cjs.map +0 -1
  497. package/dist/kernel/manager/i18n/i18n.persistence.js.map +0 -1
  498. package/dist/kernel/manager/i18n/i18n.schema.cjs.map +0 -1
  499. package/dist/kernel/manager/i18n/i18n.schema.js.map +0 -1
  500. package/dist/kernel/manager/i18n/index.cjs.map +0 -1
  501. package/dist/kernel/manager/i18n/index.js.map +0 -1
  502. package/dist/kernel/manager/i18nManager.cjs.map +0 -1
  503. package/dist/kernel/manager/i18nManager.js.map +0 -1
  504. package/dist/kernel/manager/index.cjs.map +0 -1
  505. package/dist/kernel/manager/index.js.map +0 -1
  506. package/dist/kernel/manager/logger/LoggerManager.cjs.map +0 -1
  507. package/dist/kernel/manager/logger/LoggerManager.js.map +0 -1
  508. package/dist/kernel/manager/logger/index.cjs.map +0 -1
  509. package/dist/kernel/manager/logger/index.js.map +0 -1
  510. package/dist/kernel/manager/logger/logger.persistence.cjs.map +0 -1
  511. package/dist/kernel/manager/logger/logger.persistence.js.map +0 -1
  512. package/dist/kernel/manager/logger/logger.schema.cjs.map +0 -1
  513. package/dist/kernel/manager/logger/logger.schema.js.map +0 -1
  514. package/dist/kernel/manager/loggerManager.cjs.map +0 -1
  515. package/dist/kernel/manager/loggerManager.js.map +0 -1
  516. package/dist/kernel/manager/persistence.cjs +0 -78
  517. package/dist/kernel/manager/persistence.cjs.map +0 -1
  518. package/dist/kernel/manager/persistence.d.ts +0 -3
  519. package/dist/kernel/manager/persistence.js +0 -60
  520. package/dist/kernel/manager/persistence.js.map +0 -1
  521. package/dist/kernel/manager/theme/ThemeManager.cjs.map +0 -1
  522. package/dist/kernel/manager/theme/ThemeManager.js.map +0 -1
  523. package/dist/kernel/manager/theme/index.cjs.map +0 -1
  524. package/dist/kernel/manager/theme/index.js.map +0 -1
  525. package/dist/kernel/manager/theme/theme.dom.cjs.map +0 -1
  526. package/dist/kernel/manager/theme/theme.dom.js.map +0 -1
  527. package/dist/kernel/manager/theme/theme.persistence.cjs.map +0 -1
  528. package/dist/kernel/manager/theme/theme.persistence.js.map +0 -1
  529. package/dist/kernel/manager/theme/theme.schema.cjs.map +0 -1
  530. package/dist/kernel/manager/theme/theme.schema.js.map +0 -1
  531. package/dist/kernel/manager/themeManager.cjs.map +0 -1
  532. package/dist/kernel/manager/themeManager.js.map +0 -1
  533. package/dist/kernel/types.cjs.map +0 -1
  534. package/dist/kernel/types.js.map +0 -1
  535. package/dist/library/index.cjs.map +0 -1
  536. package/dist/library/index.js.map +0 -1
  537. package/dist/library/locale/index.cjs.map +0 -1
  538. package/dist/library/locale/index.js.map +0 -1
  539. package/dist/library/locale/langs/en-us/index.cjs.map +0 -1
  540. package/dist/library/locale/langs/en-us/index.js.map +0 -1
  541. package/dist/library/locale/langs/zh-cn/index.cjs.map +0 -1
  542. package/dist/library/locale/langs/zh-cn/index.js.map +0 -1
  543. package/dist/library/locale/types.cjs.map +0 -1
  544. package/dist/library/locale/types.js.map +0 -1
  545. package/dist/library/storage/cache.cjs.map +0 -1
  546. package/dist/library/storage/cache.js.map +0 -1
  547. package/dist/library/storage/encryption.cjs.map +0 -1
  548. package/dist/library/storage/encryption.js.map +0 -1
  549. package/dist/library/storage/index.cjs.map +0 -1
  550. package/dist/library/storage/index.js.map +0 -1
  551. package/dist/request/adapter/RequestAdapter.d.ts +0 -85
  552. package/dist/request/adapter/RequestAdapter.js +0 -70
  553. package/dist/request/adapter/RequestAdapter.js.map +0 -1
  554. package/dist/request/adapter/axiosAdapter.d.ts +0 -10
  555. package/dist/request/adapter/axiosAdapter.js +0 -115
  556. package/dist/request/adapter/axiosAdapter.js.map +0 -1
  557. package/dist/request/adapter/fetchAdapter.d.ts +0 -10
  558. package/dist/request/adapter/fetchAdapter.js +0 -126
  559. package/dist/request/adapter/fetchAdapter.js.map +0 -1
  560. package/dist/request/adapter/index.d.ts +0 -9
  561. package/dist/request/adapter/index.js +0 -14
  562. package/dist/request/adapter/index.js.map +0 -1
  563. package/dist/request/adapter/kyAdapter.d.ts +0 -10
  564. package/dist/request/adapter/kyAdapter.js +0 -142
  565. package/dist/request/adapter/kyAdapter.js.map +0 -1
  566. package/dist/request/adapter/undiciAdapter.d.ts +0 -10
  567. package/dist/request/adapter/undiciAdapter.js +0 -164
  568. package/dist/request/adapter/undiciAdapter.js.map +0 -1
  569. package/dist/request/adapter.d.ts +0 -1
  570. package/dist/request/core/RequestClient.d.ts +0 -134
  571. package/dist/request/core/RequestClient.js +0 -509
  572. package/dist/request/core/RequestClient.js.map +0 -1
  573. package/dist/request/core/index.d.ts +0 -5
  574. package/dist/request/core/index.js +0 -5
  575. package/dist/request/core/index.js.map +0 -1
  576. package/dist/request/core.d.ts +0 -1
  577. package/dist/request/index.d.ts +0 -1
  578. package/dist/request/index.js +0 -50
  579. package/dist/request/index.js.map +0 -1
  580. package/dist/request/plugin/RequestPlugin.d.ts +0 -170
  581. package/dist/request/plugin/RequestPlugin.js +0 -203
  582. package/dist/request/plugin/RequestPlugin.js.map +0 -1
  583. package/dist/request/plugin/cache.d.ts +0 -33
  584. package/dist/request/plugin/cache.js +0 -264
  585. package/dist/request/plugin/cache.js.map +0 -1
  586. package/dist/request/plugin/csrfPlugin.d.ts +0 -21
  587. package/dist/request/plugin/csrfPlugin.js +0 -44
  588. package/dist/request/plugin/csrfPlugin.js.map +0 -1
  589. package/dist/request/plugin/index.d.ts +0 -11
  590. package/dist/request/plugin/index.js +0 -12
  591. package/dist/request/plugin/index.js.map +0 -1
  592. package/dist/request/plugin/monitoring.d.ts +0 -112
  593. package/dist/request/plugin/monitoring.js +0 -205
  594. package/dist/request/plugin/monitoring.js.map +0 -1
  595. package/dist/request/plugin/queue.d.ts +0 -91
  596. package/dist/request/plugin/queue.js +0 -156
  597. package/dist/request/plugin/queue.js.map +0 -1
  598. package/dist/request/plugin/retry.d.ts +0 -34
  599. package/dist/request/plugin/retry.js +0 -93
  600. package/dist/request/plugin/retry.js.map +0 -1
  601. package/dist/request/plugin/validation.d.ts +0 -26
  602. package/dist/request/plugin/validation.js +0 -116
  603. package/dist/request/plugin/validation.js.map +0 -1
  604. package/dist/request/plugin.d.ts +0 -1
  605. package/dist/request/runtime/RequestContext.d.ts +0 -50
  606. package/dist/request/runtime/RequestContext.js +0 -86
  607. package/dist/request/runtime/RequestContext.js.map +0 -1
  608. package/dist/request/runtime/index.d.ts +0 -4
  609. package/dist/request/runtime/index.js +0 -5
  610. package/dist/request/runtime/index.js.map +0 -1
  611. package/dist/request/runtime.d.ts +0 -1
  612. package/dist/request/types.d.ts +0 -1
  613. package/dist/request/types.js +0 -97
  614. package/dist/request/types.js.map +0 -1
  615. package/dist/request/utils/RequestQueueManager.d.ts +0 -74
  616. package/dist/request/utils/RequestQueueManager.js +0 -160
  617. package/dist/request/utils/RequestQueueManager.js.map +0 -1
  618. package/dist/request/utils/dependencyCheck.d.ts +0 -63
  619. package/dist/request/utils/dependencyCheck.js +0 -192
  620. package/dist/request/utils/dependencyCheck.js.map +0 -1
  621. package/dist/request/utils/index.d.ts +0 -5
  622. package/dist/request/utils/index.js +0 -6
  623. package/dist/request/utils/index.js.map +0 -1
  624. package/dist/request/utils.d.ts +0 -1
  625. package/dist/state/StateManager.cjs.map +0 -1
  626. package/dist/state/StateManager.js.map +0 -1
  627. package/dist/state/adapters/AdapterFactory.cjs.map +0 -1
  628. package/dist/state/adapters/AdapterFactory.js.map +0 -1
  629. package/dist/state/adapters/DefaultAdapter.cjs.map +0 -1
  630. package/dist/state/adapters/DefaultAdapter.js.map +0 -1
  631. package/dist/state/adapters/ReduxAdapter.cjs.map +0 -1
  632. package/dist/state/adapters/ReduxAdapter.js.map +0 -1
  633. package/dist/state/adapters/ZustandAdapter.cjs.map +0 -1
  634. package/dist/state/adapters/ZustandAdapter.js.map +0 -1
  635. package/dist/state/adapters/index.cjs.map +0 -1
  636. package/dist/state/adapters/index.js.map +0 -1
  637. package/dist/state/adapters/types.cjs.map +0 -1
  638. package/dist/state/adapters/types.js.map +0 -1
  639. package/dist/state/core/DerivedStateInstance.cjs.map +0 -1
  640. package/dist/state/core/DerivedStateInstance.js.map +0 -1
  641. package/dist/state/core/StateInstance.cjs.map +0 -1
  642. package/dist/state/core/StateInstance.js.map +0 -1
  643. package/dist/state/core/StateRegistry.cjs.map +0 -1
  644. package/dist/state/core/StateRegistry.js.map +0 -1
  645. package/dist/state/core/StateScope.cjs.map +0 -1
  646. package/dist/state/core/StateScope.js.map +0 -1
  647. package/dist/state/core/index.cjs.map +0 -1
  648. package/dist/state/core/index.js.map +0 -1
  649. package/dist/state/index.cjs.map +0 -1
  650. package/dist/state/index.js.map +0 -1
  651. package/dist/state/types.cjs.map +0 -1
  652. package/dist/state/types.js.map +0 -1
  653. package/dist/state.umd.js.map +0 -1
  654. package/dist/types.cjs.map +0 -1
  655. package/dist/types.js.map +0 -1
  656. package/dist/utils/analytics.cjs.map +0 -1
  657. package/dist/utils/analytics.js.map +0 -1
  658. package/dist/utils/configSecurity.cjs.map +0 -1
  659. package/dist/utils/configSecurity.js.map +0 -1
  660. package/dist/utils/csrf.cjs.map +0 -1
  661. package/dist/utils/csrf.js.map +0 -1
  662. package/dist/utils/errors/ErrorCodes.cjs.map +0 -1
  663. package/dist/utils/errors/ErrorCodes.js.map +0 -1
  664. package/dist/utils/errors.cjs.map +0 -1
  665. package/dist/utils/errors.js.map +0 -1
  666. package/dist/utils/index.cjs.map +0 -1
  667. package/dist/utils/index.js.map +0 -1
  668. package/dist/utils/logger.cjs.map +0 -1
  669. package/dist/utils/logger.js.map +0 -1
  670. package/dist/utils/logger.types.cjs.map +0 -1
  671. package/dist/utils/logger.types.js.map +0 -1
  672. package/dist/utils/monitoring.cjs.map +0 -1
  673. package/dist/utils/monitoring.js.map +0 -1
  674. package/dist/utils/performance.cjs.map +0 -1
  675. package/dist/utils/performance.js.map +0 -1
  676. package/dist/utils/resourceLoader.cjs.map +0 -1
  677. package/dist/utils/resourceLoader.js.map +0 -1
  678. package/dist/utils/runtimeSecurity.cjs.map +0 -1
  679. package/dist/utils/runtimeSecurity.js.map +0 -1
  680. package/dist/utils/security.cjs.map +0 -1
  681. package/dist/utils/security.js.map +0 -1
  682. package/dist/utils/traceId.cjs.map +0 -1
  683. package/dist/utils/traceId.js.map +0 -1
  684. package/dist/utils/validation.cjs.map +0 -1
  685. package/dist/utils/validation.js.map +0 -1
@@ -1,26 +0,0 @@
1
- /**
2
- * 验证插件
3
- *
4
- * 提供请求参数和响应数据验证能力(基于 Zod)
5
- */
6
- import type { RequestPlugin } from './RequestPlugin';
7
- /**
8
- * 验证插件配置
9
- */
10
- export interface ValidationPluginConfig {
11
- /**
12
- * 是否启用验证
13
- */
14
- enabled?: boolean;
15
- /**
16
- * 验证失败时的默认处理方式
17
- */
18
- onValidationError?: (error: unknown) => void;
19
- }
20
- /**
21
- * 创建验证插件
22
- *
23
- * @param config - 验证插件配置
24
- * @returns 验证插件实例
25
- */
26
- export declare function createValidationPlugin(config?: ValidationPluginConfig): RequestPlugin;
@@ -1,116 +0,0 @@
1
- /**
2
- * 验证插件
3
- *
4
- * 提供请求参数和响应数据验证能力(基于 Zod)
5
- */ import { RequestError, RequestErrorType, RequestErrorCode } from "../types";
6
- import { PluginPriority } from "./RequestPlugin";
7
- /**
8
- * 检查是否为 Zod Schema
9
- */ function isZodSchema(schema) {
10
- return schema !== null && typeof schema === 'object' && 'parse' in schema && 'safeParse' in schema && typeof schema.parse === 'function' && typeof schema.safeParse === 'function';
11
- }
12
- /**
13
- * 创建验证插件
14
- *
15
- * @param config - 验证插件配置
16
- * @returns 验证插件实例
17
- */ export function createValidationPlugin(config = {}) {
18
- const { enabled = true, onValidationError } = config;
19
- return {
20
- name: 'validation',
21
- priority: PluginPriority.HIGH,
22
- async onBeforeRequest (context) {
23
- if (!enabled) {
24
- return;
25
- }
26
- const validationConfig = context.request.validation;
27
- if (!validationConfig) {
28
- return;
29
- }
30
- // 验证请求参数
31
- const requestSchema = validationConfig.requestSchema;
32
- if (requestSchema && isZodSchema(requestSchema)) {
33
- try {
34
- // 验证查询参数和请求体
35
- const requestData = {
36
- query: context.request.query,
37
- body: context.request.body
38
- };
39
- const zodSchema = requestSchema;
40
- const result = zodSchema.safeParse(requestData);
41
- if (!result.success) {
42
- const error = new RequestError('请求参数验证失败', RequestErrorType.VALIDATION_ERROR, RequestErrorCode.REQUEST_VALIDATION_FAILED, {
43
- request: context.request,
44
- context: {
45
- validationErrors: result.error.errors
46
- }
47
- });
48
- if (validationConfig.onValidationError) {
49
- validationConfig.onValidationError(error);
50
- } else if (onValidationError) {
51
- onValidationError(error);
52
- }
53
- throw error;
54
- }
55
- // 如果验证通过,可以使用验证后的数据更新请求
56
- // 这里可以根据需要更新 context.request
57
- } catch (error) {
58
- // 如果不是验证错误,重新抛出
59
- if (error instanceof RequestError && error.type === RequestErrorType.VALIDATION_ERROR) {
60
- throw error;
61
- }
62
- // 其他错误继续抛出
63
- throw error;
64
- }
65
- }
66
- },
67
- async onAfterRequest (context) {
68
- if (!enabled || !context.response) {
69
- return;
70
- }
71
- const validationConfig = context.request.validation;
72
- if (!validationConfig) {
73
- return;
74
- }
75
- // 验证响应数据
76
- const responseSchema = validationConfig.responseSchema;
77
- if (responseSchema && isZodSchema(responseSchema)) {
78
- try {
79
- const zodSchema = responseSchema;
80
- const result = zodSchema.safeParse(context.response.data);
81
- if (!result.success) {
82
- const error = new RequestError('响应数据验证失败', RequestErrorType.VALIDATION_ERROR, RequestErrorCode.RESPONSE_VALIDATION_FAILED, {
83
- request: context.request,
84
- response: context.response,
85
- context: {
86
- validationErrors: result.error.errors
87
- }
88
- });
89
- if (validationConfig.onValidationError) {
90
- validationConfig.onValidationError(error);
91
- } else if (onValidationError) {
92
- onValidationError(error);
93
- }
94
- throw error;
95
- }
96
- // 如果验证通过,可以使用验证后的数据更新响应
97
- if (result.success && result.data !== context.response.data) {
98
- return {
99
- ...context.response,
100
- data: result.data
101
- };
102
- }
103
- } catch (error) {
104
- // 如果不是验证错误,重新抛出
105
- if (error instanceof RequestError && error.type === RequestErrorType.VALIDATION_ERROR) {
106
- throw error;
107
- }
108
- // 其他错误继续抛出
109
- throw error;
110
- }
111
- }
112
- }
113
- };
114
- }
115
-
116
- //# sourceMappingURL=validation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/request/plugin/validation.ts"],"sourcesContent":["/**\n * 验证插件\n * \n * 提供请求参数和响应数据验证能力(基于 Zod)\n */\n\nimport type { RequestPlugin } from './RequestPlugin';\nimport type { RequestOptions, Response, RequestContext } from '../types';\nimport { RequestError, RequestErrorType, RequestErrorCode } from '../types';\nimport { PluginPriority } from './RequestPlugin';\n\n/**\n * 验证插件配置\n */\nexport interface ValidationPluginConfig {\n /**\n * 是否启用验证\n */\n enabled?: boolean;\n\n /**\n * 验证失败时的默认处理方式\n */\n onValidationError?: (error: unknown) => void;\n}\n\n/**\n * 检查是否为 Zod Schema\n */\nfunction isZodSchema(schema: unknown): boolean {\n return (\n schema !== null &&\n typeof schema === 'object' &&\n 'parse' in schema &&\n 'safeParse' in schema &&\n typeof (schema as any).parse === 'function' &&\n typeof (schema as any).safeParse === 'function'\n );\n}\n\n/**\n * 创建验证插件\n * \n * @param config - 验证插件配置\n * @returns 验证插件实例\n */\nexport function createValidationPlugin(config: ValidationPluginConfig = {}): RequestPlugin {\n const { enabled = true, onValidationError } = config;\n\n return {\n name: 'validation',\n priority: PluginPriority.HIGH, // 高优先级,在请求前验证\n\n async onBeforeRequest(context: RequestContext): Promise<RequestOptions | void> {\n if (!enabled) {\n return;\n }\n\n const validationConfig = context.request.validation;\n if (!validationConfig) {\n return;\n }\n\n // 验证请求参数\n const requestSchema = validationConfig.requestSchema;\n if (requestSchema && isZodSchema(requestSchema)) {\n try {\n // 验证查询参数和请求体\n const requestData = {\n query: context.request.query,\n body: context.request.body,\n };\n\n const zodSchema = requestSchema as any;\n const result = zodSchema.safeParse(requestData);\n\n if (!result.success) {\n const error = new RequestError(\n '请求参数验证失败',\n RequestErrorType.VALIDATION_ERROR,\n RequestErrorCode.REQUEST_VALIDATION_FAILED,\n {\n request: context.request,\n context: {\n validationErrors: result.error.errors,\n },\n }\n );\n\n if (validationConfig.onValidationError) {\n validationConfig.onValidationError(error);\n } else if (onValidationError) {\n onValidationError(error);\n }\n\n throw error;\n }\n\n // 如果验证通过,可以使用验证后的数据更新请求\n // 这里可以根据需要更新 context.request\n } catch (error) {\n // 如果不是验证错误,重新抛出\n if (error instanceof RequestError && error.type === RequestErrorType.VALIDATION_ERROR) {\n throw error;\n }\n // 其他错误继续抛出\n throw error;\n }\n }\n },\n\n async onAfterRequest(context: RequestContext): Promise<Response | void> {\n if (!enabled || !context.response) {\n return;\n }\n\n const validationConfig = context.request.validation;\n if (!validationConfig) {\n return;\n }\n\n // 验证响应数据\n const responseSchema = validationConfig.responseSchema;\n if (responseSchema && isZodSchema(responseSchema)) {\n try {\n const zodSchema = responseSchema as any;\n const result = zodSchema.safeParse(context.response.data);\n\n if (!result.success) {\n const error = new RequestError(\n '响应数据验证失败',\n RequestErrorType.VALIDATION_ERROR,\n RequestErrorCode.RESPONSE_VALIDATION_FAILED,\n {\n request: context.request,\n response: context.response,\n context: {\n validationErrors: result.error.errors,\n },\n }\n );\n\n if (validationConfig.onValidationError) {\n validationConfig.onValidationError(error);\n } else if (onValidationError) {\n onValidationError(error);\n }\n\n throw error;\n }\n\n // 如果验证通过,可以使用验证后的数据更新响应\n if (result.success && result.data !== context.response.data) {\n return {\n ...context.response,\n data: result.data,\n };\n }\n } catch (error) {\n // 如果不是验证错误,重新抛出\n if (error instanceof RequestError && error.type === RequestErrorType.VALIDATION_ERROR) {\n throw error;\n }\n // 其他错误继续抛出\n throw error;\n }\n }\n },\n };\n}\n"],"names":["RequestError","RequestErrorType","RequestErrorCode","PluginPriority","isZodSchema","schema","parse","safeParse","createValidationPlugin","config","enabled","onValidationError","name","priority","HIGH","onBeforeRequest","context","validationConfig","request","validation","requestSchema","requestData","query","body","zodSchema","result","success","error","VALIDATION_ERROR","REQUEST_VALIDATION_FAILED","validationErrors","errors","type","onAfterRequest","response","responseSchema","data","RESPONSE_VALIDATION_FAILED"],"mappings":"AAAA;;;;CAIC,GAID,SAASA,YAAY,EAAEC,gBAAgB,EAAEC,gBAAgB,QAAQ,WAAW;AAC5E,SAASC,cAAc,QAAQ,kBAAkB;AAiBjD;;CAEC,GACD,SAASC,YAAYC,MAAe;IAClC,OACEA,WAAW,QACX,OAAOA,WAAW,YAClB,WAAWA,UACX,eAAeA,UACf,OAAO,AAACA,OAAeC,KAAK,KAAK,cACjC,OAAO,AAACD,OAAeE,SAAS,KAAK;AAEzC;AAEA;;;;;CAKC,GACD,OAAO,SAASC,uBAAuBC,SAAiC,CAAC,CAAC;IACxE,MAAM,EAAEC,UAAU,IAAI,EAAEC,iBAAiB,EAAE,GAAGF;IAE9C,OAAO;QACLG,MAAM;QACNC,UAAUV,eAAeW,IAAI;QAE7B,MAAMC,iBAAgBC,OAAuB;YAC3C,IAAI,CAACN,SAAS;gBACZ;YACF;YAEA,MAAMO,mBAAmBD,QAAQE,OAAO,CAACC,UAAU;YACnD,IAAI,CAACF,kBAAkB;gBACrB;YACF;YAEA,SAAS;YACT,MAAMG,gBAAgBH,iBAAiBG,aAAa;YACpD,IAAIA,iBAAiBhB,YAAYgB,gBAAgB;gBAC/C,IAAI;oBACF,aAAa;oBACb,MAAMC,cAAc;wBAClBC,OAAON,QAAQE,OAAO,CAACI,KAAK;wBAC5BC,MAAMP,QAAQE,OAAO,CAACK,IAAI;oBAC5B;oBAEA,MAAMC,YAAYJ;oBAClB,MAAMK,SAASD,UAAUjB,SAAS,CAACc;oBAEnC,IAAI,CAACI,OAAOC,OAAO,EAAE;wBACnB,MAAMC,QAAQ,IAAI3B,aAChB,YACAC,iBAAiB2B,gBAAgB,EACjC1B,iBAAiB2B,yBAAyB,EAC1C;4BACEX,SAASF,QAAQE,OAAO;4BACxBF,SAAS;gCACPc,kBAAkBL,OAAOE,KAAK,CAACI,MAAM;4BACvC;wBACF;wBAGF,IAAId,iBAAiBN,iBAAiB,EAAE;4BACtCM,iBAAiBN,iBAAiB,CAACgB;wBACrC,OAAO,IAAIhB,mBAAmB;4BAC5BA,kBAAkBgB;wBACpB;wBAEA,MAAMA;oBACR;gBAEA,wBAAwB;gBACxB,6BAA6B;gBAC/B,EAAE,OAAOA,OAAO;oBACd,gBAAgB;oBAChB,IAAIA,iBAAiB3B,gBAAgB2B,MAAMK,IAAI,KAAK/B,iBAAiB2B,gBAAgB,EAAE;wBACrF,MAAMD;oBACR;oBACA,WAAW;oBACX,MAAMA;gBACR;YACF;QACF;QAEA,MAAMM,gBAAejB,OAAuB;YAC1C,IAAI,CAACN,WAAW,CAACM,QAAQkB,QAAQ,EAAE;gBACjC;YACF;YAEA,MAAMjB,mBAAmBD,QAAQE,OAAO,CAACC,UAAU;YACnD,IAAI,CAACF,kBAAkB;gBACrB;YACF;YAEA,SAAS;YACT,MAAMkB,iBAAiBlB,iBAAiBkB,cAAc;YACtD,IAAIA,kBAAkB/B,YAAY+B,iBAAiB;gBACjD,IAAI;oBACF,MAAMX,YAAYW;oBAClB,MAAMV,SAASD,UAAUjB,SAAS,CAACS,QAAQkB,QAAQ,CAACE,IAAI;oBAExD,IAAI,CAACX,OAAOC,OAAO,EAAE;wBACnB,MAAMC,QAAQ,IAAI3B,aAChB,YACAC,iBAAiB2B,gBAAgB,EACjC1B,iBAAiBmC,0BAA0B,EAC3C;4BACEnB,SAASF,QAAQE,OAAO;4BACxBgB,UAAUlB,QAAQkB,QAAQ;4BAC1BlB,SAAS;gCACPc,kBAAkBL,OAAOE,KAAK,CAACI,MAAM;4BACvC;wBACF;wBAGF,IAAId,iBAAiBN,iBAAiB,EAAE;4BACtCM,iBAAiBN,iBAAiB,CAACgB;wBACrC,OAAO,IAAIhB,mBAAmB;4BAC5BA,kBAAkBgB;wBACpB;wBAEA,MAAMA;oBACR;oBAEA,wBAAwB;oBACxB,IAAIF,OAAOC,OAAO,IAAID,OAAOW,IAAI,KAAKpB,QAAQkB,QAAQ,CAACE,IAAI,EAAE;wBAC3D,OAAO;4BACL,GAAGpB,QAAQkB,QAAQ;4BACnBE,MAAMX,OAAOW,IAAI;wBACnB;oBACF;gBACF,EAAE,OAAOT,OAAO;oBACd,gBAAgB;oBAChB,IAAIA,iBAAiB3B,gBAAgB2B,MAAMK,IAAI,KAAK/B,iBAAiB2B,gBAAgB,EAAE;wBACrF,MAAMD;oBACR;oBACA,WAAW;oBACX,MAAMA;gBACR;YACF;QACF;IACF;AACF"}
@@ -1 +0,0 @@
1
- export * from '@vlian/request/plugin';
@@ -1,50 +0,0 @@
1
- /**
2
- * 请求上下文运行时工具
3
- */
4
- import type { RequestOptions, Response, RequestContext as IRequestContext } from '../types';
5
- /**
6
- * 创建请求上下文
7
- *
8
- * @template TRequest - 请求配置类型
9
- * @template TResponse - 响应类型
10
- * @template TMeta - 元数据类型
11
- * @param request - 请求配置
12
- * @param meta - 初始元数据
13
- * @returns 请求上下文
14
- */
15
- export declare function createRequestContext<TRequest extends RequestOptions = RequestOptions, TResponse extends Response = Response, TMeta extends Record<string, unknown> = Record<string, unknown>>(request: TRequest, meta?: TMeta): IRequestContext<TRequest, TResponse, TMeta>;
16
- /**
17
- * 更新请求上下文
18
- *
19
- * @template TContext - 请求上下文类型
20
- * @param context - 请求上下文
21
- * @param updates - 更新内容
22
- * @returns 更新后的上下文
23
- */
24
- export declare function updateRequestContext<TContext extends IRequestContext>(context: TContext, updates: Partial<TContext>): TContext;
25
- /**
26
- * 完成请求上下文(设置响应和结束时间)
27
- *
28
- * @template TContext - 请求上下文类型
29
- * @param context - 请求上下文
30
- * @param response - 响应对象
31
- * @returns 更新后的上下文
32
- */
33
- export declare function completeRequestContext<TContext extends IRequestContext>(context: TContext, response: Response): TContext;
34
- /**
35
- * 失败请求上下文(设置错误和结束时间)
36
- *
37
- * @template TContext - 请求上下文类型
38
- * @param context - 请求上下文
39
- * @param error - 请求错误
40
- * @returns 更新后的上下文
41
- */
42
- export declare function failRequestContext<TContext extends IRequestContext>(context: TContext, error: Error): TContext;
43
- /**
44
- * 取消请求上下文
45
- *
46
- * @template TContext - 请求上下文类型
47
- * @param context - 请求上下文
48
- * @returns 更新后的上下文
49
- */
50
- export declare function cancelRequestContext<TContext extends IRequestContext>(context: TContext): TContext;
@@ -1,86 +0,0 @@
1
- /**
2
- * 请求上下文运行时工具
3
- */ /**
4
- * 创建请求上下文
5
- *
6
- * @template TRequest - 请求配置类型
7
- * @template TResponse - 响应类型
8
- * @template TMeta - 元数据类型
9
- * @param request - 请求配置
10
- * @param meta - 初始元数据
11
- * @returns 请求上下文
12
- */ export function createRequestContext(request, meta = {}) {
13
- const startTime = Date.now();
14
- const abortController = typeof AbortController !== 'undefined' ? new AbortController() : undefined;
15
- return {
16
- request,
17
- meta: meta,
18
- startTime,
19
- retryCount: 0,
20
- cancelled: false,
21
- abortController
22
- };
23
- }
24
- /**
25
- * 更新请求上下文
26
- *
27
- * @template TContext - 请求上下文类型
28
- * @param context - 请求上下文
29
- * @param updates - 更新内容
30
- * @returns 更新后的上下文
31
- */ export function updateRequestContext(context, updates) {
32
- return {
33
- ...context,
34
- ...updates,
35
- meta: {
36
- ...context.meta,
37
- ...updates.meta || {}
38
- }
39
- };
40
- }
41
- /**
42
- * 完成请求上下文(设置响应和结束时间)
43
- *
44
- * @template TContext - 请求上下文类型
45
- * @param context - 请求上下文
46
- * @param response - 响应对象
47
- * @returns 更新后的上下文
48
- */ export function completeRequestContext(context, response) {
49
- const endTime = Date.now();
50
- return updateRequestContext(context, {
51
- response: response,
52
- endTime,
53
- duration: endTime - context.startTime
54
- });
55
- }
56
- /**
57
- * 失败请求上下文(设置错误和结束时间)
58
- *
59
- * @template TContext - 请求上下文类型
60
- * @param context - 请求上下文
61
- * @param error - 请求错误
62
- * @returns 更新后的上下文
63
- */ export function failRequestContext(context, error) {
64
- const endTime = Date.now();
65
- return updateRequestContext(context, {
66
- error: error,
67
- endTime,
68
- duration: endTime - context.startTime
69
- });
70
- }
71
- /**
72
- * 取消请求上下文
73
- *
74
- * @template TContext - 请求上下文类型
75
- * @param context - 请求上下文
76
- * @returns 更新后的上下文
77
- */ export function cancelRequestContext(context) {
78
- if (context.abortController) {
79
- context.abortController.abort();
80
- }
81
- return updateRequestContext(context, {
82
- cancelled: true
83
- });
84
- }
85
-
86
- //# sourceMappingURL=RequestContext.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/request/runtime/RequestContext.ts"],"sourcesContent":["/**\n * 请求上下文运行时工具\n */\n\nimport type { RequestOptions, Response, RequestContext as IRequestContext } from '../types';\n\n/**\n * 创建请求上下文\n * \n * @template TRequest - 请求配置类型\n * @template TResponse - 响应类型\n * @template TMeta - 元数据类型\n * @param request - 请求配置\n * @param meta - 初始元数据\n * @returns 请求上下文\n */\nexport function createRequestContext<\n TRequest extends RequestOptions = RequestOptions,\n TResponse extends Response = Response,\n TMeta extends Record<string, unknown> = Record<string, unknown>\n>(\n request: TRequest,\n meta: TMeta = {} as TMeta\n): IRequestContext<TRequest, TResponse, TMeta> {\n const startTime = Date.now();\n const abortController = typeof AbortController !== 'undefined' ? new AbortController() : undefined;\n\n return {\n request,\n meta: meta as TMeta,\n startTime,\n retryCount: 0,\n cancelled: false,\n abortController,\n };\n}\n\n/**\n * 更新请求上下文\n * \n * @template TContext - 请求上下文类型\n * @param context - 请求上下文\n * @param updates - 更新内容\n * @returns 更新后的上下文\n */\nexport function updateRequestContext<TContext extends IRequestContext>(\n context: TContext,\n updates: Partial<TContext>\n): TContext {\n return {\n ...context,\n ...updates,\n meta: {\n ...context.meta,\n ...(updates.meta || {}),\n },\n };\n}\n\n/**\n * 完成请求上下文(设置响应和结束时间)\n * \n * @template TContext - 请求上下文类型\n * @param context - 请求上下文\n * @param response - 响应对象\n * @returns 更新后的上下文\n */\nexport function completeRequestContext<TContext extends IRequestContext>(\n context: TContext,\n response: Response\n): TContext {\n const endTime = Date.now();\n return updateRequestContext(context, {\n response: response as any,\n endTime,\n duration: endTime - context.startTime,\n } as Partial<TContext>);\n}\n\n/**\n * 失败请求上下文(设置错误和结束时间)\n * \n * @template TContext - 请求上下文类型\n * @param context - 请求上下文\n * @param error - 请求错误\n * @returns 更新后的上下文\n */\nexport function failRequestContext<TContext extends IRequestContext>(\n context: TContext,\n error: Error\n): TContext {\n const endTime = Date.now();\n return updateRequestContext(context, {\n error: error as any,\n endTime,\n duration: endTime - context.startTime,\n } as Partial<TContext>);\n}\n\n/**\n * 取消请求上下文\n * \n * @template TContext - 请求上下文类型\n * @param context - 请求上下文\n * @returns 更新后的上下文\n */\nexport function cancelRequestContext<TContext extends IRequestContext>(\n context: TContext\n): TContext {\n if (context.abortController) {\n context.abortController.abort();\n }\n return updateRequestContext(context, {\n cancelled: true,\n } as Partial<TContext>);\n}\n"],"names":["createRequestContext","request","meta","startTime","Date","now","abortController","AbortController","undefined","retryCount","cancelled","updateRequestContext","context","updates","completeRequestContext","response","endTime","duration","failRequestContext","error","cancelRequestContext","abort"],"mappings":"AAAA;;CAEC,GAID;;;;;;;;;CASC,GACD,OAAO,SAASA,qBAKdC,OAAiB,EACjBC,OAAc,CAAC,CAAU;IAEzB,MAAMC,YAAYC,KAAKC,GAAG;IAC1B,MAAMC,kBAAkB,OAAOC,oBAAoB,cAAc,IAAIA,oBAAoBC;IAEzF,OAAO;QACLP;QACAC,MAAMA;QACNC;QACAM,YAAY;QACZC,WAAW;QACXJ;IACF;AACF;AAEA;;;;;;;CAOC,GACD,OAAO,SAASK,qBACdC,OAAiB,EACjBC,OAA0B;IAE1B,OAAO;QACL,GAAGD,OAAO;QACV,GAAGC,OAAO;QACVX,MAAM;YACJ,GAAGU,QAAQV,IAAI;YACf,GAAIW,QAAQX,IAAI,IAAI,CAAC,CAAC;QACxB;IACF;AACF;AAEA;;;;;;;CAOC,GACD,OAAO,SAASY,uBACdF,OAAiB,EACjBG,QAAkB;IAElB,MAAMC,UAAUZ,KAAKC,GAAG;IACxB,OAAOM,qBAAqBC,SAAS;QACnCG,UAAUA;QACVC;QACAC,UAAUD,UAAUJ,QAAQT,SAAS;IACvC;AACF;AAEA;;;;;;;CAOC,GACD,OAAO,SAASe,mBACdN,OAAiB,EACjBO,KAAY;IAEZ,MAAMH,UAAUZ,KAAKC,GAAG;IACxB,OAAOM,qBAAqBC,SAAS;QACnCO,OAAOA;QACPH;QACAC,UAAUD,UAAUJ,QAAQT,SAAS;IACvC;AACF;AAEA;;;;;;CAMC,GACD,OAAO,SAASiB,qBACdR,OAAiB;IAEjB,IAAIA,QAAQN,eAAe,EAAE;QAC3BM,QAAQN,eAAe,CAACe,KAAK;IAC/B;IACA,OAAOV,qBAAqBC,SAAS;QACnCF,WAAW;IACb;AACF"}
@@ -1,4 +0,0 @@
1
- /**
2
- * 请求运行时模块导出
3
- */
4
- export { createRequestContext, updateRequestContext, completeRequestContext, failRequestContext, cancelRequestContext, } from './RequestContext';
@@ -1,5 +0,0 @@
1
- /**
2
- * 请求运行时模块导出
3
- */ export { createRequestContext, updateRequestContext, completeRequestContext, failRequestContext, cancelRequestContext } from "./RequestContext";
4
-
5
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/request/runtime/index.ts"],"sourcesContent":["/**\n * 请求运行时模块导出\n */\n\nexport {\n createRequestContext,\n updateRequestContext,\n completeRequestContext,\n failRequestContext,\n cancelRequestContext,\n} from './RequestContext';\n"],"names":["createRequestContext","updateRequestContext","completeRequestContext","failRequestContext","cancelRequestContext"],"mappings":"AAAA;;CAEC,GAED,SACEA,oBAAoB,EACpBC,oBAAoB,EACpBC,sBAAsB,EACtBC,kBAAkB,EAClBC,oBAAoB,QACf,mBAAmB"}
@@ -1 +0,0 @@
1
- export * from '@vlian/request/runtime';
@@ -1 +0,0 @@
1
- export * from '@vlian/request/types';
@@ -1,97 +0,0 @@
1
- /**
2
- * 请求库核心类型定义
3
- */ /**
4
- * HTTP 请求方法
5
- */ function _define_property(obj, key, value) {
6
- if (key in obj) {
7
- Object.defineProperty(obj, key, {
8
- value: value,
9
- enumerable: true,
10
- configurable: true,
11
- writable: true
12
- });
13
- } else {
14
- obj[key] = value;
15
- }
16
- return obj;
17
- }
18
- /**
19
- * 请求错误类型
20
- */ export var RequestErrorType = /*#__PURE__*/ function(RequestErrorType) {
21
- /**
22
- * 网络错误
23
- */ RequestErrorType["NETWORK_ERROR"] = "NETWORK_ERROR";
24
- /**
25
- * 超时错误
26
- */ RequestErrorType["TIMEOUT_ERROR"] = "TIMEOUT_ERROR";
27
- /**
28
- * HTTP 错误(4xx, 5xx)
29
- */ RequestErrorType["HTTP_ERROR"] = "HTTP_ERROR";
30
- /**
31
- * 取消错误
32
- */ RequestErrorType["ABORT_ERROR"] = "ABORT_ERROR";
33
- /**
34
- * 验证错误
35
- */ RequestErrorType["VALIDATION_ERROR"] = "VALIDATION_ERROR";
36
- /**
37
- * 未知错误
38
- */ RequestErrorType["UNKNOWN_ERROR"] = "UNKNOWN_ERROR";
39
- return RequestErrorType;
40
- }({});
41
- /**
42
- * 请求错误代码
43
- */ export var RequestErrorCode = /*#__PURE__*/ function(RequestErrorCode) {
44
- /**
45
- * 网络连接失败
46
- */ RequestErrorCode["NETWORK_CONNECTION_FAILED"] = "NETWORK_CONNECTION_FAILED";
47
- /**
48
- * 请求超时
49
- */ RequestErrorCode["REQUEST_TIMEOUT"] = "REQUEST_TIMEOUT";
50
- /**
51
- * 服务器错误(5xx)
52
- */ RequestErrorCode["SERVER_ERROR"] = "SERVER_ERROR";
53
- /**
54
- * 客户端错误(4xx)
55
- */ RequestErrorCode["CLIENT_ERROR"] = "CLIENT_ERROR";
56
- /**
57
- * 请求被取消
58
- */ RequestErrorCode["REQUEST_ABORTED"] = "REQUEST_ABORTED";
59
- /**
60
- * 响应验证失败
61
- */ RequestErrorCode["RESPONSE_VALIDATION_FAILED"] = "RESPONSE_VALIDATION_FAILED";
62
- /**
63
- * 请求参数验证失败
64
- */ RequestErrorCode["REQUEST_VALIDATION_FAILED"] = "REQUEST_VALIDATION_FAILED";
65
- return RequestErrorCode;
66
- }({});
67
- /**
68
- * 请求错误类
69
- */ export class RequestError extends Error {
70
- constructor(message, type, code, options){
71
- super(message), /**
72
- * 错误类型
73
- */ _define_property(this, "type", void 0), /**
74
- * 错误代码
75
- */ _define_property(this, "code", void 0), /**
76
- * HTTP 状态码(如果有)
77
- */ _define_property(this, "status", void 0), /**
78
- * 原始错误
79
- */ _define_property(this, "cause", void 0), /**
80
- * 请求配置
81
- */ _define_property(this, "request", void 0), /**
82
- * 响应数据(如果有)
83
- */ _define_property(this, "response", void 0), /**
84
- * 错误上下文
85
- */ _define_property(this, "context", void 0);
86
- this.name = 'RequestError';
87
- this.type = type;
88
- this.code = code;
89
- this.status = options?.status;
90
- this.cause = options?.cause;
91
- this.request = options?.request;
92
- this.response = options?.response;
93
- this.context = options?.context;
94
- }
95
- }
96
-
97
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../src/request/types.ts"],"sourcesContent":["/**\n * 请求库核心类型定义\n */\n\n/**\n * HTTP 请求方法\n */\nexport type HttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'HEAD' | 'OPTIONS';\n\n/**\n * 请求头类型\n */\nexport type RequestHeaders = Record<string, string | number | boolean>;\n\n/**\n * 请求查询参数类型\n */\nexport type RequestQuery = Record<string, string | number | boolean | null | undefined>;\n\n/**\n * 请求体类型\n */\nexport type RequestBody = string | FormData | URLSearchParams | Blob | ArrayBuffer | Record<string, unknown> | null;\n\n/**\n * 请求配置选项\n * \n * @template TResponse - 响应数据类型(用于类型推导)\n */\nexport interface RequestOptions<TResponse = unknown> {\n /**\n * 响应类型占位符(用于类型推导,实际不使用)\n * @internal\n */\n _responseType?: TResponse;\n\n /**\n * 请求方法\n */\n method?: HttpMethod;\n\n /**\n * 请求 URL\n */\n url: string;\n\n /**\n * 请求头\n */\n headers?: RequestHeaders;\n\n /**\n * 查询参数\n */\n query?: RequestQuery;\n\n /**\n * 请求体\n */\n body?: RequestBody;\n\n /**\n * 请求超时时间(毫秒)\n */\n timeout?: number;\n\n /**\n * 是否允许跨域请求\n */\n credentials?: 'include' | 'same-origin' | 'omit';\n\n /**\n * 响应类型\n */\n responseType?: 'json' | 'text' | 'blob' | 'arrayBuffer' | 'formData';\n\n /**\n * 是否中止请求\n */\n signal?: AbortSignal;\n\n /**\n * 请求元数据(用于插件扩展)\n */\n meta?: Record<string, unknown>;\n\n /**\n * 请求标签(用于缓存、监控等)\n */\n tags?: string[];\n\n /**\n * 是否跳过默认插件\n */\n skipPlugins?: string[];\n\n /**\n * 请求重试配置\n */\n retry?: RetryConfig;\n\n /**\n * 请求缓存配置\n */\n cache?: CacheConfig;\n\n /**\n * 请求验证配置\n */\n validation?: ValidationConfig;\n}\n\n/**\n * 重试配置\n */\nexport interface RetryConfig {\n /**\n * 最大重试次数\n */\n maxAttempts?: number;\n\n /**\n * 重试延迟(毫秒)\n */\n delay?: number;\n\n /**\n * 重试延迟策略(指数退避)\n */\n exponentialBackoff?: boolean;\n\n /**\n * 重试条件函数\n */\n shouldRetry?: (error: unknown, attempt: number) => boolean;\n\n /**\n * 重试延迟计算函数\n */\n calculateDelay?: (attempt: number) => number;\n}\n\n/**\n * 缓存配置\n */\nexport interface CacheConfig {\n /**\n * 缓存键\n */\n key?: string;\n\n /**\n * 缓存时间(毫秒)\n */\n ttl?: number;\n\n /**\n * 是否强制刷新\n */\n forceRefresh?: boolean;\n\n /**\n * 缓存存储类型\n */\n storage?: 'memory' | 'localStorage' | 'sessionStorage';\n\n /**\n * 缓存条件函数\n */\n shouldCache?: (response: Response<unknown>) => boolean;\n}\n\n/**\n * 验证配置\n * \n * @template TResponse - 响应数据类型\n */\nexport interface ValidationConfig {\n /**\n * 请求参数验证 Schema(Zod)\n */\n requestSchema?: unknown;\n\n /**\n * 响应数据验证 Schema(Zod)\n */\n responseSchema?: unknown;\n\n /**\n * 验证失败时的处理方式\n */\n onValidationError?: (error: unknown) => void;\n}\n\n/**\n * 响应对象\n * \n * @template TData - 响应数据类型\n * @template TMeta - 响应元数据类型\n */\nexport interface Response<TData = unknown, TMeta = Record<string, unknown>> {\n /**\n * 响应数据\n */\n data: TData;\n\n /**\n * HTTP 状态码\n */\n status: number;\n\n /**\n * HTTP 状态文本\n */\n statusText: string;\n\n /**\n * 响应头\n */\n headers: RequestHeaders;\n\n /**\n * 响应元数据(由插件注入)\n */\n meta?: TMeta;\n\n /**\n * 原始响应对象(适配器提供)\n */\n raw?: unknown;\n}\n\n/**\n * 请求错误类型\n */\nexport enum RequestErrorType {\n /**\n * 网络错误\n */\n NETWORK_ERROR = 'NETWORK_ERROR',\n\n /**\n * 超时错误\n */\n TIMEOUT_ERROR = 'TIMEOUT_ERROR',\n\n /**\n * HTTP 错误(4xx, 5xx)\n */\n HTTP_ERROR = 'HTTP_ERROR',\n\n /**\n * 取消错误\n */\n ABORT_ERROR = 'ABORT_ERROR',\n\n /**\n * 验证错误\n */\n VALIDATION_ERROR = 'VALIDATION_ERROR',\n\n /**\n * 未知错误\n */\n UNKNOWN_ERROR = 'UNKNOWN_ERROR',\n}\n\n/**\n * 请求错误代码\n */\nexport enum RequestErrorCode {\n /**\n * 网络连接失败\n */\n NETWORK_CONNECTION_FAILED = 'NETWORK_CONNECTION_FAILED',\n\n /**\n * 请求超时\n */\n REQUEST_TIMEOUT = 'REQUEST_TIMEOUT',\n\n /**\n * 服务器错误(5xx)\n */\n SERVER_ERROR = 'SERVER_ERROR',\n\n /**\n * 客户端错误(4xx)\n */\n CLIENT_ERROR = 'CLIENT_ERROR',\n\n /**\n * 请求被取消\n */\n REQUEST_ABORTED = 'REQUEST_ABORTED',\n\n /**\n * 响应验证失败\n */\n RESPONSE_VALIDATION_FAILED = 'RESPONSE_VALIDATION_FAILED',\n\n /**\n * 请求参数验证失败\n */\n REQUEST_VALIDATION_FAILED = 'REQUEST_VALIDATION_FAILED',\n}\n\n/**\n * 请求错误类\n */\nexport class RequestError extends Error {\n /**\n * 错误类型\n */\n type: RequestErrorType;\n\n /**\n * 错误代码\n */\n code: RequestErrorCode;\n\n /**\n * HTTP 状态码(如果有)\n */\n status?: number;\n\n /**\n * 原始错误\n */\n cause?: unknown;\n\n /**\n * 请求配置\n */\n request?: RequestOptions;\n\n /**\n * 响应数据(如果有)\n */\n response?: Response;\n\n /**\n * 错误上下文\n */\n context?: Record<string, unknown>;\n\n constructor(\n message: string,\n type: RequestErrorType,\n code: RequestErrorCode,\n options?: {\n status?: number;\n cause?: unknown;\n request?: RequestOptions;\n response?: Response;\n context?: Record<string, unknown>;\n }\n ) {\n super(message);\n this.name = 'RequestError';\n this.type = type;\n this.code = code;\n this.status = options?.status;\n this.cause = options?.cause;\n this.request = options?.request;\n this.response = options?.response;\n this.context = options?.context;\n }\n}\n\n/**\n * 请求上下文\n * \n * @template TRequest - 请求配置类型\n * @template TResponse - 响应类型\n * @template TMeta - 元数据类型\n */\nexport interface RequestContext<TRequest = RequestOptions, TResponse = Response, TMeta = Record<string, unknown>> {\n /**\n * 请求配置\n */\n request: TRequest;\n\n /**\n * 响应(如果已收到)\n */\n response?: TResponse;\n\n /**\n * 错误(如果发生)\n */\n error?: RequestError;\n\n /**\n * 上下文元数据(由插件注入)\n */\n meta: TMeta;\n\n /**\n * 请求开始时间\n */\n startTime: number;\n\n /**\n * 请求结束时间(如果已完成)\n */\n endTime?: number;\n\n /**\n * 请求耗时(毫秒)\n */\n duration?: number;\n\n /**\n * 重试次数\n */\n retryCount: number;\n\n /**\n * 是否已取消\n */\n cancelled: boolean;\n\n /**\n * 中止控制器\n */\n abortController?: AbortController;\n}\n\n/**\n * 适配器能力声明\n */\nexport interface AdapterCapabilities {\n /**\n * 是否支持取消请求\n */\n supportsAbort?: boolean;\n\n /**\n * 是否支持超时\n */\n supportsTimeout?: boolean;\n\n /**\n * 是否支持进度追踪\n */\n supportsProgress?: boolean;\n\n /**\n * 是否支持拦截器\n */\n supportsInterceptors?: boolean;\n}\n\n/**\n * 请求客户端配置\n */\nexport interface RequestClientConfig {\n /**\n * 基础 URL\n */\n baseURL?: string;\n\n /**\n * 默认请求头\n */\n defaultHeaders?: RequestHeaders;\n\n /**\n * 默认超时时间(毫秒)\n */\n defaultTimeout?: number;\n\n /**\n * 默认适配器(按需加载)\n * 可以是适配器名称字符串,或返回适配器的工厂函数\n */\n defaultAdapter?: string | (() => Promise<import('./adapter/RequestAdapter').RequestAdapter>);\n\n /**\n * 插件列表\n */\n plugins?: Array<import('./plugin/RequestPlugin').RequestPlugin>;\n\n /**\n * 是否启用开发模式\n */\n devMode?: boolean;\n}\n"],"names":["RequestErrorType","RequestErrorCode","RequestError","Error","message","type","code","options","status","cause","request","response","context","name"],"mappings":"AAAA;;CAEC,GAED;;CAEC;;;;;;;;;;;;;AAkOD;;CAEC,GACD,OAAO,IAAA,AAAKA,0CAAAA;IACV;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;WA5BSA;MA8BX;AAED;;CAEC,GACD,OAAO,IAAA,AAAKC,0CAAAA;IACV;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;IAGD;;GAEC;WAjCSA;MAmCX;AAED;;CAEC,GACD,OAAO,MAAMC,qBAAqBC;IAoChC,YACEC,OAAe,EACfC,IAAsB,EACtBC,IAAsB,EACtBC,OAMC,CACD;QACA,KAAK,CAACH,UA/CR;;GAEC,GACDC,uBAAAA,QAAAA,KAAAA,IAEA;;GAEC,GACDC,uBAAAA,QAAAA,KAAAA,IAEA;;GAEC,GACDE,uBAAAA,UAAAA,KAAAA,IAEA;;GAEC,GACDC,uBAAAA,SAAAA,KAAAA,IAEA;;GAEC,GACDC,uBAAAA,WAAAA,KAAAA,IAEA;;GAEC,GACDC,uBAAAA,YAAAA,KAAAA,IAEA;;GAEC,GACDC,uBAAAA,WAAAA,KAAAA;QAeE,IAAI,CAACC,IAAI,GAAG;QACZ,IAAI,CAACR,IAAI,GAAGA;QACZ,IAAI,CAACC,IAAI,GAAGA;QACZ,IAAI,CAACE,MAAM,GAAGD,SAASC;QACvB,IAAI,CAACC,KAAK,GAAGF,SAASE;QACtB,IAAI,CAACC,OAAO,GAAGH,SAASG;QACxB,IAAI,CAACC,QAAQ,GAAGJ,SAASI;QACzB,IAAI,CAACC,OAAO,GAAGL,SAASK;IAC1B;AACF"}
@@ -1,74 +0,0 @@
1
- /**
2
- * 请求队列管理器
3
- *
4
- * 用于管理待执行的请求队列,支持请求拦截、暂停、恢复等功能
5
- */
6
- import type { RequestOptions, Response } from '../types';
7
- /**
8
- * 请求队列管理器
9
- */
10
- declare class RequestQueueManager {
11
- private static instance;
12
- /**
13
- * 待执行的请求队列
14
- */
15
- private queue;
16
- /**
17
- * 队列状态
18
- */
19
- private state;
20
- /**
21
- * 当前正在执行的回调 Promise
22
- */
23
- private processingPromise;
24
- /**
25
- * 获取单例实例
26
- */
27
- static getInstance(): RequestQueueManager;
28
- /**
29
- * 检查队列是否处于暂停状态
30
- */
31
- isPaused(): boolean;
32
- /**
33
- * 暂停队列,后续请求会被放入队列
34
- */
35
- pause(): void;
36
- /**
37
- * 恢复队列,执行队列中的所有请求
38
- */
39
- resume(): Promise<void>;
40
- /**
41
- * 执行回调并等待完成,然后恢复队列
42
- *
43
- * @param callback - 回调函数
44
- */
45
- processAndResume(callback: () => Promise<void> | void): Promise<void>;
46
- /**
47
- * 将请求添加到队列
48
- *
49
- * @template TResponse - 响应数据类型
50
- * @param options - 请求配置
51
- * @param execute - 请求执行函数
52
- * @returns Promise 解析为响应对象
53
- */
54
- enqueue<TResponse = unknown>(options: RequestOptions<TResponse>, execute: () => Promise<Response<TResponse>>): Promise<Response<TResponse>>;
55
- /**
56
- * 获取队列长度
57
- */
58
- getQueueLength(): number;
59
- /**
60
- * 清空队列
61
- *
62
- * @param reason - 清空原因(用于错误信息)
63
- */
64
- clear(reason?: string): void;
65
- /**
66
- * 销毁管理器
67
- */
68
- destroy(): void;
69
- }
70
- /**
71
- * 获取请求队列管理器实例
72
- */
73
- export declare function getRequestQueueManager(): RequestQueueManager;
74
- export {};