@unieojs/unieo 0.0.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +661 -0
- package/dist/cjs/Route.d.ts +21 -0
- package/dist/cjs/Route.d.ts.map +1 -0
- package/dist/cjs/Route.js +62 -0
- package/dist/cjs/Route.js.map +1 -0
- package/dist/cjs/common/Enum.d.ts +158 -0
- package/dist/cjs/common/Enum.d.ts.map +1 -0
- package/dist/cjs/common/Enum.js +222 -0
- package/dist/cjs/common/Enum.js.map +1 -0
- package/dist/cjs/common/Error/Base.d.ts +18 -0
- package/dist/cjs/common/Error/Base.d.ts.map +1 -0
- package/dist/cjs/common/Error/Base.js +25 -0
- package/dist/cjs/common/Error/Base.js.map +1 -0
- package/dist/cjs/common/Error/index.d.ts +59 -0
- package/dist/cjs/common/Error/index.d.ts.map +1 -0
- package/dist/cjs/common/Error/index.js +312 -0
- package/dist/cjs/common/Error/index.js.map +1 -0
- package/dist/cjs/common/constants.d.ts +2 -0
- package/dist/cjs/common/constants.d.ts.map +1 -0
- package/dist/cjs/common/constants.js +5 -0
- package/dist/cjs/common/constants.js.map +1 -0
- package/dist/cjs/core/CommonRouteExecutor.d.ts +17 -0
- package/dist/cjs/core/CommonRouteExecutor.d.ts.map +1 -0
- package/dist/cjs/core/CommonRouteExecutor.js +43 -0
- package/dist/cjs/core/CommonRouteExecutor.js.map +1 -0
- package/dist/cjs/core/ERPerformance.d.ts +30 -0
- package/dist/cjs/core/ERPerformance.d.ts.map +1 -0
- package/dist/cjs/core/ERPerformance.js +77 -0
- package/dist/cjs/core/ERPerformance.js.map +1 -0
- package/dist/cjs/core/Fetch.d.ts +9 -0
- package/dist/cjs/core/Fetch.d.ts.map +1 -0
- package/dist/cjs/core/Fetch.js +76 -0
- package/dist/cjs/core/Fetch.js.map +1 -0
- package/dist/cjs/core/Match.d.ts +35 -0
- package/dist/cjs/core/Match.d.ts.map +1 -0
- package/dist/cjs/core/Match.js +158 -0
- package/dist/cjs/core/Match.js.map +1 -0
- package/dist/cjs/core/Redirect.d.ts +17 -0
- package/dist/cjs/core/Redirect.d.ts.map +1 -0
- package/dist/cjs/core/Redirect.js +30 -0
- package/dist/cjs/core/Redirect.js.map +1 -0
- package/dist/cjs/core/RequestRewrite.d.ts +31 -0
- package/dist/cjs/core/RequestRewrite.d.ts.map +1 -0
- package/dist/cjs/core/RequestRewrite.js +201 -0
- package/dist/cjs/core/RequestRewrite.js.map +1 -0
- package/dist/cjs/core/ResponseRewrite.d.ts +26 -0
- package/dist/cjs/core/ResponseRewrite.d.ts.map +1 -0
- package/dist/cjs/core/ResponseRewrite.js +55 -0
- package/dist/cjs/core/ResponseRewrite.js.map +1 -0
- package/dist/cjs/core/RouteConfig.d.ts +21 -0
- package/dist/cjs/core/RouteConfig.d.ts.map +1 -0
- package/dist/cjs/core/RouteConfig.js +3 -0
- package/dist/cjs/core/RouteConfig.js.map +1 -0
- package/dist/cjs/core/RouteContext.d.ts +55 -0
- package/dist/cjs/core/RouteContext.d.ts.map +1 -0
- package/dist/cjs/core/RouteContext.js +200 -0
- package/dist/cjs/core/RouteContext.js.map +1 -0
- package/dist/cjs/core/executor/BaseExecutor.d.ts +32 -0
- package/dist/cjs/core/executor/BaseExecutor.d.ts.map +1 -0
- package/dist/cjs/core/executor/BaseExecutor.js +14 -0
- package/dist/cjs/core/executor/BaseExecutor.js.map +1 -0
- package/dist/cjs/core/executor/Factory.d.ts +18 -0
- package/dist/cjs/core/executor/Factory.d.ts.map +1 -0
- package/dist/cjs/core/executor/Factory.js +55 -0
- package/dist/cjs/core/executor/Factory.js.map +1 -0
- package/dist/cjs/core/executor/RouteExecutor.d.ts +12 -0
- package/dist/cjs/core/executor/RouteExecutor.d.ts.map +1 -0
- package/dist/cjs/core/executor/RouteExecutor.js +25 -0
- package/dist/cjs/core/executor/RouteExecutor.js.map +1 -0
- package/dist/cjs/core/executor/impl/RedirectExecutor.d.ts +14 -0
- package/dist/cjs/core/executor/impl/RedirectExecutor.d.ts.map +1 -0
- package/dist/cjs/core/executor/impl/RedirectExecutor.js +88 -0
- package/dist/cjs/core/executor/impl/RedirectExecutor.js.map +1 -0
- package/dist/cjs/core/executor/impl/RequestRewriteExecutor.d.ts +23 -0
- package/dist/cjs/core/executor/impl/RequestRewriteExecutor.d.ts.map +1 -0
- package/dist/cjs/core/executor/impl/RequestRewriteExecutor.js +104 -0
- package/dist/cjs/core/executor/impl/RequestRewriteExecutor.js.map +1 -0
- package/dist/cjs/core/executor/impl/ResponseRewriteExecutor.d.ts +14 -0
- package/dist/cjs/core/executor/impl/ResponseRewriteExecutor.d.ts.map +1 -0
- package/dist/cjs/core/executor/impl/ResponseRewriteExecutor.js +94 -0
- package/dist/cjs/core/executor/impl/ResponseRewriteExecutor.js.map +1 -0
- package/dist/cjs/core/executor/index.d.ts +8 -0
- package/dist/cjs/core/executor/index.d.ts.map +1 -0
- package/dist/cjs/core/executor/index.js +16 -0
- package/dist/cjs/core/executor/index.js.map +1 -0
- package/dist/cjs/core/index.d.ts +10 -0
- package/dist/cjs/core/index.d.ts.map +1 -0
- package/dist/cjs/core/index.js +26 -0
- package/dist/cjs/core/index.js.map +1 -0
- package/dist/cjs/core/meta/BaseMeta.d.ts +20 -0
- package/dist/cjs/core/meta/BaseMeta.d.ts.map +1 -0
- package/dist/cjs/core/meta/BaseMeta.js +14 -0
- package/dist/cjs/core/meta/BaseMeta.js.map +1 -0
- package/dist/cjs/core/meta/Factory.d.ts +28 -0
- package/dist/cjs/core/meta/Factory.d.ts.map +1 -0
- package/dist/cjs/core/meta/Factory.js +63 -0
- package/dist/cjs/core/meta/Factory.js.map +1 -0
- package/dist/cjs/core/meta/enum.d.ts +6 -0
- package/dist/cjs/core/meta/enum.d.ts.map +1 -0
- package/dist/cjs/core/meta/enum.js +10 -0
- package/dist/cjs/core/meta/enum.js.map +1 -0
- package/dist/cjs/core/meta/impl/RedirectMeta.d.ts +18 -0
- package/dist/cjs/core/meta/impl/RedirectMeta.d.ts.map +1 -0
- package/dist/cjs/core/meta/impl/RedirectMeta.js +25 -0
- package/dist/cjs/core/meta/impl/RedirectMeta.js.map +1 -0
- package/dist/cjs/core/meta/impl/RequestRewriteMeta.d.ts +18 -0
- package/dist/cjs/core/meta/impl/RequestRewriteMeta.d.ts.map +1 -0
- package/dist/cjs/core/meta/impl/RequestRewriteMeta.js +22 -0
- package/dist/cjs/core/meta/impl/RequestRewriteMeta.js.map +1 -0
- package/dist/cjs/core/meta/impl/ResponseRewriteMeta.d.ts +18 -0
- package/dist/cjs/core/meta/impl/ResponseRewriteMeta.d.ts.map +1 -0
- package/dist/cjs/core/meta/impl/ResponseRewriteMeta.js +22 -0
- package/dist/cjs/core/meta/impl/ResponseRewriteMeta.js.map +1 -0
- package/dist/cjs/core/meta/index.d.ts +8 -0
- package/dist/cjs/core/meta/index.d.ts.map +1 -0
- package/dist/cjs/core/meta/index.js +16 -0
- package/dist/cjs/core/meta/index.js.map +1 -0
- package/dist/cjs/core/processor/BaseProcessor.d.ts +37 -0
- package/dist/cjs/core/processor/BaseProcessor.d.ts.map +1 -0
- package/dist/cjs/core/processor/BaseProcessor.js +28 -0
- package/dist/cjs/core/processor/BaseProcessor.js.map +1 -0
- package/dist/cjs/core/processor/Factory.d.ts +26 -0
- package/dist/cjs/core/processor/Factory.d.ts.map +1 -0
- package/dist/cjs/core/processor/Factory.js +70 -0
- package/dist/cjs/core/processor/Factory.js.map +1 -0
- package/dist/cjs/core/processor/GroupProcessor.d.ts +21 -0
- package/dist/cjs/core/processor/GroupProcessor.d.ts.map +1 -0
- package/dist/cjs/core/processor/GroupProcessor.js +23 -0
- package/dist/cjs/core/processor/GroupProcessor.js.map +1 -0
- package/dist/cjs/core/processor/RouteProcessor.d.ts +9 -0
- package/dist/cjs/core/processor/RouteProcessor.d.ts.map +1 -0
- package/dist/cjs/core/processor/RouteProcessor.js +10 -0
- package/dist/cjs/core/processor/RouteProcessor.js.map +1 -0
- package/dist/cjs/core/processor/SubProcessor.d.ts +25 -0
- package/dist/cjs/core/processor/SubProcessor.d.ts.map +1 -0
- package/dist/cjs/core/processor/SubProcessor.js +56 -0
- package/dist/cjs/core/processor/SubProcessor.js.map +1 -0
- package/dist/cjs/core/processor/index.d.ts +6 -0
- package/dist/cjs/core/processor/index.d.ts.map +1 -0
- package/dist/cjs/core/processor/index.js +22 -0
- package/dist/cjs/core/processor/index.js.map +1 -0
- package/dist/cjs/core/value/SourceProcessor.d.ts +47 -0
- package/dist/cjs/core/value/SourceProcessor.d.ts.map +1 -0
- package/dist/cjs/core/value/SourceProcessor.js +121 -0
- package/dist/cjs/core/value/SourceProcessor.js.map +1 -0
- package/dist/cjs/core/value/SourceProcessorManager.d.ts +7 -0
- package/dist/cjs/core/value/SourceProcessorManager.d.ts.map +1 -0
- package/dist/cjs/core/value/SourceProcessorManager.js +33 -0
- package/dist/cjs/core/value/SourceProcessorManager.js.map +1 -0
- package/dist/cjs/core/value/ValueProcessor.d.ts +25 -0
- package/dist/cjs/core/value/ValueProcessor.d.ts.map +1 -0
- package/dist/cjs/core/value/ValueProcessor.js +57 -0
- package/dist/cjs/core/value/ValueProcessor.js.map +1 -0
- package/dist/cjs/core/value/ValueProcessorManager.d.ts +8 -0
- package/dist/cjs/core/value/ValueProcessorManager.d.ts.map +1 -0
- package/dist/cjs/core/value/ValueProcessorManager.js +28 -0
- package/dist/cjs/core/value/ValueProcessorManager.js.map +1 -0
- package/dist/cjs/core/value/index.d.ts +35 -0
- package/dist/cjs/core/value/index.d.ts.map +1 -0
- package/dist/cjs/core/value/index.js +57 -0
- package/dist/cjs/core/value/index.js.map +1 -0
- package/dist/cjs/index.d.ts +4 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +20 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/middleware/DefaultFetch.d.ts +8 -0
- package/dist/cjs/middleware/DefaultFetch.d.ts.map +1 -0
- package/dist/cjs/middleware/DefaultFetch.js +36 -0
- package/dist/cjs/middleware/DefaultFetch.js.map +1 -0
- package/dist/cjs/middleware/ErrorFallback.d.ts +7 -0
- package/dist/cjs/middleware/ErrorFallback.d.ts.map +1 -0
- package/dist/cjs/middleware/ErrorFallback.js +30 -0
- package/dist/cjs/middleware/ErrorFallback.js.map +1 -0
- package/dist/cjs/middleware/index.d.ts +16 -0
- package/dist/cjs/middleware/index.d.ts.map +1 -0
- package/dist/cjs/middleware/index.js +119 -0
- package/dist/cjs/middleware/index.js.map +1 -0
- package/dist/cjs/middleware/types.d.ts +13 -0
- package/dist/cjs/middleware/types.d.ts.map +1 -0
- package/dist/cjs/middleware/types.js +3 -0
- package/dist/cjs/middleware/types.js.map +1 -0
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -0
- package/dist/cjs/util/Array.d.ts +3 -0
- package/dist/cjs/util/Array.d.ts.map +1 -0
- package/dist/cjs/util/Array.js +15 -0
- package/dist/cjs/util/Array.js.map +1 -0
- package/dist/cjs/util/Header.d.ts +5 -0
- package/dist/cjs/util/Header.d.ts.map +1 -0
- package/dist/cjs/util/Header.js +87 -0
- package/dist/cjs/util/Header.js.map +1 -0
- package/dist/cjs/util/LogUtil.d.ts +2 -0
- package/dist/cjs/util/LogUtil.d.ts.map +1 -0
- package/dist/cjs/util/LogUtil.js +10 -0
- package/dist/cjs/util/LogUtil.js.map +1 -0
- package/dist/cjs/util/PathRegexp.d.ts +12 -0
- package/dist/cjs/util/PathRegexp.d.ts.map +1 -0
- package/dist/cjs/util/PathRegexp.js +74 -0
- package/dist/cjs/util/PathRegexp.js.map +1 -0
- package/dist/cjs/util/PrefixLogger.d.ts +13 -0
- package/dist/cjs/util/PrefixLogger.d.ts.map +1 -0
- package/dist/cjs/util/PrefixLogger.js +38 -0
- package/dist/cjs/util/PrefixLogger.js.map +1 -0
- package/dist/cjs/util/RedirectHelper.d.ts +29 -0
- package/dist/cjs/util/RedirectHelper.d.ts.map +1 -0
- package/dist/cjs/util/RedirectHelper.js +140 -0
- package/dist/cjs/util/RedirectHelper.js.map +1 -0
- package/dist/cjs/util/Request.d.ts +11 -0
- package/dist/cjs/util/Request.d.ts.map +1 -0
- package/dist/cjs/util/Request.js +25 -0
- package/dist/cjs/util/Request.js.map +1 -0
- package/dist/cjs/util/Response.d.ts +12 -0
- package/dist/cjs/util/Response.d.ts.map +1 -0
- package/dist/cjs/util/Response.js +31 -0
- package/dist/cjs/util/Response.js.map +1 -0
- package/dist/cjs/util/Template.d.ts +2 -0
- package/dist/cjs/util/Template.d.ts.map +1 -0
- package/dist/cjs/util/Template.js +14 -0
- package/dist/cjs/util/Template.js.map +1 -0
- package/dist/cjs/util/Url.d.ts +19 -0
- package/dist/cjs/util/Url.d.ts.map +1 -0
- package/dist/cjs/util/Url.js +112 -0
- package/dist/cjs/util/Url.js.map +1 -0
- package/dist/esm/Route.d.ts +21 -0
- package/dist/esm/Route.d.ts.map +1 -0
- package/dist/esm/Route.js +58 -0
- package/dist/esm/Route.js.map +1 -0
- package/dist/esm/common/Enum.d.ts +158 -0
- package/dist/esm/common/Enum.d.ts.map +1 -0
- package/dist/esm/common/Enum.js +219 -0
- package/dist/esm/common/Enum.js.map +1 -0
- package/dist/esm/common/Error/Base.d.ts +18 -0
- package/dist/esm/common/Error/Base.d.ts.map +1 -0
- package/dist/esm/common/Error/Base.js +21 -0
- package/dist/esm/common/Error/Base.js.map +1 -0
- package/dist/esm/common/Error/index.d.ts +59 -0
- package/dist/esm/common/Error/index.d.ts.map +1 -0
- package/dist/esm/common/Error/index.js +294 -0
- package/dist/esm/common/Error/index.js.map +1 -0
- package/dist/esm/common/constants.d.ts +2 -0
- package/dist/esm/common/constants.d.ts.map +1 -0
- package/dist/esm/common/constants.js +2 -0
- package/dist/esm/common/constants.js.map +1 -0
- package/dist/esm/core/CommonRouteExecutor.d.ts +17 -0
- package/dist/esm/core/CommonRouteExecutor.d.ts.map +1 -0
- package/dist/esm/core/CommonRouteExecutor.js +39 -0
- package/dist/esm/core/CommonRouteExecutor.js.map +1 -0
- package/dist/esm/core/ERPerformance.d.ts +30 -0
- package/dist/esm/core/ERPerformance.d.ts.map +1 -0
- package/dist/esm/core/ERPerformance.js +72 -0
- package/dist/esm/core/ERPerformance.js.map +1 -0
- package/dist/esm/core/Fetch.d.ts +9 -0
- package/dist/esm/core/Fetch.d.ts.map +1 -0
- package/dist/esm/core/Fetch.js +72 -0
- package/dist/esm/core/Fetch.js.map +1 -0
- package/dist/esm/core/Match.d.ts +35 -0
- package/dist/esm/core/Match.d.ts.map +1 -0
- package/dist/esm/core/Match.js +154 -0
- package/dist/esm/core/Match.js.map +1 -0
- package/dist/esm/core/Redirect.d.ts +17 -0
- package/dist/esm/core/Redirect.d.ts.map +1 -0
- package/dist/esm/core/Redirect.js +26 -0
- package/dist/esm/core/Redirect.js.map +1 -0
- package/dist/esm/core/RequestRewrite.d.ts +31 -0
- package/dist/esm/core/RequestRewrite.d.ts.map +1 -0
- package/dist/esm/core/RequestRewrite.js +194 -0
- package/dist/esm/core/RequestRewrite.js.map +1 -0
- package/dist/esm/core/ResponseRewrite.d.ts +26 -0
- package/dist/esm/core/ResponseRewrite.d.ts.map +1 -0
- package/dist/esm/core/ResponseRewrite.js +51 -0
- package/dist/esm/core/ResponseRewrite.js.map +1 -0
- package/dist/esm/core/RouteConfig.d.ts +21 -0
- package/dist/esm/core/RouteConfig.d.ts.map +1 -0
- package/dist/esm/core/RouteConfig.js +2 -0
- package/dist/esm/core/RouteConfig.js.map +1 -0
- package/dist/esm/core/RouteContext.d.ts +55 -0
- package/dist/esm/core/RouteContext.d.ts.map +1 -0
- package/dist/esm/core/RouteContext.js +196 -0
- package/dist/esm/core/RouteContext.js.map +1 -0
- package/dist/esm/core/executor/BaseExecutor.d.ts +32 -0
- package/dist/esm/core/executor/BaseExecutor.d.ts.map +1 -0
- package/dist/esm/core/executor/BaseExecutor.js +10 -0
- package/dist/esm/core/executor/BaseExecutor.js.map +1 -0
- package/dist/esm/core/executor/Factory.d.ts +18 -0
- package/dist/esm/core/executor/Factory.d.ts.map +1 -0
- package/dist/esm/core/executor/Factory.js +51 -0
- package/dist/esm/core/executor/Factory.js.map +1 -0
- package/dist/esm/core/executor/RouteExecutor.d.ts +12 -0
- package/dist/esm/core/executor/RouteExecutor.d.ts.map +1 -0
- package/dist/esm/core/executor/RouteExecutor.js +21 -0
- package/dist/esm/core/executor/RouteExecutor.js.map +1 -0
- package/dist/esm/core/executor/impl/RedirectExecutor.d.ts +14 -0
- package/dist/esm/core/executor/impl/RedirectExecutor.d.ts.map +1 -0
- package/dist/esm/core/executor/impl/RedirectExecutor.js +84 -0
- package/dist/esm/core/executor/impl/RedirectExecutor.js.map +1 -0
- package/dist/esm/core/executor/impl/RequestRewriteExecutor.d.ts +23 -0
- package/dist/esm/core/executor/impl/RequestRewriteExecutor.d.ts.map +1 -0
- package/dist/esm/core/executor/impl/RequestRewriteExecutor.js +100 -0
- package/dist/esm/core/executor/impl/RequestRewriteExecutor.js.map +1 -0
- package/dist/esm/core/executor/impl/ResponseRewriteExecutor.d.ts +14 -0
- package/dist/esm/core/executor/impl/ResponseRewriteExecutor.d.ts.map +1 -0
- package/dist/esm/core/executor/impl/ResponseRewriteExecutor.js +90 -0
- package/dist/esm/core/executor/impl/ResponseRewriteExecutor.js.map +1 -0
- package/dist/esm/core/executor/index.d.ts +8 -0
- package/dist/esm/core/executor/index.d.ts.map +1 -0
- package/dist/esm/core/executor/index.js +7 -0
- package/dist/esm/core/executor/index.js.map +1 -0
- package/dist/esm/core/index.d.ts +10 -0
- package/dist/esm/core/index.d.ts.map +1 -0
- package/dist/esm/core/index.js +10 -0
- package/dist/esm/core/index.js.map +1 -0
- package/dist/esm/core/meta/BaseMeta.d.ts +20 -0
- package/dist/esm/core/meta/BaseMeta.d.ts.map +1 -0
- package/dist/esm/core/meta/BaseMeta.js +10 -0
- package/dist/esm/core/meta/BaseMeta.js.map +1 -0
- package/dist/esm/core/meta/Factory.d.ts +28 -0
- package/dist/esm/core/meta/Factory.d.ts.map +1 -0
- package/dist/esm/core/meta/Factory.js +59 -0
- package/dist/esm/core/meta/Factory.js.map +1 -0
- package/dist/esm/core/meta/enum.d.ts +6 -0
- package/dist/esm/core/meta/enum.d.ts.map +1 -0
- package/dist/esm/core/meta/enum.js +7 -0
- package/dist/esm/core/meta/enum.js.map +1 -0
- package/dist/esm/core/meta/impl/RedirectMeta.d.ts +18 -0
- package/dist/esm/core/meta/impl/RedirectMeta.d.ts.map +1 -0
- package/dist/esm/core/meta/impl/RedirectMeta.js +21 -0
- package/dist/esm/core/meta/impl/RedirectMeta.js.map +1 -0
- package/dist/esm/core/meta/impl/RequestRewriteMeta.d.ts +18 -0
- package/dist/esm/core/meta/impl/RequestRewriteMeta.d.ts.map +1 -0
- package/dist/esm/core/meta/impl/RequestRewriteMeta.js +18 -0
- package/dist/esm/core/meta/impl/RequestRewriteMeta.js.map +1 -0
- package/dist/esm/core/meta/impl/ResponseRewriteMeta.d.ts +18 -0
- package/dist/esm/core/meta/impl/ResponseRewriteMeta.d.ts.map +1 -0
- package/dist/esm/core/meta/impl/ResponseRewriteMeta.js +18 -0
- package/dist/esm/core/meta/impl/ResponseRewriteMeta.js.map +1 -0
- package/dist/esm/core/meta/index.d.ts +8 -0
- package/dist/esm/core/meta/index.d.ts.map +1 -0
- package/dist/esm/core/meta/index.js +7 -0
- package/dist/esm/core/meta/index.js.map +1 -0
- package/dist/esm/core/processor/BaseProcessor.d.ts +37 -0
- package/dist/esm/core/processor/BaseProcessor.d.ts.map +1 -0
- package/dist/esm/core/processor/BaseProcessor.js +24 -0
- package/dist/esm/core/processor/BaseProcessor.js.map +1 -0
- package/dist/esm/core/processor/Factory.d.ts +26 -0
- package/dist/esm/core/processor/Factory.d.ts.map +1 -0
- package/dist/esm/core/processor/Factory.js +66 -0
- package/dist/esm/core/processor/Factory.js.map +1 -0
- package/dist/esm/core/processor/GroupProcessor.d.ts +21 -0
- package/dist/esm/core/processor/GroupProcessor.d.ts.map +1 -0
- package/dist/esm/core/processor/GroupProcessor.js +19 -0
- package/dist/esm/core/processor/GroupProcessor.js.map +1 -0
- package/dist/esm/core/processor/RouteProcessor.d.ts +9 -0
- package/dist/esm/core/processor/RouteProcessor.d.ts.map +1 -0
- package/dist/esm/core/processor/RouteProcessor.js +6 -0
- package/dist/esm/core/processor/RouteProcessor.js.map +1 -0
- package/dist/esm/core/processor/SubProcessor.d.ts +25 -0
- package/dist/esm/core/processor/SubProcessor.d.ts.map +1 -0
- package/dist/esm/core/processor/SubProcessor.js +52 -0
- package/dist/esm/core/processor/SubProcessor.js.map +1 -0
- package/dist/esm/core/processor/index.d.ts +6 -0
- package/dist/esm/core/processor/index.d.ts.map +1 -0
- package/dist/esm/core/processor/index.js +6 -0
- package/dist/esm/core/processor/index.js.map +1 -0
- package/dist/esm/core/value/SourceProcessor.d.ts +47 -0
- package/dist/esm/core/value/SourceProcessor.d.ts.map +1 -0
- package/dist/esm/core/value/SourceProcessor.js +105 -0
- package/dist/esm/core/value/SourceProcessor.js.map +1 -0
- package/dist/esm/core/value/SourceProcessorManager.d.ts +7 -0
- package/dist/esm/core/value/SourceProcessorManager.d.ts.map +1 -0
- package/dist/esm/core/value/SourceProcessorManager.js +29 -0
- package/dist/esm/core/value/SourceProcessorManager.js.map +1 -0
- package/dist/esm/core/value/ValueProcessor.d.ts +25 -0
- package/dist/esm/core/value/ValueProcessor.d.ts.map +1 -0
- package/dist/esm/core/value/ValueProcessor.js +48 -0
- package/dist/esm/core/value/ValueProcessor.js.map +1 -0
- package/dist/esm/core/value/ValueProcessorManager.d.ts +8 -0
- package/dist/esm/core/value/ValueProcessorManager.d.ts.map +1 -0
- package/dist/esm/core/value/ValueProcessorManager.js +24 -0
- package/dist/esm/core/value/ValueProcessorManager.js.map +1 -0
- package/dist/esm/core/value/index.d.ts +35 -0
- package/dist/esm/core/value/index.d.ts.map +1 -0
- package/dist/esm/core/value/index.js +53 -0
- package/dist/esm/core/value/index.js.map +1 -0
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +4 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/middleware/DefaultFetch.d.ts +8 -0
- package/dist/esm/middleware/DefaultFetch.d.ts.map +1 -0
- package/dist/esm/middleware/DefaultFetch.js +34 -0
- package/dist/esm/middleware/DefaultFetch.js.map +1 -0
- package/dist/esm/middleware/ErrorFallback.d.ts +7 -0
- package/dist/esm/middleware/ErrorFallback.d.ts.map +1 -0
- package/dist/esm/middleware/ErrorFallback.js +28 -0
- package/dist/esm/middleware/ErrorFallback.js.map +1 -0
- package/dist/esm/middleware/index.d.ts +16 -0
- package/dist/esm/middleware/index.d.ts.map +1 -0
- package/dist/esm/middleware/index.js +112 -0
- package/dist/esm/middleware/index.js.map +1 -0
- package/dist/esm/middleware/types.d.ts +13 -0
- package/dist/esm/middleware/types.d.ts.map +1 -0
- package/dist/esm/middleware/types.js +2 -0
- package/dist/esm/middleware/types.js.map +1 -0
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -0
- package/dist/esm/util/Array.d.ts +3 -0
- package/dist/esm/util/Array.d.ts.map +1 -0
- package/dist/esm/util/Array.js +11 -0
- package/dist/esm/util/Array.js.map +1 -0
- package/dist/esm/util/Header.d.ts +5 -0
- package/dist/esm/util/Header.d.ts.map +1 -0
- package/dist/esm/util/Header.js +81 -0
- package/dist/esm/util/Header.js.map +1 -0
- package/dist/esm/util/LogUtil.d.ts +2 -0
- package/dist/esm/util/LogUtil.d.ts.map +1 -0
- package/dist/esm/util/LogUtil.js +7 -0
- package/dist/esm/util/LogUtil.js.map +1 -0
- package/dist/esm/util/PathRegexp.d.ts +12 -0
- package/dist/esm/util/PathRegexp.d.ts.map +1 -0
- package/dist/esm/util/PathRegexp.js +69 -0
- package/dist/esm/util/PathRegexp.js.map +1 -0
- package/dist/esm/util/PrefixLogger.d.ts +13 -0
- package/dist/esm/util/PrefixLogger.d.ts.map +1 -0
- package/dist/esm/util/PrefixLogger.js +34 -0
- package/dist/esm/util/PrefixLogger.js.map +1 -0
- package/dist/esm/util/RedirectHelper.d.ts +29 -0
- package/dist/esm/util/RedirectHelper.d.ts.map +1 -0
- package/dist/esm/util/RedirectHelper.js +136 -0
- package/dist/esm/util/RedirectHelper.js.map +1 -0
- package/dist/esm/util/Request.d.ts +11 -0
- package/dist/esm/util/Request.d.ts.map +1 -0
- package/dist/esm/util/Request.js +20 -0
- package/dist/esm/util/Request.js.map +1 -0
- package/dist/esm/util/Response.d.ts +12 -0
- package/dist/esm/util/Response.d.ts.map +1 -0
- package/dist/esm/util/Response.js +25 -0
- package/dist/esm/util/Response.js.map +1 -0
- package/dist/esm/util/Template.d.ts +2 -0
- package/dist/esm/util/Template.d.ts.map +1 -0
- package/dist/esm/util/Template.js +11 -0
- package/dist/esm/util/Template.js.map +1 -0
- package/dist/esm/util/Url.d.ts +19 -0
- package/dist/esm/util/Url.d.ts.map +1 -0
- package/dist/esm/util/Url.js +99 -0
- package/dist/esm/util/Url.js.map +1 -0
- package/package.json +76 -0
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { RouteStatus } from '../../common/Enum';
|
|
2
|
+
import { RouteProcessor } from '..';
|
|
3
|
+
import { PrefixLogger } from '../../util/PrefixLogger';
|
|
4
|
+
import { ErrorCode, genError } from '../../common/Error';
|
|
5
|
+
export class ProcessorFactory {
|
|
6
|
+
constructor(RouteHelper) {
|
|
7
|
+
this.groupProcessors = new Map();
|
|
8
|
+
this.subProcessors = new Map();
|
|
9
|
+
this.helper = RouteHelper;
|
|
10
|
+
}
|
|
11
|
+
registerGroupProcessor(type, creator) {
|
|
12
|
+
this.groupProcessors.set(type, creator);
|
|
13
|
+
}
|
|
14
|
+
registerSubProcessor(type, creator) {
|
|
15
|
+
this.subProcessors.set(type, creator);
|
|
16
|
+
}
|
|
17
|
+
createRouteProcessor(ctx, routeConfig) {
|
|
18
|
+
const groupProcessors = routeConfig.routes
|
|
19
|
+
?.filter(routeConfigItem => {
|
|
20
|
+
// Compatible with legacy configurations, only create non-OFFLINE routes
|
|
21
|
+
return routeConfigItem.status ? routeConfigItem.status !== RouteStatus.OFFLINE : true;
|
|
22
|
+
})
|
|
23
|
+
.map(groupRouteConfig => {
|
|
24
|
+
return this.createGroupProcessor(ctx, groupRouteConfig);
|
|
25
|
+
});
|
|
26
|
+
return new RouteProcessor({
|
|
27
|
+
groupProcessors,
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
createGroupProcessor(ctx, groupRoute) {
|
|
31
|
+
const creator = this.groupProcessors.get(groupRoute.processor);
|
|
32
|
+
if (!creator) {
|
|
33
|
+
throw genError(ErrorCode.GroupProcessorNotFoundError, `${groupRoute.processor}`);
|
|
34
|
+
}
|
|
35
|
+
const helper = this.wrapHelper(this.helper, {
|
|
36
|
+
loggerPrefix: `[group/${groupRoute.name}]`,
|
|
37
|
+
});
|
|
38
|
+
const subProcessors = groupRoute.routes
|
|
39
|
+
?.filter(routeConfigItem => {
|
|
40
|
+
// Compatible with legacy configurations, only create non-OFFLINE routes
|
|
41
|
+
const isOnline = routeConfigItem.status ? routeConfigItem.status !== RouteStatus.OFFLINE : true;
|
|
42
|
+
return isOnline;
|
|
43
|
+
})
|
|
44
|
+
.map(subRouteConfig => {
|
|
45
|
+
return this.createSubProcessor(ctx, subRouteConfig, helper);
|
|
46
|
+
});
|
|
47
|
+
return creator(ctx, groupRoute, subProcessors, helper);
|
|
48
|
+
}
|
|
49
|
+
createSubProcessor(ctx, subRoute, helper) {
|
|
50
|
+
const creator = this.subProcessors.get(subRoute.processor);
|
|
51
|
+
helper = this.wrapHelper(helper, {
|
|
52
|
+
loggerPrefix: `[sub/${subRoute.name}]`,
|
|
53
|
+
});
|
|
54
|
+
if (!creator) {
|
|
55
|
+
throw genError(ErrorCode.SubProcessorNotFoundError, `${subRoute.processor}`);
|
|
56
|
+
}
|
|
57
|
+
return creator(ctx, subRoute, helper);
|
|
58
|
+
}
|
|
59
|
+
wrapHelper(helper, options) {
|
|
60
|
+
const wrappedHelper = Object.create(helper);
|
|
61
|
+
const prefixLogger = new PrefixLogger(options.loggerPrefix, helper.logger);
|
|
62
|
+
Object.defineProperty(wrappedHelper, 'logger', { value: prefixLogger });
|
|
63
|
+
return wrappedHelper;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=Factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Factory.js","sourceRoot":"","sources":["../../../../src/core/processor/Factory.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,MAAM,IAAI,CAAC;AAEpC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAqBzD,MAAM,OAAO,gBAAgB;IAK3B,YAAY,WAAwB;QAJnB,oBAAe,GAAG,IAAI,GAAG,EAA6C,CAAC;QACvE,kBAAa,GAAG,IAAI,GAAG,EAAyC,CAAC;QAIhF,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC;IAC5B,CAAC;IAED,sBAAsB,CAAC,IAAwB,EAAE,OAA8B;QAC7E,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,oBAAoB,CAAC,IAAsB,EAAE,OAA4B;QACvE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACxC,CAAC;IAEM,oBAAoB,CACzB,GAAiB,EACjB,WAAwB;QAExB,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM;YACxC,EAAE,MAAM,CAAC,eAAe,CAAC,EAAE;YACzB,wEAAwE;YACxE,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,KAAK,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;QACxF,CAAC,CAAC;aACD,GAAG,CAAC,gBAAgB,CAAC,EAAE;YACtB,OAAO,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;QACL,OAAO,IAAI,cAAc,CAAC;YACxB,eAAe;SAChB,CAAC,CAAC;IACL,CAAC;IAEM,oBAAoB,CAAC,GAAiB,EAAE,UAAyB;QACtE,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,SAA+B,CAAC,CAAC;QACrF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,QAAQ,CAAC,SAAS,CAAC,2BAA2B,EAAE,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC;QACnF,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE;YAC1C,YAAY,EAAE,UAAU,UAAU,CAAC,IAAI,GAAG;SAC3C,CAAC,CAAC;QACH,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM;YACrC,EAAE,MAAM,CAAC,eAAe,CAAC,EAAE;YACzB,wEAAwE;YACxE,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,KAAK,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;YAChG,OAAO,QAAQ,CAAC;QAClB,CAAC,CAAC;aACD,GAAG,CAAC,cAAc,CAAC,EAAE;YACpB,OAAO,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;QAC9D,CAAC,CAAC,CAAC;QAEL,OAAO,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;IACzD,CAAC;IAEM,kBAAkB,CAAC,GAAiB,EAAE,QAAqB,EAAE,MAAmB;QACrF,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,SAA6B,CAAC,CAAC;QAC/E,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YAC/B,YAAY,EAAE,QAAQ,QAAQ,CAAC,IAAI,GAAG;SACvC,CAAC,CAAC;QACH,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,QAAQ,CAAC,SAAS,CAAC,yBAAyB,EAAE,GAAG,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;QAC/E,CAAC;QACD,OAAO,OAAO,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,UAAU,CACR,MAAmB,EACnB,OAEC;QAED,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAgB,CAAC;QAC3D,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,OAAO,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;QAC3E,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;QACxE,OAAO,aAAa,CAAC;IACvB,CAAC;CACF"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { RawProcessorData, RawRoute } from './BaseProcessor';
|
|
2
|
+
import { BaseProcessor } from './BaseProcessor';
|
|
3
|
+
import type { SubProcessor, SubRawRoute } from './SubProcessor';
|
|
4
|
+
import type { RouteContext } from '../RouteContext';
|
|
5
|
+
import type { RouteHelper } from '../../types';
|
|
6
|
+
import type { GroupProcessorType } from '../../common/Enum';
|
|
7
|
+
export interface GroupRawRoute extends RawRoute {
|
|
8
|
+
processor: GroupProcessorType.COMMON_GROUP_PROCESSOR;
|
|
9
|
+
routes: SubRawRoute[];
|
|
10
|
+
}
|
|
11
|
+
export interface RawGroupProcessorData extends RawProcessorData {
|
|
12
|
+
subProcessors: SubProcessor[];
|
|
13
|
+
route: GroupRawRoute;
|
|
14
|
+
}
|
|
15
|
+
export declare class GroupProcessor extends BaseProcessor {
|
|
16
|
+
readonly subProcessors: SubProcessor[];
|
|
17
|
+
constructor(data: RawGroupProcessorData);
|
|
18
|
+
static create(ctx: RouteContext, route: GroupRawRoute, subProcessors: SubProcessor[], helper: RouteHelper): GroupProcessor;
|
|
19
|
+
needProcess(type: string): boolean;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=GroupProcessor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GroupProcessor.d.ts","sourceRoot":"","sources":["../../../../src/core/processor/GroupProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,MAAM,WAAW,aAAc,SAAQ,QAAQ;IAC7C,SAAS,EAAE,kBAAkB,CAAC,sBAAsB,CAAC;IACrD,MAAM,EAAE,WAAW,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,qBAAsB,SAAQ,gBAAgB;IAC7D,aAAa,EAAE,YAAY,EAAE,CAAC;IAC9B,KAAK,EAAE,aAAa,CAAC;CACtB;AAED,qBAAa,cAAe,SAAQ,aAAa;IAC/C,SAAgB,aAAa,EAAE,YAAY,EAAE,CAAC;gBAElC,IAAI,EAAE,qBAAqB;WAKzB,MAAM,CAClB,GAAG,EAAE,YAAY,EACjB,KAAK,EAAE,aAAa,EACpB,aAAa,EAAE,YAAY,EAAE,EAC7B,MAAM,EAAE,WAAW;IAUd,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAG1C"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BaseProcessor } from './BaseProcessor';
|
|
2
|
+
export class GroupProcessor extends BaseProcessor {
|
|
3
|
+
constructor(data) {
|
|
4
|
+
super(data);
|
|
5
|
+
this.subProcessors = data.subProcessors;
|
|
6
|
+
}
|
|
7
|
+
static create(ctx, route, subProcessors, helper) {
|
|
8
|
+
return new GroupProcessor({
|
|
9
|
+
ctx,
|
|
10
|
+
route,
|
|
11
|
+
logger: helper.logger,
|
|
12
|
+
subProcessors,
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
needProcess(type) {
|
|
16
|
+
return this.subProcessors.some(sp => sp.needProcess(type));
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=GroupProcessor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GroupProcessor.js","sourceRoot":"","sources":["../../../../src/core/processor/GroupProcessor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAgBhD,MAAM,OAAO,cAAe,SAAQ,aAAa;IAG/C,YAAY,IAA2B;QACrC,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;IAC1C,CAAC;IAEM,MAAM,CAAC,MAAM,CAClB,GAAiB,EACjB,KAAoB,EACpB,aAA6B,EAC7B,MAAmB;QAEnB,OAAO,IAAI,cAAc,CAAC;YACxB,GAAG;YACH,KAAK;YACL,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,aAAa;SACd,CAAC,CAAC;IACL,CAAC;IAEM,WAAW,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7D,CAAC;CACF"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { GroupProcessor } from './GroupProcessor';
|
|
2
|
+
export interface RouteProcessorData {
|
|
3
|
+
groupProcessors: GroupProcessor[];
|
|
4
|
+
}
|
|
5
|
+
export declare class RouteProcessor {
|
|
6
|
+
readonly groupProcessors: GroupProcessor[];
|
|
7
|
+
constructor(options: RouteProcessorData);
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=RouteProcessor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RouteProcessor.d.ts","sourceRoot":"","sources":["../../../../src/core/processor/RouteProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,MAAM,WAAW,kBAAkB;IACjC,eAAe,EAAE,cAAc,EAAE,CAAC;CACnC;AAED,qBAAa,cAAc;IACzB,SAAgB,eAAe,EAAE,cAAc,EAAE,CAAC;gBAEtC,OAAO,EAAE,kBAAkB;CAGxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RouteProcessor.js","sourceRoot":"","sources":["../../../../src/core/processor/RouteProcessor.ts"],"names":[],"mappings":"AAMA,MAAM,OAAO,cAAc;IAGzB,YAAY,OAA2B;QACrC,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IACjD,CAAC;CACF"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { RawMeta, RawProcessorData, RawRoute } from './BaseProcessor';
|
|
2
|
+
import { BaseProcessor } from './BaseProcessor';
|
|
3
|
+
import type { BaseMeta } from '../meta';
|
|
4
|
+
import type { RouteContext } from '../RouteContext';
|
|
5
|
+
import type { RouteHelper } from '../../types';
|
|
6
|
+
import type { SubProcessorType } from '../../common/Enum';
|
|
7
|
+
export interface SubProcessorRawMeta extends RawMeta {
|
|
8
|
+
isBreakGroup?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface SubRawRoute extends RawRoute {
|
|
11
|
+
meta: SubProcessorRawMeta;
|
|
12
|
+
processor: SubProcessorType.COMMON_SUB_PROCESSOR;
|
|
13
|
+
}
|
|
14
|
+
export interface SubProcessorOptions extends RawProcessorData {
|
|
15
|
+
route: SubRawRoute;
|
|
16
|
+
}
|
|
17
|
+
export declare class SubProcessor extends BaseProcessor {
|
|
18
|
+
readonly breakGroup: boolean;
|
|
19
|
+
protected readonly metas: Map<string, BaseMeta<RouteContext>>;
|
|
20
|
+
constructor(options: SubProcessorOptions);
|
|
21
|
+
static create(ctx: RouteContext, route: SubRawRoute, helper: RouteHelper): SubProcessor;
|
|
22
|
+
process(type: string, data?: unknown): Promise<unknown>;
|
|
23
|
+
needProcess(type: string): boolean;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=SubProcessor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SubProcessor.d.ts","sourceRoot":"","sources":["../../../../src/core/processor/SubProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAExC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,MAAM,WAAW,mBAAoB,SAAQ,OAAO;IAClD,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,WAAY,SAAQ,QAAQ;IAC3C,IAAI,EAAE,mBAAmB,CAAC;IAC1B,SAAS,EAAE,gBAAgB,CAAC,oBAAoB,CAAA;CACjD;AAED,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,KAAK,EAAE,WAAW,CAAC;CACpB;AAED,qBAAa,YAAa,SAAQ,aAAa;IAC7C,SAAgB,UAAU,EAAE,OAAO,CAAC;IACpC,SAAS,CAAC,QAAQ,CAAC,KAAK,sCAA+B;gBAE3C,OAAO,EAAE,mBAAmB;WA2B1B,MAAM,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW;IAQlE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO;IAS1C,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAO1C"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { BaseProcessor } from './BaseProcessor';
|
|
2
|
+
import { MetaFactory } from '../meta';
|
|
3
|
+
export class SubProcessor extends BaseProcessor {
|
|
4
|
+
constructor(options) {
|
|
5
|
+
super(options);
|
|
6
|
+
this.metas = new Map();
|
|
7
|
+
const { route } = options;
|
|
8
|
+
this.breakGroup = !!route.meta.isBreakGroup;
|
|
9
|
+
// 使用 MetaFactory 创建 Meta 实例
|
|
10
|
+
Object.keys(this.rawMeta).forEach(type => {
|
|
11
|
+
if (!MetaFactory.isRegistered(type)) {
|
|
12
|
+
this.logger.warn(`Meta type ${type} is not registered in processor ${this.name}`);
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
if (this.metas.has(type)) {
|
|
16
|
+
this.logger.warn(`Meta type ${type} is already registered in processor ${this.name}`);
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
// 使用 MetaFactory 创建 Meta 实例
|
|
20
|
+
const meta = MetaFactory.create(type, {
|
|
21
|
+
logger: this.logger,
|
|
22
|
+
ctx: this.ctx,
|
|
23
|
+
data: this.rawMeta[type],
|
|
24
|
+
processor: this,
|
|
25
|
+
});
|
|
26
|
+
this.metas.set(type, meta);
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
static create(ctx, route, helper) {
|
|
30
|
+
return new SubProcessor({
|
|
31
|
+
ctx,
|
|
32
|
+
route,
|
|
33
|
+
logger: helper.logger,
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
async process(type, data) {
|
|
37
|
+
if (!this.metas.has(type)) {
|
|
38
|
+
this.logger.warn(`Meta type ${type} not found in processor ${this.name}`);
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
const meta = this.metas.get(type);
|
|
42
|
+
return await meta.process(data);
|
|
43
|
+
}
|
|
44
|
+
needProcess(type) {
|
|
45
|
+
if (!this.metas.has(type)) {
|
|
46
|
+
this.logger.warn(`Meta type ${type} not found in processor ${this.name}`);
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
return this.metas.get(type).needProcess();
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=SubProcessor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SubProcessor.js","sourceRoot":"","sources":["../../../../src/core/processor/SubProcessor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAkBtC,MAAM,OAAO,YAAa,SAAQ,aAAa;IAI7C,YAAY,OAA4B;QACtC,KAAK,CAAC,OAAO,CAAC,CAAC;QAHE,UAAK,GAAG,IAAI,GAAG,EAAoB,CAAC;QAIrD,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC;QAE5C,4BAA4B;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACvC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,mCAAmC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBAClF,OAAO;YACT,CAAC;YACD,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,uCAAuC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBACtF,OAAO;YACT,CAAC;YAED,4BAA4B;YAC5B,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE;gBACpC,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;gBACxB,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;YACH,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,GAAiB,EAAE,KAAkB,EAAE,MAAmB;QAC7E,OAAO,IAAI,YAAY,CAAC;YACtB,GAAG;YACH,KAAK;YACL,MAAM,EAAE,MAAM,CAAC,MAAM;SACtB,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,IAAY,EAAE,IAAc;QAC/C,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,2BAA2B,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAC1E,OAAO;QACT,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC;QACnC,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAEM,WAAW,CAAC,IAAY;QAC7B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,2BAA2B,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAC1E,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,WAAW,EAAE,CAAC;IAC7C,CAAC;CACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/processor/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/processor/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import type { RouteContext } from '../RouteContext';
|
|
2
|
+
import type { IValue } from '.';
|
|
3
|
+
import type { BaseProcessor } from '../processor/BaseProcessor';
|
|
4
|
+
export interface ISourceProcessor {
|
|
5
|
+
getSource(value: IValue, ctx: RouteContext, processor: BaseProcessor): Promise<unknown>;
|
|
6
|
+
}
|
|
7
|
+
export declare class LiteralSourceProcessor implements ISourceProcessor {
|
|
8
|
+
getSource({ source }: IValue): Promise<unknown>;
|
|
9
|
+
}
|
|
10
|
+
export declare class RequestHeaderSourceProcessor implements ISourceProcessor {
|
|
11
|
+
getSource({ source }: IValue, ctx: RouteContext): Promise<unknown>;
|
|
12
|
+
}
|
|
13
|
+
export declare class ResponseHeaderSourceProcessor implements ISourceProcessor {
|
|
14
|
+
getSource({ source }: IValue, ctx: RouteContext): Promise<unknown>;
|
|
15
|
+
}
|
|
16
|
+
export declare class ResponseStatusSourceProcessor implements ISourceProcessor {
|
|
17
|
+
getSource(_: IValue, ctx: RouteContext): Promise<unknown>;
|
|
18
|
+
}
|
|
19
|
+
export declare class CookieSourceProcessor implements ISourceProcessor {
|
|
20
|
+
getSource({ source }: IValue, ctx: RouteContext): Promise<unknown>;
|
|
21
|
+
}
|
|
22
|
+
export declare class UrlSourceProcessor implements ISourceProcessor {
|
|
23
|
+
getSource({ source }: IValue, ctx: RouteContext): Promise<unknown>;
|
|
24
|
+
}
|
|
25
|
+
export declare class OriginUrlSourceProcessor implements ISourceProcessor {
|
|
26
|
+
getSource({ source }: IValue, ctx: RouteContext): Promise<unknown>;
|
|
27
|
+
}
|
|
28
|
+
export declare class QuerySourceProcessor implements ISourceProcessor {
|
|
29
|
+
getSource({ source }: IValue, ctx: RouteContext): Promise<unknown>;
|
|
30
|
+
}
|
|
31
|
+
export declare class MethodSourceProcessor implements ISourceProcessor {
|
|
32
|
+
getSource(_: unknown, ctx: RouteContext): Promise<unknown>;
|
|
33
|
+
}
|
|
34
|
+
export declare class FetchSourceProcessor implements ISourceProcessor {
|
|
35
|
+
getSource({ source }: IValue): Promise<unknown>;
|
|
36
|
+
private fetch;
|
|
37
|
+
}
|
|
38
|
+
export declare class RouteArgsSourceProcessor implements ISourceProcessor {
|
|
39
|
+
getSource({ source }: IValue, ctx: RouteContext, processor: BaseProcessor): Promise<unknown>;
|
|
40
|
+
}
|
|
41
|
+
export declare class TemplateSourceProcessor implements ISourceProcessor {
|
|
42
|
+
getSource({ source }: IValue, ctx: RouteContext, processor: BaseProcessor): Promise<unknown>;
|
|
43
|
+
}
|
|
44
|
+
export declare class ValueObjectSourceProcessor implements ISourceProcessor {
|
|
45
|
+
getSource({ source }: IValue, ctx: RouteContext, processor: BaseProcessor): Promise<unknown>;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=SourceProcessor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SourceProcessor.d.ts","sourceRoot":"","sources":["../../../../src/core/value/SourceProcessor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD,OAAO,KAAK,EAAE,MAAM,EAAgB,MAAM,GAAG,CAAC;AAG9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACzF;AAED,qBAAa,sBAAuB,YAAW,gBAAgB;IACvD,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM;CAGnC;AAED,qBAAa,4BAA6B,YAAW,gBAAgB;IAC7D,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;CAGzE;AAED,qBAAa,6BAA8B,YAAW,gBAAgB;IAC9D,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;CAGzE;AAED,qBAAa,6BAA8B,YAAW,gBAAgB;IAC9D,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;CAGhE;AAED,qBAAa,qBAAsB,YAAW,gBAAgB;IACtD,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;CAGzE;AAED,qBAAa,kBAAmB,YAAW,gBAAgB;IACnD,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;CAGzE;AAED,qBAAa,wBAAyB,YAAW,gBAAgB;IACzD,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;CAGzE;AAED,qBAAa,oBAAqB,YAAW,gBAAgB;IACrD,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;CAGzE;AAED,qBAAa,qBAAsB,YAAW,gBAAgB;IACtD,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;CAGjE;AAED,qBAAa,oBAAqB,YAAW,gBAAgB;IACrD,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;YAIvC,KAAK;CAKpB;AAED,qBAAa,wBAAyB,YAAW,gBAAgB;IACzD,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;CAInG;AAcD,qBAAa,uBAAwB,YAAW,gBAAgB;IACxD,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;CAcnG;AAED,qBAAa,0BAA2B,YAAW,gBAAgB;IAC3D,SAAS,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;CAUnG"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { Value } from '.';
|
|
2
|
+
import { isObject, isString } from 'lodash';
|
|
3
|
+
// import { parseUA } from '../../../util/UserAgent';
|
|
4
|
+
import { esTemplate } from '../../util/Template';
|
|
5
|
+
export class LiteralSourceProcessor {
|
|
6
|
+
async getSource({ source }) {
|
|
7
|
+
return source;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
export class RequestHeaderSourceProcessor {
|
|
11
|
+
async getSource({ source }, ctx) {
|
|
12
|
+
return isString(source) ? ctx.getRequestHeaderValue(source) : null;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export class ResponseHeaderSourceProcessor {
|
|
16
|
+
async getSource({ source }, ctx) {
|
|
17
|
+
return isString(source) ? ctx.getResponseHeaderValue(source) : null;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
export class ResponseStatusSourceProcessor {
|
|
21
|
+
async getSource(_, ctx) {
|
|
22
|
+
return ctx.response?.status;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
export class CookieSourceProcessor {
|
|
26
|
+
async getSource({ source }, ctx) {
|
|
27
|
+
return isString(source) ? ctx.getCookieValue(source) : null;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
export class UrlSourceProcessor {
|
|
31
|
+
async getSource({ source }, ctx) {
|
|
32
|
+
return isString(source) ? ctx.getUrlValue(source) : null;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
export class OriginUrlSourceProcessor {
|
|
36
|
+
async getSource({ source }, ctx) {
|
|
37
|
+
return isString(source) ? ctx.getOriginUrlValue(source) : null;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
export class QuerySourceProcessor {
|
|
41
|
+
async getSource({ source }, ctx) {
|
|
42
|
+
return isString(source) ? ctx.getQueryValue(source) : null;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
export class MethodSourceProcessor {
|
|
46
|
+
async getSource(_, ctx) {
|
|
47
|
+
return ctx.request.method;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
export class FetchSourceProcessor {
|
|
51
|
+
async getSource({ source }) {
|
|
52
|
+
return this.fetch(source);
|
|
53
|
+
}
|
|
54
|
+
async fetch(url) {
|
|
55
|
+
return fetch(url, {
|
|
56
|
+
method: 'GET',
|
|
57
|
+
}).then(res => res.json());
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
export class RouteArgsSourceProcessor {
|
|
61
|
+
async getSource({ source }, ctx, processor) {
|
|
62
|
+
const arg = processor.args?.[source];
|
|
63
|
+
return arg ? new Value(arg, processor).get(ctx) : null;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
// export class UserAgentSourceProcessor implements ISourceProcessor {
|
|
67
|
+
// async getSource({ sourceType, source }: IValue, ctx: RouteContext): Promise<unknown> {
|
|
68
|
+
// const ua = ctx.getRequestHeaderValue('user-agent');
|
|
69
|
+
// if (!ua || !source || !isString(source)) {
|
|
70
|
+
// return null;
|
|
71
|
+
// }
|
|
72
|
+
//
|
|
73
|
+
// const uaDetail = parseUA(ua);
|
|
74
|
+
// return get(uaDetail, `${sourceType}.${source}`, null);
|
|
75
|
+
// }
|
|
76
|
+
// }
|
|
77
|
+
export class TemplateSourceProcessor {
|
|
78
|
+
async getSource({ source }, ctx, processor) {
|
|
79
|
+
if (!source || !isString(source)) {
|
|
80
|
+
return null;
|
|
81
|
+
}
|
|
82
|
+
const args = {};
|
|
83
|
+
for (const key in processor.args) {
|
|
84
|
+
args[key] = await new Value(processor.args[key], processor).get(ctx);
|
|
85
|
+
}
|
|
86
|
+
const data = {
|
|
87
|
+
ctx,
|
|
88
|
+
args,
|
|
89
|
+
};
|
|
90
|
+
return esTemplate(source, data);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
export class ValueObjectSourceProcessor {
|
|
94
|
+
async getSource({ source }, ctx, processor) {
|
|
95
|
+
if (isObject(source)) {
|
|
96
|
+
const valueObj = {};
|
|
97
|
+
await Promise.all(Object.keys(source).map(async (key) => {
|
|
98
|
+
valueObj[key] = await new Value(source[key], processor).get(ctx);
|
|
99
|
+
}));
|
|
100
|
+
return valueObj;
|
|
101
|
+
}
|
|
102
|
+
return null;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=SourceProcessor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SourceProcessor.js","sourceRoot":"","sources":["../../../../src/core/value/SourceProcessor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ISourceProcessor } from './SourceProcessor';
|
|
2
|
+
export declare class SourceProcessorManager {
|
|
3
|
+
static sourceProcessorMap: Map<string, ISourceProcessor>;
|
|
4
|
+
register(sourceType: string, processor: ISourceProcessor): void;
|
|
5
|
+
get(sourceType: string): ISourceProcessor | undefined;
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=SourceProcessorManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SourceProcessorManager.d.ts","sourceRoot":"","sources":["../../../../src/core/value/SourceProcessorManager.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,qBAAa,sBAAsB;IACjC,MAAM,CAAC,kBAAkB,gCActB;IAEH,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,gBAAgB;IAOxD,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;CAGtD"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { ValueSourceType } from '../../common/Enum';
|
|
2
|
+
import { CookieSourceProcessor, FetchSourceProcessor, LiteralSourceProcessor, MethodSourceProcessor, OriginUrlSourceProcessor, QuerySourceProcessor, RequestHeaderSourceProcessor, ResponseHeaderSourceProcessor, ResponseStatusSourceProcessor, RouteArgsSourceProcessor, TemplateSourceProcessor, UrlSourceProcessor, ValueObjectSourceProcessor, } from './SourceProcessor';
|
|
3
|
+
export class SourceProcessorManager {
|
|
4
|
+
register(sourceType, processor) {
|
|
5
|
+
if (SourceProcessorManager.sourceProcessorMap.has(sourceType)) {
|
|
6
|
+
throw new Error(`Source processor ${sourceType} already exists`);
|
|
7
|
+
}
|
|
8
|
+
SourceProcessorManager.sourceProcessorMap.set(sourceType, processor);
|
|
9
|
+
}
|
|
10
|
+
get(sourceType) {
|
|
11
|
+
return SourceProcessorManager.sourceProcessorMap.get(sourceType);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
SourceProcessorManager.sourceProcessorMap = new Map([
|
|
15
|
+
[ValueSourceType.LITERAL, new LiteralSourceProcessor()],
|
|
16
|
+
[ValueSourceType.REQUEST_HEADER, new RequestHeaderSourceProcessor()],
|
|
17
|
+
[ValueSourceType.RESPONSE_HEADER, new ResponseHeaderSourceProcessor()],
|
|
18
|
+
[ValueSourceType.RESPONSE_STATUS, new ResponseStatusSourceProcessor()],
|
|
19
|
+
[ValueSourceType.COOKIE, new CookieSourceProcessor()],
|
|
20
|
+
[ValueSourceType.URL, new UrlSourceProcessor()],
|
|
21
|
+
[ValueSourceType.ORIGIN_URL, new OriginUrlSourceProcessor()],
|
|
22
|
+
[ValueSourceType.QUERY, new QuerySourceProcessor()],
|
|
23
|
+
[ValueSourceType.METHOD, new MethodSourceProcessor()],
|
|
24
|
+
[ValueSourceType.FETCH, new FetchSourceProcessor()],
|
|
25
|
+
[ValueSourceType.ROUTE_ARGS, new RouteArgsSourceProcessor()],
|
|
26
|
+
[ValueSourceType.STRING_TEMPLATE, new TemplateSourceProcessor()],
|
|
27
|
+
[ValueSourceType.VALUE_OBJECT, new ValueObjectSourceProcessor()],
|
|
28
|
+
]);
|
|
29
|
+
//# sourceMappingURL=SourceProcessorManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SourceProcessorManager.js","sourceRoot":"","sources":["../../../../src/core/value/SourceProcessorManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,sBAAsB,EACtB,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,4BAA4B,EAC5B,6BAA6B,EAC7B,6BAA6B,EAC7B,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAG3B,MAAM,OAAO,sBAAsB;IAiBjC,QAAQ,CAAC,UAAkB,EAAE,SAA2B;QACtD,IAAI,sBAAsB,CAAC,kBAAkB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9D,MAAM,IAAI,KAAK,CAAC,oBAAoB,UAAU,iBAAiB,CAAC,CAAC;QACnE,CAAC;QACD,sBAAsB,CAAC,kBAAkB,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACvE,CAAC;IAED,GAAG,CAAC,UAAkB;QACpB,OAAO,sBAAsB,CAAC,kBAAkB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACnE,CAAC;;AAzBM,yCAAkB,GAAG,IAAI,GAAG,CAA2B;IAC5D,CAAE,eAAe,CAAC,OAAO,EAAE,IAAI,sBAAsB,EAAE,CAAE;IACzD,CAAE,eAAe,CAAC,cAAc,EAAE,IAAI,4BAA4B,EAAE,CAAE;IACtE,CAAE,eAAe,CAAC,eAAe,EAAE,IAAI,6BAA6B,EAAE,CAAE;IACxE,CAAE,eAAe,CAAC,eAAe,EAAE,IAAI,6BAA6B,EAAE,CAAE;IACxE,CAAE,eAAe,CAAC,MAAM,EAAE,IAAI,qBAAqB,EAAE,CAAE;IACvD,CAAE,eAAe,CAAC,GAAG,EAAE,IAAI,kBAAkB,EAAE,CAAE;IACjD,CAAE,eAAe,CAAC,UAAU,EAAE,IAAI,wBAAwB,EAAE,CAAE;IAC9D,CAAE,eAAe,CAAC,KAAK,EAAE,IAAI,oBAAoB,EAAE,CAAE;IACrD,CAAE,eAAe,CAAC,MAAM,EAAE,IAAI,qBAAqB,EAAE,CAAE;IACvD,CAAE,eAAe,CAAC,KAAK,EAAE,IAAI,oBAAoB,EAAE,CAAE;IACrD,CAAE,eAAe,CAAC,UAAU,EAAE,IAAI,wBAAwB,EAAE,CAAE;IAC9D,CAAE,eAAe,CAAC,eAAe,EAAE,IAAI,uBAAuB,EAAE,CAAE;IAClE,CAAE,eAAe,CAAC,YAAY,EAAE,IAAI,0BAA0B,EAAE,CAAE;CACnE,CAAC,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { RouteContext } from '../RouteContext';
|
|
2
|
+
import type { RawMatch } from '../Match';
|
|
3
|
+
import type { BaseProcessor } from '../processor/BaseProcessor';
|
|
4
|
+
export interface IValueProcessor {
|
|
5
|
+
getValue(value: unknown, ctx: RouteContext, processor: BaseProcessor): Promise<unknown>;
|
|
6
|
+
}
|
|
7
|
+
export declare class JsonValueProcessor implements IValueProcessor {
|
|
8
|
+
getValue<T extends object>(value: unknown): Promise<T | null>;
|
|
9
|
+
}
|
|
10
|
+
export declare class StringValueProcessor implements IValueProcessor {
|
|
11
|
+
getValue(value: unknown): Promise<string | null>;
|
|
12
|
+
}
|
|
13
|
+
export declare class NumberValueProcessor implements IValueProcessor {
|
|
14
|
+
getValue(value: unknown): Promise<number | null>;
|
|
15
|
+
}
|
|
16
|
+
export declare class IntegerValueProcessor implements IValueProcessor {
|
|
17
|
+
getValue(value: unknown): Promise<number>;
|
|
18
|
+
}
|
|
19
|
+
export declare class BooleanValueProcessor implements IValueProcessor {
|
|
20
|
+
getValue(value: unknown): Promise<boolean>;
|
|
21
|
+
}
|
|
22
|
+
export declare class MatchValueProcessor implements IValueProcessor {
|
|
23
|
+
getValue(value: RawMatch, ctx: RouteContext, processor: BaseProcessor): Promise<boolean>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=ValueProcessor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ValueProcessor.d.ts","sourceRoot":"","sources":["../../../../src/core/value/ValueProcessor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACzF;AAED,qBAAa,kBAAmB,YAAW,eAAe;IAClD,QAAQ,CAAC,CAAC,SAAS,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;CASpE;AAED,qBAAa,oBAAqB,YAAW,eAAe;IACpD,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAKvD;AAED,qBAAa,oBAAqB,YAAW,eAAe;IACpD,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAIvD;AAED,qBAAa,qBAAsB,YAAW,eAAe;IACrD,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;CAGhD;AAED,qBAAa,qBAAsB,YAAW,eAAe;IACrD,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;CAGjD;AAED,qBAAa,mBAAoB,YAAW,eAAe;IACnD,QAAQ,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,GAAG,OAAO,CAAC,OAAO,CAAC;CAQ/F"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { Match } from '../Match';
|
|
2
|
+
import { isNil, isObject, isString } from 'lodash';
|
|
3
|
+
export class JsonValueProcessor {
|
|
4
|
+
async getValue(value) {
|
|
5
|
+
try {
|
|
6
|
+
return isObject(value) ? value : JSON.parse(value);
|
|
7
|
+
}
|
|
8
|
+
catch (err) {
|
|
9
|
+
// Error processing value, log error and return null
|
|
10
|
+
console.error('value processing failed:', err);
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export class StringValueProcessor {
|
|
16
|
+
async getValue(value) {
|
|
17
|
+
return !isNil(value)
|
|
18
|
+
? isString(value) ? value : JSON.stringify(value)
|
|
19
|
+
: null;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
export class NumberValueProcessor {
|
|
23
|
+
async getValue(value) {
|
|
24
|
+
const res = Number(value);
|
|
25
|
+
return isNaN(res) ? null : res;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
export class IntegerValueProcessor {
|
|
29
|
+
async getValue(value) {
|
|
30
|
+
return parseInt(value, 10);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
export class BooleanValueProcessor {
|
|
34
|
+
async getValue(value) {
|
|
35
|
+
return Boolean(value);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
export class MatchValueProcessor {
|
|
39
|
+
async getValue(value, ctx, processor) {
|
|
40
|
+
// 如果 value 为空则直接返回 true
|
|
41
|
+
if (!value) {
|
|
42
|
+
return true;
|
|
43
|
+
}
|
|
44
|
+
const match = new Match(value, processor);
|
|
45
|
+
return match.match(ctx, ctx.logger);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=ValueProcessor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ValueProcessor.js","sourceRoot":"","sources":["../../../../src/core/value/ValueProcessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AASnD,MAAM,OAAO,kBAAkB;IAC7B,KAAK,CAAC,QAAQ,CAAmB,KAAc;QAC7C,IAAI,CAAC;YACH,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,KAAe,CAAM,CAAC;QACzE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,oDAAoD;YACpD,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;YAC/C,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;CACF;AAED,MAAM,OAAO,oBAAoB;IAC/B,KAAK,CAAC,QAAQ,CAAC,KAAc;QAC3B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;YAClB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YACjD,CAAC,CAAC,IAAI,CAAC;IACX,CAAC;CACF;AAED,MAAM,OAAO,oBAAoB;IAC/B,KAAK,CAAC,QAAQ,CAAC,KAAc;QAC3B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC1B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IACjC,CAAC;CACF;AAED,MAAM,OAAO,qBAAqB;IAChC,KAAK,CAAC,QAAQ,CAAC,KAAc;QAC3B,OAAO,QAAQ,CAAC,KAAe,EAAE,EAAE,CAAC,CAAC;IACvC,CAAC;CACF;AAED,MAAM,OAAO,qBAAqB;IAChC,KAAK,CAAC,QAAQ,CAAC,KAAc;QAC3B,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;CACF;AAED,MAAM,OAAO,mBAAmB;IAC9B,KAAK,CAAC,QAAQ,CAAC,KAAe,EAAE,GAAiB,EAAE,SAAwB;QACzE,wBAAwB;QACxB,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC1C,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;CACF"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ValueType } from '../../common/Enum';
|
|
2
|
+
import type { IValueProcessor } from './ValueProcessor';
|
|
3
|
+
export declare class ValueProcessorManager {
|
|
4
|
+
static valueProcessorMap: Map<ValueType, IValueProcessor>;
|
|
5
|
+
register(valueType: ValueType, processor: IValueProcessor): void;
|
|
6
|
+
get(valueType: ValueType): IValueProcessor | undefined;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=ValueProcessorManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ValueProcessorManager.d.ts","sourceRoot":"","sources":["../../../../src/core/value/ValueProcessorManager.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAIxD,qBAAa,qBAAqB;IAChC,MAAM,CAAC,iBAAiB,kCAQrB;IAEH,QAAQ,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,eAAe;IAOzD,GAAG,CAAC,SAAS,EAAE,SAAS,GAAG,eAAe,GAAG,SAAS;CAGvD"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { BooleanValueProcessor, IntegerValueProcessor, JsonValueProcessor, MatchValueProcessor, NumberValueProcessor, StringValueProcessor, } from './ValueProcessor';
|
|
2
|
+
import { ValueType } from '../../common/Enum';
|
|
3
|
+
const stringValueProcessor = new StringValueProcessor();
|
|
4
|
+
export class ValueProcessorManager {
|
|
5
|
+
register(valueType, processor) {
|
|
6
|
+
if (ValueProcessorManager.valueProcessorMap.has(valueType)) {
|
|
7
|
+
throw new Error(`ValueProcessorManager: valueType ${valueType} already exists`);
|
|
8
|
+
}
|
|
9
|
+
ValueProcessorManager.valueProcessorMap.set(valueType, processor);
|
|
10
|
+
}
|
|
11
|
+
get(valueType) {
|
|
12
|
+
return ValueProcessorManager.valueProcessorMap.get(valueType);
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
ValueProcessorManager.valueProcessorMap = new Map([
|
|
16
|
+
[ValueType.JSON, new JsonValueProcessor()],
|
|
17
|
+
[ValueType.STRING, stringValueProcessor],
|
|
18
|
+
[ValueType.VERSION_STRING, stringValueProcessor],
|
|
19
|
+
[ValueType.NUMBER, new NumberValueProcessor()],
|
|
20
|
+
[ValueType.INTEGER, new IntegerValueProcessor()],
|
|
21
|
+
[ValueType.BOOLEAN, new BooleanValueProcessor()],
|
|
22
|
+
[ValueType.MATCH, new MatchValueProcessor()],
|
|
23
|
+
]);
|
|
24
|
+
//# sourceMappingURL=ValueProcessorManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ValueProcessorManager.js","sourceRoot":"","sources":["../../../../src/core/value/ValueProcessorManager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,MAAM,oBAAoB,GAAG,IAAI,oBAAoB,EAAE,CAAC;AAExD,MAAM,OAAO,qBAAqB;IAWhC,QAAQ,CAAC,SAAoB,EAAE,SAA0B;QACvD,IAAI,qBAAqB,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CAAC,oCAAoC,SAAS,iBAAiB,CAAC,CAAC;QAClF,CAAC;QACD,qBAAqB,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACpE,CAAC;IAED,GAAG,CAAC,SAAoB;QACtB,OAAO,qBAAqB,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC;;AAnBM,uCAAiB,GAAG,IAAI,GAAG,CAA6B;IAC7D,CAAE,SAAS,CAAC,IAAI,EAAE,IAAI,kBAAkB,EAAE,CAAE;IAC5C,CAAE,SAAS,CAAC,MAAM,EAAE,oBAAoB,CAAE;IAC1C,CAAE,SAAS,CAAC,cAAc,EAAE,oBAAoB,CAAE;IAClD,CAAE,SAAS,CAAC,MAAM,EAAE,IAAI,oBAAoB,EAAE,CAAE;IAChD,CAAE,SAAS,CAAC,OAAO,EAAE,IAAI,qBAAqB,EAAE,CAAE;IAClD,CAAE,SAAS,CAAC,OAAO,EAAE,IAAI,qBAAqB,EAAE,CAAE;IAClD,CAAE,SAAS,CAAC,KAAK,EAAE,IAAI,mBAAmB,EAAE,CAAE;CAC/C,CAAC,CAAC"}
|