@pangza/express 0.0.0-stage → 1.0.2
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/Application/callbackArgs.d.ts +5 -0
- package/Application/callbackArgs.d.ts.map +1 -0
- package/Application/callbackArgs.js +98 -0
- package/Application/callbackArgs.js.map +1 -0
- package/Application/decorators.d.ts +29 -0
- package/Application/decorators.d.ts.map +1 -0
- package/Application/decorators.js +181 -0
- package/Application/decorators.js.map +1 -0
- package/Application/index.d.ts +58 -0
- package/Application/index.d.ts.map +1 -0
- package/Application/index.js +573 -0
- package/Application/index.js.map +1 -0
- package/Application/interceptors.d.ts +27 -0
- package/Application/interceptors.d.ts.map +1 -0
- package/Application/interceptors.js +58 -0
- package/Application/interceptors.js.map +1 -0
- package/Application/lifecycle.d.ts +8 -0
- package/Application/lifecycle.d.ts.map +1 -0
- package/Application/lifecycle.js +96 -0
- package/Application/lifecycle.js.map +1 -0
- package/Application/metadata.d.ts +32 -0
- package/Application/metadata.d.ts.map +1 -0
- package/Application/metadata.js +230 -0
- package/Application/metadata.js.map +1 -0
- package/Application/processGuards.d.ts +2 -0
- package/Application/processGuards.d.ts.map +1 -0
- package/Application/processGuards.js +18 -0
- package/Application/processGuards.js.map +1 -0
- package/Application/types.d.ts +42 -0
- package/Application/types.d.ts.map +1 -0
- package/Application/types.js +13 -0
- package/Application/types.js.map +1 -0
- package/Application/warmup.d.ts +2 -0
- package/Application/warmup.d.ts.map +1 -0
- package/Application/warmup.js +78 -0
- package/Application/warmup.js.map +1 -0
- package/Auth/AuthUtil.d.ts +36 -0
- package/Auth/AuthUtil.d.ts.map +1 -0
- package/Auth/AuthUtil.js +305 -0
- package/Auth/AuthUtil.js.map +1 -0
- package/Auth/context.d.ts +5 -0
- package/Auth/context.d.ts.map +1 -0
- package/Auth/context.js +10 -0
- package/Auth/context.js.map +1 -0
- package/Auth/errors.d.ts +15 -0
- package/Auth/errors.d.ts.map +1 -0
- package/Auth/errors.js +34 -0
- package/Auth/errors.js.map +1 -0
- package/Auth/flag.d.ts +2 -0
- package/Auth/flag.d.ts.map +1 -0
- package/Auth/flag.js +5 -0
- package/Auth/flag.js.map +1 -0
- package/Auth/index.d.ts +11 -0
- package/Auth/index.d.ts.map +1 -0
- package/Auth/index.js +128 -0
- package/Auth/index.js.map +1 -0
- package/Auth/store.d.ts +47 -0
- package/Auth/store.d.ts.map +1 -0
- package/Auth/store.js +151 -0
- package/Auth/store.js.map +1 -0
- package/Auth/token.d.ts +10 -0
- package/Auth/token.d.ts.map +1 -0
- package/Auth/token.js +74 -0
- package/Auth/token.js.map +1 -0
- package/Auth/types.d.ts +76 -0
- package/Auth/types.d.ts.map +1 -0
- package/Auth/types.js +3 -0
- package/Auth/types.js.map +1 -0
- package/Exception/decorators.d.ts +4 -0
- package/Exception/decorators.d.ts.map +1 -0
- package/Exception/decorators.js +40 -0
- package/Exception/decorators.js.map +1 -0
- package/Exception/handler.d.ts +3 -0
- package/Exception/handler.d.ts.map +1 -0
- package/Exception/handler.js +96 -0
- package/Exception/handler.js.map +1 -0
- package/Exception/index.d.ts +9 -0
- package/Exception/index.d.ts.map +1 -0
- package/Exception/index.js +34 -0
- package/Exception/index.js.map +1 -0
- package/Exception/registry.d.ts +6 -0
- package/Exception/registry.d.ts.map +1 -0
- package/Exception/registry.js +60 -0
- package/Exception/registry.js.map +1 -0
- package/Exception/types.d.ts +27 -0
- package/Exception/types.d.ts.map +1 -0
- package/Exception/types.js +15 -0
- package/Exception/types.js.map +1 -0
- package/Json/ObjectMapper.d.ts +13 -0
- package/Json/ObjectMapper.d.ts.map +1 -0
- package/Json/ObjectMapper.js +184 -0
- package/Json/ObjectMapper.js.map +1 -0
- package/Json/beanKeys.d.ts +3 -0
- package/Json/beanKeys.d.ts.map +1 -0
- package/Json/beanKeys.js +29 -0
- package/Json/beanKeys.js.map +1 -0
- package/Json/convert.d.ts +11 -0
- package/Json/convert.d.ts.map +1 -0
- package/Json/convert.js +89 -0
- package/Json/convert.js.map +1 -0
- package/Json/decorators.d.ts +15 -0
- package/Json/decorators.d.ts.map +1 -0
- package/Json/decorators.js +80 -0
- package/Json/decorators.js.map +1 -0
- package/Json/index.d.ts +13 -0
- package/Json/index.d.ts.map +1 -0
- package/Json/index.js +39 -0
- package/Json/index.js.map +1 -0
- package/Json/types.d.ts +27 -0
- package/Json/types.d.ts.map +1 -0
- package/Json/types.js +11 -0
- package/Json/types.js.map +1 -0
- package/Log/decorators.d.ts +3 -0
- package/Log/decorators.d.ts.map +1 -0
- package/Log/decorators.js +10 -0
- package/Log/decorators.js.map +1 -0
- package/Log/flag.d.ts +2 -0
- package/Log/flag.d.ts.map +1 -0
- package/Log/flag.js +5 -0
- package/Log/flag.js.map +1 -0
- package/Log/index.d.ts +9 -0
- package/Log/index.d.ts.map +1 -0
- package/Log/index.js +33 -0
- package/Log/index.js.map +1 -0
- package/Log/ip.d.ts +14 -0
- package/Log/ip.d.ts.map +1 -0
- package/Log/ip.js +125 -0
- package/Log/ip.js.map +1 -0
- package/Log/recorder.d.ts +18 -0
- package/Log/recorder.d.ts.map +1 -0
- package/Log/recorder.js +144 -0
- package/Log/recorder.js.map +1 -0
- package/Log/types.d.ts +53 -0
- package/Log/types.d.ts.map +1 -0
- package/Log/types.js +21 -0
- package/Log/types.js.map +1 -0
- package/Logger/index.d.ts +18 -0
- package/Logger/index.d.ts.map +1 -0
- package/Logger/index.js +150 -0
- package/Logger/index.js.map +1 -0
- package/Logger/types.d.ts +13 -0
- package/Logger/types.d.ts.map +1 -0
- package/Logger/types.js +3 -0
- package/Logger/types.js.map +1 -0
- package/ORM/BaseMapper.d.ts +54 -0
- package/ORM/BaseMapper.d.ts.map +1 -0
- package/ORM/BaseMapper.js +593 -0
- package/ORM/BaseMapper.js.map +1 -0
- package/ORM/DataSource.d.ts +47 -0
- package/ORM/DataSource.d.ts.map +1 -0
- package/ORM/DataSource.js +336 -0
- package/ORM/DataSource.js.map +1 -0
- package/ORM/Db.d.ts +43 -0
- package/ORM/Db.d.ts.map +1 -0
- package/ORM/Db.js +198 -0
- package/ORM/Db.js.map +1 -0
- package/ORM/IdType.d.ts +10 -0
- package/ORM/IdType.d.ts.map +1 -0
- package/ORM/IdType.js +22 -0
- package/ORM/IdType.js.map +1 -0
- package/ORM/QueryWrapper.d.ts +58 -0
- package/ORM/QueryWrapper.d.ts.map +1 -0
- package/ORM/QueryWrapper.js +289 -0
- package/ORM/QueryWrapper.js.map +1 -0
- package/ORM/config.d.ts +6 -0
- package/ORM/config.d.ts.map +1 -0
- package/ORM/config.js +70 -0
- package/ORM/config.js.map +1 -0
- package/ORM/dialect.d.ts +24 -0
- package/ORM/dialect.d.ts.map +1 -0
- package/ORM/dialect.js +169 -0
- package/ORM/dialect.js.map +1 -0
- package/ORM/enable.d.ts +4 -0
- package/ORM/enable.d.ts.map +1 -0
- package/ORM/enable.js +23 -0
- package/ORM/enable.js.map +1 -0
- package/ORM/entityDecorators.d.ts +39 -0
- package/ORM/entityDecorators.d.ts.map +1 -0
- package/ORM/entityDecorators.js +131 -0
- package/ORM/entityDecorators.js.map +1 -0
- package/ORM/errors.d.ts +9 -0
- package/ORM/errors.d.ts.map +1 -0
- package/ORM/errors.js +20 -0
- package/ORM/errors.js.map +1 -0
- package/ORM/fieldSelect.d.ts +25 -0
- package/ORM/fieldSelect.d.ts.map +1 -0
- package/ORM/fieldSelect.js +49 -0
- package/ORM/fieldSelect.js.map +1 -0
- package/ORM/fill.d.ts +6 -0
- package/ORM/fill.d.ts.map +1 -0
- package/ORM/fill.js +45 -0
- package/ORM/fill.js.map +1 -0
- package/ORM/flag.d.ts +4 -0
- package/ORM/flag.d.ts.map +1 -0
- package/ORM/flag.js +14 -0
- package/ORM/flag.js.map +1 -0
- package/ORM/hydrate.d.ts +12 -0
- package/ORM/hydrate.d.ts.map +1 -0
- package/ORM/hydrate.js +304 -0
- package/ORM/hydrate.js.map +1 -0
- package/ORM/identifier.d.ts +8 -0
- package/ORM/identifier.d.ts.map +1 -0
- package/ORM/identifier.js +47 -0
- package/ORM/identifier.js.map +1 -0
- package/ORM/index.d.ts +41 -0
- package/ORM/index.d.ts.map +1 -0
- package/ORM/index.js +119 -0
- package/ORM/index.js.map +1 -0
- package/ORM/relation.d.ts +53 -0
- package/ORM/relation.d.ts.map +1 -0
- package/ORM/relation.js +143 -0
- package/ORM/relation.js.map +1 -0
- package/ORM/resultMap.d.ts +3 -0
- package/ORM/resultMap.d.ts.map +1 -0
- package/ORM/resultMap.js +21 -0
- package/ORM/resultMap.js.map +1 -0
- package/ORM/security.d.ts +5 -0
- package/ORM/security.d.ts.map +1 -0
- package/ORM/security.js +39 -0
- package/ORM/security.js.map +1 -0
- package/ORM/sqlDecorators.d.ts +15 -0
- package/ORM/sqlDecorators.d.ts.map +1 -0
- package/ORM/sqlDecorators.js +106 -0
- package/ORM/sqlDecorators.js.map +1 -0
- package/ORM/sqlLog.d.ts +20 -0
- package/ORM/sqlLog.d.ts.map +1 -0
- package/ORM/sqlLog.js +172 -0
- package/ORM/sqlLog.js.map +1 -0
- package/ORM/sqlTemplate.d.ts +13 -0
- package/ORM/sqlTemplate.d.ts.map +1 -0
- package/ORM/sqlTemplate.js +89 -0
- package/ORM/sqlTemplate.js.map +1 -0
- package/ORM/table.d.ts +8 -0
- package/ORM/table.d.ts.map +1 -0
- package/ORM/table.js +45 -0
- package/ORM/table.js.map +1 -0
- package/ORM/tableSearch.d.ts +43 -0
- package/ORM/tableSearch.d.ts.map +1 -0
- package/ORM/tableSearch.js +205 -0
- package/ORM/tableSearch.js.map +1 -0
- package/ORM/transactional.d.ts +7 -0
- package/ORM/transactional.d.ts.map +1 -0
- package/ORM/transactional.js +43 -0
- package/ORM/transactional.js.map +1 -0
- package/ORM/types.d.ts +92 -0
- package/ORM/types.d.ts.map +1 -0
- package/ORM/types.js +3 -0
- package/ORM/types.js.map +1 -0
- package/ORM/xml/MapperXml.d.ts +10 -0
- package/ORM/xml/MapperXml.d.ts.map +1 -0
- package/ORM/xml/MapperXml.js +79 -0
- package/ORM/xml/MapperXml.js.map +1 -0
- package/ORM/xml/execute.d.ts +10 -0
- package/ORM/xml/execute.d.ts.map +1 -0
- package/ORM/xml/execute.js +53 -0
- package/ORM/xml/execute.js.map +1 -0
- package/ORM/xml/index.d.ts +11 -0
- package/ORM/xml/index.d.ts.map +1 -0
- package/ORM/xml/index.js +29 -0
- package/ORM/xml/index.js.map +1 -0
- package/ORM/xml/loadMappers.d.ts +10 -0
- package/ORM/xml/loadMappers.d.ts.map +1 -0
- package/ORM/xml/loadMappers.js +162 -0
- package/ORM/xml/loadMappers.js.map +1 -0
- package/ORM/xml/parseMapperXml.d.ts +3 -0
- package/ORM/xml/parseMapperXml.d.ts.map +1 -0
- package/ORM/xml/parseMapperXml.js +217 -0
- package/ORM/xml/parseMapperXml.js.map +1 -0
- package/ORM/xml/registry.d.ts +15 -0
- package/ORM/xml/registry.d.ts.map +1 -0
- package/ORM/xml/registry.js +57 -0
- package/ORM/xml/registry.js.map +1 -0
- package/ORM/xml/renderSql.d.ts +4 -0
- package/ORM/xml/renderSql.d.ts.map +1 -0
- package/ORM/xml/renderSql.js +178 -0
- package/ORM/xml/renderSql.js.map +1 -0
- package/ORM/xml/types.d.ts +50 -0
- package/ORM/xml/types.d.ts.map +1 -0
- package/ORM/xml/types.js +3 -0
- package/ORM/xml/types.js.map +1 -0
- package/ORM/xml/xmlMapper.d.ts +10 -0
- package/ORM/xml/xmlMapper.d.ts.map +1 -0
- package/ORM/xml/xmlMapper.js +44 -0
- package/ORM/xml/xmlMapper.js.map +1 -0
- package/README.md +41 -2
- package/Redis/Redis.d.ts +65 -0
- package/Redis/Redis.d.ts.map +1 -0
- package/Redis/Redis.js +622 -0
- package/Redis/Redis.js.map +1 -0
- package/Redis/cache.d.ts +4 -0
- package/Redis/cache.d.ts.map +1 -0
- package/Redis/cache.js +70 -0
- package/Redis/cache.js.map +1 -0
- package/Redis/decorators.d.ts +5 -0
- package/Redis/decorators.d.ts.map +1 -0
- package/Redis/decorators.js +20 -0
- package/Redis/decorators.js.map +1 -0
- package/Redis/enable.d.ts +4 -0
- package/Redis/enable.d.ts.map +1 -0
- package/Redis/enable.js +22 -0
- package/Redis/enable.js.map +1 -0
- package/Redis/errors.d.ts +9 -0
- package/Redis/errors.d.ts.map +1 -0
- package/Redis/errors.js +20 -0
- package/Redis/errors.js.map +1 -0
- package/Redis/flag.d.ts +4 -0
- package/Redis/flag.d.ts.map +1 -0
- package/Redis/flag.js +14 -0
- package/Redis/flag.js.map +1 -0
- package/Redis/index.d.ts +11 -0
- package/Redis/index.d.ts.map +1 -0
- package/Redis/index.js +42 -0
- package/Redis/index.js.map +1 -0
- package/Redis/rateLimit.d.ts +8 -0
- package/Redis/rateLimit.d.ts.map +1 -0
- package/Redis/rateLimit.js +82 -0
- package/Redis/rateLimit.js.map +1 -0
- package/Redis/redisson/RCountDownLatch.d.ts +12 -0
- package/Redis/redisson/RCountDownLatch.d.ts.map +1 -0
- package/Redis/redisson/RCountDownLatch.js +48 -0
- package/Redis/redisson/RCountDownLatch.js.map +1 -0
- package/Redis/redisson/RFairLock.d.ts +4 -0
- package/Redis/redisson/RFairLock.d.ts.map +1 -0
- package/Redis/redisson/RFairLock.js +29 -0
- package/Redis/redisson/RFairLock.js.map +1 -0
- package/Redis/redisson/RLock.d.ts +34 -0
- package/Redis/redisson/RLock.d.ts.map +1 -0
- package/Redis/redisson/RLock.js +146 -0
- package/Redis/redisson/RLock.js.map +1 -0
- package/Redis/redisson/RMultiLock.d.ts +15 -0
- package/Redis/redisson/RMultiLock.d.ts.map +1 -0
- package/Redis/redisson/RMultiLock.js +90 -0
- package/Redis/redisson/RMultiLock.js.map +1 -0
- package/Redis/redisson/RReadWriteLock.d.ts +9 -0
- package/Redis/redisson/RReadWriteLock.d.ts.map +1 -0
- package/Redis/redisson/RReadWriteLock.js +51 -0
- package/Redis/redisson/RReadWriteLock.js.map +1 -0
- package/Redis/redisson/RSemaphore.d.ts +13 -0
- package/Redis/redisson/RSemaphore.d.ts.map +1 -0
- package/Redis/redisson/RSemaphore.js +54 -0
- package/Redis/redisson/RSemaphore.js.map +1 -0
- package/Redis/redisson/Redisson.d.ts +30 -0
- package/Redis/redisson/Redisson.d.ts.map +1 -0
- package/Redis/redisson/Redisson.js +93 -0
- package/Redis/redisson/Redisson.js.map +1 -0
- package/Redis/redisson/index.d.ts +12 -0
- package/Redis/redisson/index.d.ts.map +1 -0
- package/Redis/redisson/index.js +32 -0
- package/Redis/redisson/index.js.map +1 -0
- package/Redis/redisson/objects.d.ts +116 -0
- package/Redis/redisson/objects.d.ts.map +1 -0
- package/Redis/redisson/objects.js +384 -0
- package/Redis/redisson/objects.js.map +1 -0
- package/Redis/redisson/scripts.d.ts +13 -0
- package/Redis/redisson/scripts.d.ts.map +1 -0
- package/Redis/redisson/scripts.js +187 -0
- package/Redis/redisson/scripts.js.map +1 -0
- package/Redis/redisson/types.d.ts +129 -0
- package/Redis/redisson/types.d.ts.map +1 -0
- package/Redis/redisson/types.js +8 -0
- package/Redis/redisson/types.js.map +1 -0
- package/Redis/redisson/utils.d.ts +9 -0
- package/Redis/redisson/utils.d.ts.map +1 -0
- package/Redis/redisson/utils.js +78 -0
- package/Redis/redisson/utils.js.map +1 -0
- package/Redis/types.d.ts +82 -0
- package/Redis/types.d.ts.map +1 -0
- package/Redis/types.js +23 -0
- package/Redis/types.js.map +1 -0
- package/Service/BaseService.d.ts +18 -0
- package/Service/BaseService.d.ts.map +1 -0
- package/Service/BaseService.js +46 -0
- package/Service/BaseService.js.map +1 -0
- package/Service/MapperType.d.ts +18 -0
- package/Service/MapperType.d.ts.map +1 -0
- package/Service/MapperType.js +46 -0
- package/Service/MapperType.js.map +1 -0
- package/Service/bean.d.ts +16 -0
- package/Service/bean.d.ts.map +1 -0
- package/Service/bean.js +72 -0
- package/Service/bean.js.map +1 -0
- package/Service/container.d.ts +18 -0
- package/Service/container.d.ts.map +1 -0
- package/Service/container.js +66 -0
- package/Service/container.js.map +1 -0
- package/Service/decorators.d.ts +12 -0
- package/Service/decorators.d.ts.map +1 -0
- package/Service/decorators.js +148 -0
- package/Service/decorators.js.map +1 -0
- package/Service/index.d.ts +11 -0
- package/Service/index.d.ts.map +1 -0
- package/Service/index.js +32 -0
- package/Service/index.js.map +1 -0
- package/Service/types.d.ts +19 -0
- package/Service/types.d.ts.map +1 -0
- package/Service/types.js +18 -0
- package/Service/types.js.map +1 -0
- package/Validate/decorators.d.ts +18 -0
- package/Validate/decorators.d.ts.map +1 -0
- package/Validate/decorators.js +77 -0
- package/Validate/decorators.js.map +1 -0
- package/Validate/engine.d.ts +5 -0
- package/Validate/engine.d.ts.map +1 -0
- package/Validate/engine.js +78 -0
- package/Validate/engine.js.map +1 -0
- package/Validate/index.d.ts +6 -0
- package/Validate/index.d.ts.map +1 -0
- package/Validate/index.js +28 -0
- package/Validate/index.js.map +1 -0
- package/Validate/rules.d.ts +11 -0
- package/Validate/rules.d.ts.map +1 -0
- package/Validate/rules.js +120 -0
- package/Validate/rules.js.map +1 -0
- package/Validate/types.d.ts +22 -0
- package/Validate/types.d.ts.map +1 -0
- package/Validate/types.js +17 -0
- package/Validate/types.js.map +1 -0
- package/config/index.d.ts +104 -0
- package/config/index.d.ts.map +1 -0
- package/config/index.js +330 -0
- package/config/index.js.map +1 -0
- package/encrypt/AESUtil.d.ts +5 -0
- package/encrypt/AESUtil.d.ts.map +1 -0
- package/encrypt/AESUtil.js +36 -0
- package/encrypt/AESUtil.js.map +1 -0
- package/encrypt/DynamicAesKeyManager.d.ts +9 -0
- package/encrypt/DynamicAesKeyManager.d.ts.map +1 -0
- package/encrypt/DynamicAesKeyManager.js +46 -0
- package/encrypt/DynamicAesKeyManager.js.map +1 -0
- package/encrypt/index.d.ts +3 -0
- package/encrypt/index.d.ts.map +1 -0
- package/encrypt/index.js +8 -0
- package/encrypt/index.js.map +1 -0
- package/index.d.ts +31 -0
- package/index.d.ts.map +1 -0
- package/index.js +260 -0
- package/index.js.map +1 -0
- package/langchain/decorators.d.ts +2 -0
- package/langchain/decorators.d.ts.map +1 -0
- package/langchain/decorators.js +6 -0
- package/langchain/decorators.js.map +1 -0
- package/langchain/index.d.ts +1 -0
- package/langchain/index.d.ts.map +1 -0
- package/langchain/index.js +2 -0
- package/langchain/index.js.map +1 -0
- package/package.json +110 -4
- package/schedule/ScheduleManager.d.ts +25 -0
- package/schedule/ScheduleManager.d.ts.map +1 -0
- package/schedule/ScheduleManager.js +125 -0
- package/schedule/ScheduleManager.js.map +1 -0
- package/types/enums.d.ts +11 -0
- package/types/enums.d.ts.map +1 -0
- package/types/enums.js +15 -0
- package/types/enums.js.map +1 -0
- package/utils/case.d.ts +6 -0
- package/utils/case.d.ts.map +1 -0
- package/utils/case.js +32 -0
- package/utils/case.js.map +1 -0
- package/utils/entity/PageResult/index.d.ts +20 -0
- package/utils/entity/PageResult/index.d.ts.map +1 -0
- package/utils/entity/PageResult/index.js +15 -0
- package/utils/entity/PageResult/index.js.map +1 -0
- package/utils/entity/ResponseData/index.d.ts +11 -0
- package/utils/entity/ResponseData/index.d.ts.map +1 -0
- package/utils/entity/ResponseData/index.js +25 -0
- package/utils/entity/ResponseData/index.js.map +1 -0
- package/utils/id.d.ts +2 -0
- package/utils/id.d.ts.map +1 -0
- package/utils/id.js +9 -0
- package/utils/id.js.map +1 -0
|
@@ -0,0 +1,573 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.Phone = exports.Email = exports.Max = exports.Min = exports.NotNull = exports.Validate = exports.registerHandler = exports.BizException = exports.ExceptionHandler = exports.ControllerAdvice = exports.pick = exports.copyProperties = exports.convert = exports.ObjectMapper = exports.JsonProperty = exports.JsonIncludeType = exports.JsonInclude = exports.JsonFormat = exports.configureLogger = exports.logger = exports.getLogger = exports.Transactional = exports.RateLimiterType = exports.RepeatSubmit = exports.RateLimiter = exports.OperType = exports.BusinessType = exports.Value = exports.RequestCookie = exports.RequestHeader = exports.RequestPath = exports.RequestQuery = exports.RequestBody = exports.Flux = exports.Log = exports.AuthIgnore = exports.AuthCheckPermission = exports.AuthCheckRole = exports.AuthCheckLogin = exports.DeleteMapping = exports.PutMapping = exports.PostMapping = exports.GetMapping = exports.Controller = exports.isApplicationDestroy = exports.isApplicationInit = exports.hookProcessDestroy = exports.runApplicationDestroys = exports.runApplicationInits = exports.ParamType = void 0;
|
|
40
|
+
exports.ValidationError = exports.validateHandler = exports.Custom = void 0;
|
|
41
|
+
exports.applicationStart = applicationStart;
|
|
42
|
+
const express_1 = __importStar(require("express"));
|
|
43
|
+
const fs_1 = __importDefault(require("fs"));
|
|
44
|
+
const path_1 = __importDefault(require("path"));
|
|
45
|
+
const config_1 = require("../config");
|
|
46
|
+
const ResponseData_1 = __importDefault(require("../utils/entity/ResponseData"));
|
|
47
|
+
const Auth_1 = require("../Auth");
|
|
48
|
+
const Log_1 = require("../Log");
|
|
49
|
+
const flag_1 = require("../Redis/flag");
|
|
50
|
+
const flag_2 = require("../ORM/flag");
|
|
51
|
+
const ip_1 = require("../Log/ip");
|
|
52
|
+
const Logger_1 = require("../Logger");
|
|
53
|
+
const ORM_1 = require("../ORM");
|
|
54
|
+
const Redis_1 = require("../Redis");
|
|
55
|
+
const Json_1 = require("../Json");
|
|
56
|
+
const Exception_1 = require("../Exception");
|
|
57
|
+
const Validate_1 = require("../Validate");
|
|
58
|
+
const metadata_1 = require("./metadata");
|
|
59
|
+
const types_1 = require("./types");
|
|
60
|
+
Object.defineProperty(exports, "ParamType", { enumerable: true, get: function () { return types_1.ParamType; } });
|
|
61
|
+
const callbackArgs_1 = require("./callbackArgs");
|
|
62
|
+
const lifecycle_1 = require("./lifecycle");
|
|
63
|
+
const processGuards_1 = require("./processGuards");
|
|
64
|
+
const warmup_1 = require("./warmup");
|
|
65
|
+
const interceptors_1 = require("./interceptors");
|
|
66
|
+
const log = (0, Logger_1.getLogger)('Application');
|
|
67
|
+
let __isStart = false;
|
|
68
|
+
const app = (0, express_1.default)();
|
|
69
|
+
app.set('trust proxy', config_1.trustProxy);
|
|
70
|
+
const router = (0, express_1.Router)();
|
|
71
|
+
function applicationStart() {
|
|
72
|
+
return app.listen(config_1.PORT, () => {
|
|
73
|
+
log.info(`Server is running on port ${config_1.PORT}`);
|
|
74
|
+
(0, lifecycle_1.hookProcessDestroy)();
|
|
75
|
+
void (0, warmup_1.warmupConnections)().catch((err) => {
|
|
76
|
+
log.warn({ err }, '连接预热异常');
|
|
77
|
+
});
|
|
78
|
+
void (0, lifecycle_1.runApplicationInits)().catch((err) => {
|
|
79
|
+
log.error({ err }, 'ApplicationInit 阶段失败');
|
|
80
|
+
});
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
const originalListen = app.listen.bind(app);
|
|
84
|
+
app.listen = function (...args) {
|
|
85
|
+
if (__isStart) {
|
|
86
|
+
throw new Error('Application already started');
|
|
87
|
+
}
|
|
88
|
+
__isStart = true;
|
|
89
|
+
return originalListen(...args);
|
|
90
|
+
};
|
|
91
|
+
function isAuthMiddleware(param) {
|
|
92
|
+
return typeof param === 'function' && !!param[Auth_1.AUTH_MIDDLEWARE_FLAG];
|
|
93
|
+
}
|
|
94
|
+
function isLogMiddleware(param) {
|
|
95
|
+
return typeof param === 'function' && !!param[Log_1.LOG_MIDDLEWARE_FLAG];
|
|
96
|
+
}
|
|
97
|
+
function isRedisModule(param) {
|
|
98
|
+
return typeof param === 'function' && !!param[flag_1.REDIS_MODULE_FLAG];
|
|
99
|
+
}
|
|
100
|
+
function isOrmModule(param) {
|
|
101
|
+
return typeof param === 'function' && !!param[flag_2.ORM_MODULE_FLAG];
|
|
102
|
+
}
|
|
103
|
+
function resolveLogStatus(error) {
|
|
104
|
+
if (!error)
|
|
105
|
+
return '200';
|
|
106
|
+
if (error instanceof Auth_1.AuthError ||
|
|
107
|
+
error instanceof ORM_1.OrmError ||
|
|
108
|
+
error instanceof Redis_1.GuardError ||
|
|
109
|
+
error instanceof Validate_1.ValidationError) {
|
|
110
|
+
return String(error.code ?? 500);
|
|
111
|
+
}
|
|
112
|
+
return '500';
|
|
113
|
+
}
|
|
114
|
+
class Application {
|
|
115
|
+
static getApp() {
|
|
116
|
+
return app;
|
|
117
|
+
}
|
|
118
|
+
static hasAuth() {
|
|
119
|
+
return this.authRegistered;
|
|
120
|
+
}
|
|
121
|
+
static hasLog() {
|
|
122
|
+
return this.logRegistered || (0, Log_1.isLogRegistered)();
|
|
123
|
+
}
|
|
124
|
+
static hasRedis() {
|
|
125
|
+
return this.redisRegistered || (0, flag_1.isRedisEnabled)();
|
|
126
|
+
}
|
|
127
|
+
static hasOrm() {
|
|
128
|
+
return this.ormRegistered || (0, flag_2.isOrmEnabled)();
|
|
129
|
+
}
|
|
130
|
+
static addRequestInterceptor(fn) {
|
|
131
|
+
(0, interceptors_1.addRequestInterceptor)(fn);
|
|
132
|
+
return this;
|
|
133
|
+
}
|
|
134
|
+
static addResponseInterceptor(fn) {
|
|
135
|
+
(0, interceptors_1.addResponseInterceptor)(fn);
|
|
136
|
+
return this;
|
|
137
|
+
}
|
|
138
|
+
static clearInterceptors() {
|
|
139
|
+
(0, interceptors_1.clearInterceptors)();
|
|
140
|
+
return this;
|
|
141
|
+
}
|
|
142
|
+
static scan(...dirs) {
|
|
143
|
+
for (const item of dirs.flat()) {
|
|
144
|
+
const abs = path_1.default.isAbsolute(item)
|
|
145
|
+
? path_1.default.normalize(item)
|
|
146
|
+
: path_1.default.normalize(path_1.default.resolve(process.cwd(), item));
|
|
147
|
+
if (!this.scanRoots.includes(abs)) {
|
|
148
|
+
this.scanRoots.push(abs);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
return this;
|
|
152
|
+
}
|
|
153
|
+
static static(url) {
|
|
154
|
+
if (Array.isArray(url)) {
|
|
155
|
+
for (const item of url) {
|
|
156
|
+
app.use(item, express_1.default.static(path_1.default.resolve(process.cwd(), item)));
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
else {
|
|
160
|
+
app.use(url, express_1.default.static(path_1.default.resolve(process.cwd(), url)));
|
|
161
|
+
}
|
|
162
|
+
return this;
|
|
163
|
+
}
|
|
164
|
+
static getScanRoots() {
|
|
165
|
+
return [...this.scanRoots];
|
|
166
|
+
}
|
|
167
|
+
static start() {
|
|
168
|
+
(0, processGuards_1.installProcessErrorGuards)();
|
|
169
|
+
if (!this.controllersLoaded) {
|
|
170
|
+
this.loadControllers();
|
|
171
|
+
}
|
|
172
|
+
this.routes();
|
|
173
|
+
applicationStart();
|
|
174
|
+
return this;
|
|
175
|
+
}
|
|
176
|
+
static registry(param) {
|
|
177
|
+
const list = Array.isArray(param) ? param : [param];
|
|
178
|
+
for (const item of list) {
|
|
179
|
+
if (isAuthMiddleware(item)) {
|
|
180
|
+
this.authRegistered = true;
|
|
181
|
+
if ((0, Auth_1.getAuthOptions)()?.redis) {
|
|
182
|
+
this.redisRegistered = true;
|
|
183
|
+
(0, flag_1.markRedisEnabled)(true);
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
if (isLogMiddleware(item)) {
|
|
187
|
+
this.logRegistered = true;
|
|
188
|
+
}
|
|
189
|
+
if (isRedisModule(item)) {
|
|
190
|
+
this.redisRegistered = true;
|
|
191
|
+
(0, flag_1.markRedisEnabled)(true);
|
|
192
|
+
}
|
|
193
|
+
if (isOrmModule(item)) {
|
|
194
|
+
this.ormRegistered = true;
|
|
195
|
+
(0, flag_2.markOrmEnabled)(true);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
Array.isArray(param) ? app.use(...param) : app.use(param);
|
|
199
|
+
return this;
|
|
200
|
+
}
|
|
201
|
+
static routes() {
|
|
202
|
+
if (!this.routerMounted) {
|
|
203
|
+
app.use(router);
|
|
204
|
+
this.routerMounted = true;
|
|
205
|
+
}
|
|
206
|
+
return this;
|
|
207
|
+
}
|
|
208
|
+
static registerController(Ctor) {
|
|
209
|
+
if (this.registeredControllers.has(Ctor)) {
|
|
210
|
+
return this;
|
|
211
|
+
}
|
|
212
|
+
this.registeredControllers.add(Ctor);
|
|
213
|
+
const prefix = (0, metadata_1.getControllerPrefix)(Ctor);
|
|
214
|
+
const routes = (0, metadata_1.getControllerRoutes)(Ctor);
|
|
215
|
+
const { Container } = require("../Service");
|
|
216
|
+
Container.bindClass(Ctor);
|
|
217
|
+
const instance = Container.get(Ctor);
|
|
218
|
+
for (const route of routes) {
|
|
219
|
+
const fullPath = (0, metadata_1.joinRoutePath)(prefix, route.path);
|
|
220
|
+
const method = instance[route.handlerName];
|
|
221
|
+
if (typeof method !== 'function') {
|
|
222
|
+
throw new Error(`[Application] ${Ctor.name}.${route.handlerName} 不是函数`);
|
|
223
|
+
}
|
|
224
|
+
const handler = method.bind(instance);
|
|
225
|
+
const option = {
|
|
226
|
+
...route.option,
|
|
227
|
+
__controllerName: Ctor.name,
|
|
228
|
+
__handlerName: route.handlerName,
|
|
229
|
+
};
|
|
230
|
+
switch (route.method) {
|
|
231
|
+
case 'GET':
|
|
232
|
+
this.GET(fullPath, handler, option);
|
|
233
|
+
break;
|
|
234
|
+
case 'POST':
|
|
235
|
+
this.POST(fullPath, handler, option);
|
|
236
|
+
break;
|
|
237
|
+
case 'PUT':
|
|
238
|
+
this.PUT(fullPath, handler, option);
|
|
239
|
+
break;
|
|
240
|
+
case 'DELETE':
|
|
241
|
+
this.DELETE(fullPath, handler, option);
|
|
242
|
+
break;
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
return this;
|
|
246
|
+
}
|
|
247
|
+
static loadControllers(dir) {
|
|
248
|
+
if (this.controllersLoaded && !dir) {
|
|
249
|
+
return this;
|
|
250
|
+
}
|
|
251
|
+
if (dir) {
|
|
252
|
+
const abs = path_1.default.isAbsolute(dir)
|
|
253
|
+
? path_1.default.normalize(dir)
|
|
254
|
+
: path_1.default.normalize(path_1.default.resolve(process.cwd(), dir));
|
|
255
|
+
this.loadScanRoot(abs);
|
|
256
|
+
return this;
|
|
257
|
+
}
|
|
258
|
+
const roots = this.scanRoots.length > 0
|
|
259
|
+
? [...this.scanRoots]
|
|
260
|
+
: [path_1.default.resolve(__dirname, "../../business")];
|
|
261
|
+
for (const root of roots) {
|
|
262
|
+
this.loadScanRoot(root);
|
|
263
|
+
}
|
|
264
|
+
this.controllersLoaded = true;
|
|
265
|
+
return this;
|
|
266
|
+
}
|
|
267
|
+
static loadScanRoot(root) {
|
|
268
|
+
if (!fs_1.default.existsSync(root)) {
|
|
269
|
+
log.warn(`扫描目录不存在: ${root}`);
|
|
270
|
+
return;
|
|
271
|
+
}
|
|
272
|
+
const phases = [
|
|
273
|
+
"entity",
|
|
274
|
+
"mapper",
|
|
275
|
+
"service",
|
|
276
|
+
"controller",
|
|
277
|
+
"controllers",
|
|
278
|
+
"advice",
|
|
279
|
+
"modules",
|
|
280
|
+
];
|
|
281
|
+
const loadedPhaseDirs = new Set();
|
|
282
|
+
for (const phase of phases) {
|
|
283
|
+
const dir = path_1.default.join(root, phase);
|
|
284
|
+
if (fs_1.default.existsSync(dir) && fs_1.default.statSync(dir).isDirectory()) {
|
|
285
|
+
const norm = path_1.default.normalize(dir);
|
|
286
|
+
loadedPhaseDirs.add(norm);
|
|
287
|
+
this.loadModuleFiles(dir);
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
this.loadModuleFiles(root, loadedPhaseDirs);
|
|
291
|
+
}
|
|
292
|
+
static loadModuleFiles(dir, skipDirs = new Set()) {
|
|
293
|
+
if (!fs_1.default.existsSync(dir)) {
|
|
294
|
+
return;
|
|
295
|
+
}
|
|
296
|
+
for (const entry of fs_1.default.readdirSync(dir, { withFileTypes: true })) {
|
|
297
|
+
const full = path_1.default.join(dir, entry.name);
|
|
298
|
+
if (entry.isDirectory()) {
|
|
299
|
+
if (skipDirs.has(path_1.default.normalize(full))) {
|
|
300
|
+
continue;
|
|
301
|
+
}
|
|
302
|
+
this.loadModuleFiles(full, skipDirs);
|
|
303
|
+
continue;
|
|
304
|
+
}
|
|
305
|
+
if (!/\.(ts|js|mts|cts|cjs|mjs)$/.test(entry.name) ||
|
|
306
|
+
entry.name.endsWith(".d.ts") ||
|
|
307
|
+
entry.name.endsWith(".map")) {
|
|
308
|
+
continue;
|
|
309
|
+
}
|
|
310
|
+
const resolved = path_1.default.normalize(full);
|
|
311
|
+
if (this.loadedFiles.has(resolved)) {
|
|
312
|
+
continue;
|
|
313
|
+
}
|
|
314
|
+
this.loadedFiles.add(resolved);
|
|
315
|
+
try {
|
|
316
|
+
require(resolved);
|
|
317
|
+
}
|
|
318
|
+
catch (err) {
|
|
319
|
+
log.error({ err, file: resolved }, '加载模块失败,已跳过');
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
static async applyRouteAuth(option = {}, req) {
|
|
324
|
+
if (!this.hasAuth()) {
|
|
325
|
+
return;
|
|
326
|
+
}
|
|
327
|
+
if ((0, Auth_1.isGloballyIgnored)(req.path)) {
|
|
328
|
+
return;
|
|
329
|
+
}
|
|
330
|
+
if (option.auth?.ignore) {
|
|
331
|
+
return;
|
|
332
|
+
}
|
|
333
|
+
await Auth_1.AuthUtil.checkLogin();
|
|
334
|
+
const roles = option.auth?.roles ?? [];
|
|
335
|
+
const permissions = option.auth?.permissions ?? [];
|
|
336
|
+
if (roles.length === 0 && permissions.length === 0) {
|
|
337
|
+
return;
|
|
338
|
+
}
|
|
339
|
+
const fallback = (0, Auth_1.getAuthOptions)().checkMode ?? "OR";
|
|
340
|
+
const roleMode = option.auth?.roleMode ?? fallback;
|
|
341
|
+
const permissionMode = option.auth?.permissionMode ?? fallback;
|
|
342
|
+
const roleHit = await this.matchAuthList(roles, roleMode, (item) => Auth_1.AuthUtil.hasRole(item));
|
|
343
|
+
const permissionHit = await this.matchAuthList(permissions, permissionMode, (item) => Auth_1.AuthUtil.hasPermission(item));
|
|
344
|
+
const bothOr = roles.length > 0 &&
|
|
345
|
+
permissions.length > 0 &&
|
|
346
|
+
roleMode === "OR" &&
|
|
347
|
+
permissionMode === "OR";
|
|
348
|
+
if (bothOr) {
|
|
349
|
+
if (roleHit.ok || permissionHit.ok)
|
|
350
|
+
return;
|
|
351
|
+
await Auth_1.AuthUtil.checkRole(roleHit.missing ?? roles[0]);
|
|
352
|
+
return;
|
|
353
|
+
}
|
|
354
|
+
if (roles.length > 0 && !roleHit.ok) {
|
|
355
|
+
await Auth_1.AuthUtil.checkRole(roleHit.missing ?? roles[0]);
|
|
356
|
+
}
|
|
357
|
+
if (permissions.length > 0 && !permissionHit.ok) {
|
|
358
|
+
await Auth_1.AuthUtil.checkPermission(permissionHit.missing ?? permissions[0]);
|
|
359
|
+
}
|
|
360
|
+
}
|
|
361
|
+
static async matchAuthList(list, mode, has) {
|
|
362
|
+
if (list.length === 0)
|
|
363
|
+
return { ok: true };
|
|
364
|
+
if (mode === "AND") {
|
|
365
|
+
for (const item of list) {
|
|
366
|
+
if (!(await has(item)))
|
|
367
|
+
return { ok: false, missing: item };
|
|
368
|
+
}
|
|
369
|
+
return { ok: true };
|
|
370
|
+
}
|
|
371
|
+
for (const item of list) {
|
|
372
|
+
if (await has(item))
|
|
373
|
+
return { ok: true };
|
|
374
|
+
}
|
|
375
|
+
return { ok: false, missing: list[0] };
|
|
376
|
+
}
|
|
377
|
+
static scheduleOperationLog(req, option, payload) {
|
|
378
|
+
if (!option?.log || !this.hasLog())
|
|
379
|
+
return;
|
|
380
|
+
const meta = option;
|
|
381
|
+
const logOption = option.log;
|
|
382
|
+
const clientIp = (0, ip_1.getClientIp)(req);
|
|
383
|
+
const userAgent = String(req.headers["user-agent"] || "");
|
|
384
|
+
const ctx = {
|
|
385
|
+
req,
|
|
386
|
+
option: logOption,
|
|
387
|
+
result: payload.result,
|
|
388
|
+
error: payload.error,
|
|
389
|
+
statusCode: resolveLogStatus(payload.error),
|
|
390
|
+
startTime: payload.startTime,
|
|
391
|
+
controllerName: meta.__controllerName,
|
|
392
|
+
clientIp,
|
|
393
|
+
userAgent,
|
|
394
|
+
};
|
|
395
|
+
setImmediate(() => {
|
|
396
|
+
void (0, Log_1.recordOperationLog)(ctx);
|
|
397
|
+
});
|
|
398
|
+
}
|
|
399
|
+
static async applyRouteGuards(option, req) {
|
|
400
|
+
const meta = option;
|
|
401
|
+
await (0, Redis_1.applyRateLimit)(option?.rateLimit, req, {
|
|
402
|
+
controllerName: meta?.__controllerName,
|
|
403
|
+
handlerName: meta?.__handlerName,
|
|
404
|
+
});
|
|
405
|
+
await (0, Redis_1.applyRepeatSubmit)(option?.repeatSubmit, req);
|
|
406
|
+
}
|
|
407
|
+
static prepareFluxResponse(req, response) {
|
|
408
|
+
response.status(200);
|
|
409
|
+
response.setHeader("Content-Type", "text/event-stream; charset=utf-8");
|
|
410
|
+
response.setHeader("Cache-Control", "no-cache, no-transform");
|
|
411
|
+
response.setHeader("Connection", "keep-alive");
|
|
412
|
+
response.setHeader("X-Accel-Buffering", "no");
|
|
413
|
+
if (typeof response.flushHeaders === "function") {
|
|
414
|
+
response.flushHeaders();
|
|
415
|
+
}
|
|
416
|
+
req.socket?.setTimeout?.(0);
|
|
417
|
+
req.socket?.setNoDelay?.(true);
|
|
418
|
+
}
|
|
419
|
+
static mountRoute(method, path, callback, option) {
|
|
420
|
+
router[method](path, async (req, response) => {
|
|
421
|
+
const startTime = Date.now();
|
|
422
|
+
let result;
|
|
423
|
+
let error;
|
|
424
|
+
try {
|
|
425
|
+
await this.applyRouteAuth(option, req);
|
|
426
|
+
await this.applyRouteGuards(option, req);
|
|
427
|
+
const reqCtx = await (0, interceptors_1.runRequestInterceptors)(req, response, option);
|
|
428
|
+
if (response.headersSent) {
|
|
429
|
+
return;
|
|
430
|
+
}
|
|
431
|
+
if (option?.flux || option?.raw) {
|
|
432
|
+
if (reqCtx.skipHandler) {
|
|
433
|
+
return;
|
|
434
|
+
}
|
|
435
|
+
if (option?.flux) {
|
|
436
|
+
this.prepareFluxResponse(req, response);
|
|
437
|
+
}
|
|
438
|
+
const args = (0, callbackArgs_1.resolveRawCallbackArgs)(req, response, option, callback.length);
|
|
439
|
+
if (option?.validate) {
|
|
440
|
+
await (0, Validate_1.validateMethodArgs)(args, option.paramTypes ?? []);
|
|
441
|
+
}
|
|
442
|
+
await callback(...args);
|
|
443
|
+
}
|
|
444
|
+
else {
|
|
445
|
+
if (!reqCtx.skipHandler) {
|
|
446
|
+
const args = (0, callbackArgs_1.resolveCallbackArgs)(req, option, callback.length);
|
|
447
|
+
if (option?.validate) {
|
|
448
|
+
await (0, Validate_1.validateMethodArgs)(args, option.paramTypes ?? []);
|
|
449
|
+
}
|
|
450
|
+
result = await callback(...args);
|
|
451
|
+
}
|
|
452
|
+
else {
|
|
453
|
+
result = reqCtx.data;
|
|
454
|
+
}
|
|
455
|
+
const serialized = Json_1.ObjectMapper.writeValue(result);
|
|
456
|
+
const resCtx = await (0, interceptors_1.runResponseInterceptors)({
|
|
457
|
+
req,
|
|
458
|
+
res: response,
|
|
459
|
+
option,
|
|
460
|
+
data: serialized,
|
|
461
|
+
});
|
|
462
|
+
if (resCtx.handled || response.headersSent) {
|
|
463
|
+
result = resCtx.data;
|
|
464
|
+
return;
|
|
465
|
+
}
|
|
466
|
+
result = resCtx.data;
|
|
467
|
+
if (resCtx.wrap) {
|
|
468
|
+
response.send(ResponseData_1.default.success(resCtx.data));
|
|
469
|
+
}
|
|
470
|
+
else {
|
|
471
|
+
response.send(resCtx.data);
|
|
472
|
+
}
|
|
473
|
+
}
|
|
474
|
+
}
|
|
475
|
+
catch (e) {
|
|
476
|
+
error = e;
|
|
477
|
+
await (0, Exception_1.handleException)(req, response, e);
|
|
478
|
+
}
|
|
479
|
+
finally {
|
|
480
|
+
this.scheduleOperationLog(req, option, {
|
|
481
|
+
result: error ? undefined : result,
|
|
482
|
+
error,
|
|
483
|
+
startTime,
|
|
484
|
+
});
|
|
485
|
+
}
|
|
486
|
+
});
|
|
487
|
+
return this;
|
|
488
|
+
}
|
|
489
|
+
static GET(path, callback, option) {
|
|
490
|
+
return this.mountRoute('get', path, callback, option);
|
|
491
|
+
}
|
|
492
|
+
static POST(path, callback, option) {
|
|
493
|
+
return this.mountRoute('post', path, callback, option);
|
|
494
|
+
}
|
|
495
|
+
static PUT(path, callback, option) {
|
|
496
|
+
return this.mountRoute('put', path, callback, option);
|
|
497
|
+
}
|
|
498
|
+
static DELETE(path, callback, option) {
|
|
499
|
+
return this.mountRoute('delete', path, callback, option);
|
|
500
|
+
}
|
|
501
|
+
}
|
|
502
|
+
Application.routerMounted = false;
|
|
503
|
+
Application.controllersLoaded = false;
|
|
504
|
+
Application.authRegistered = false;
|
|
505
|
+
Application.logRegistered = false;
|
|
506
|
+
Application.redisRegistered = false;
|
|
507
|
+
Application.ormRegistered = false;
|
|
508
|
+
Application.registeredControllers = new WeakSet();
|
|
509
|
+
Application.loadedFiles = new Set();
|
|
510
|
+
Application.scanRoots = [];
|
|
511
|
+
exports.default = Application;
|
|
512
|
+
var lifecycle_2 = require("./lifecycle");
|
|
513
|
+
Object.defineProperty(exports, "runApplicationInits", { enumerable: true, get: function () { return lifecycle_2.runApplicationInits; } });
|
|
514
|
+
Object.defineProperty(exports, "runApplicationDestroys", { enumerable: true, get: function () { return lifecycle_2.runApplicationDestroys; } });
|
|
515
|
+
Object.defineProperty(exports, "hookProcessDestroy", { enumerable: true, get: function () { return lifecycle_2.hookProcessDestroy; } });
|
|
516
|
+
Object.defineProperty(exports, "isApplicationInit", { enumerable: true, get: function () { return lifecycle_2.isApplicationInit; } });
|
|
517
|
+
Object.defineProperty(exports, "isApplicationDestroy", { enumerable: true, get: function () { return lifecycle_2.isApplicationDestroy; } });
|
|
518
|
+
var decorators_1 = require("./decorators");
|
|
519
|
+
Object.defineProperty(exports, "Controller", { enumerable: true, get: function () { return decorators_1.Controller; } });
|
|
520
|
+
Object.defineProperty(exports, "GetMapping", { enumerable: true, get: function () { return decorators_1.GetMapping; } });
|
|
521
|
+
Object.defineProperty(exports, "PostMapping", { enumerable: true, get: function () { return decorators_1.PostMapping; } });
|
|
522
|
+
Object.defineProperty(exports, "PutMapping", { enumerable: true, get: function () { return decorators_1.PutMapping; } });
|
|
523
|
+
Object.defineProperty(exports, "DeleteMapping", { enumerable: true, get: function () { return decorators_1.DeleteMapping; } });
|
|
524
|
+
Object.defineProperty(exports, "AuthCheckLogin", { enumerable: true, get: function () { return decorators_1.AuthCheckLogin; } });
|
|
525
|
+
Object.defineProperty(exports, "AuthCheckRole", { enumerable: true, get: function () { return decorators_1.AuthCheckRole; } });
|
|
526
|
+
Object.defineProperty(exports, "AuthCheckPermission", { enumerable: true, get: function () { return decorators_1.AuthCheckPermission; } });
|
|
527
|
+
Object.defineProperty(exports, "AuthIgnore", { enumerable: true, get: function () { return decorators_1.AuthIgnore; } });
|
|
528
|
+
Object.defineProperty(exports, "Log", { enumerable: true, get: function () { return decorators_1.Log; } });
|
|
529
|
+
Object.defineProperty(exports, "Flux", { enumerable: true, get: function () { return decorators_1.Flux; } });
|
|
530
|
+
Object.defineProperty(exports, "RequestBody", { enumerable: true, get: function () { return decorators_1.RequestBody; } });
|
|
531
|
+
Object.defineProperty(exports, "RequestQuery", { enumerable: true, get: function () { return decorators_1.RequestQuery; } });
|
|
532
|
+
Object.defineProperty(exports, "RequestPath", { enumerable: true, get: function () { return decorators_1.RequestPath; } });
|
|
533
|
+
Object.defineProperty(exports, "RequestHeader", { enumerable: true, get: function () { return decorators_1.RequestHeader; } });
|
|
534
|
+
Object.defineProperty(exports, "RequestCookie", { enumerable: true, get: function () { return decorators_1.RequestCookie; } });
|
|
535
|
+
Object.defineProperty(exports, "Value", { enumerable: true, get: function () { return decorators_1.Value; } });
|
|
536
|
+
var Log_2 = require("../Log");
|
|
537
|
+
Object.defineProperty(exports, "BusinessType", { enumerable: true, get: function () { return Log_2.BusinessType; } });
|
|
538
|
+
Object.defineProperty(exports, "OperType", { enumerable: true, get: function () { return Log_2.OperType; } });
|
|
539
|
+
var Redis_2 = require("../Redis");
|
|
540
|
+
Object.defineProperty(exports, "RateLimiter", { enumerable: true, get: function () { return Redis_2.RateLimiter; } });
|
|
541
|
+
Object.defineProperty(exports, "RepeatSubmit", { enumerable: true, get: function () { return Redis_2.RepeatSubmit; } });
|
|
542
|
+
Object.defineProperty(exports, "RateLimiterType", { enumerable: true, get: function () { return Redis_2.RateLimiterType; } });
|
|
543
|
+
var ORM_2 = require("../ORM");
|
|
544
|
+
Object.defineProperty(exports, "Transactional", { enumerable: true, get: function () { return ORM_2.Transactional; } });
|
|
545
|
+
var Logger_2 = require("../Logger");
|
|
546
|
+
Object.defineProperty(exports, "getLogger", { enumerable: true, get: function () { return Logger_2.getLogger; } });
|
|
547
|
+
Object.defineProperty(exports, "logger", { enumerable: true, get: function () { return Logger_2.logger; } });
|
|
548
|
+
Object.defineProperty(exports, "configureLogger", { enumerable: true, get: function () { return Logger_2.configureLogger; } });
|
|
549
|
+
var Json_2 = require("../Json");
|
|
550
|
+
Object.defineProperty(exports, "JsonFormat", { enumerable: true, get: function () { return Json_2.JsonFormat; } });
|
|
551
|
+
Object.defineProperty(exports, "JsonInclude", { enumerable: true, get: function () { return Json_2.JsonInclude; } });
|
|
552
|
+
Object.defineProperty(exports, "JsonIncludeType", { enumerable: true, get: function () { return Json_2.JsonIncludeType; } });
|
|
553
|
+
Object.defineProperty(exports, "JsonProperty", { enumerable: true, get: function () { return Json_2.JsonProperty; } });
|
|
554
|
+
Object.defineProperty(exports, "ObjectMapper", { enumerable: true, get: function () { return Json_2.ObjectMapper; } });
|
|
555
|
+
Object.defineProperty(exports, "convert", { enumerable: true, get: function () { return Json_2.convert; } });
|
|
556
|
+
Object.defineProperty(exports, "copyProperties", { enumerable: true, get: function () { return Json_2.copyProperties; } });
|
|
557
|
+
Object.defineProperty(exports, "pick", { enumerable: true, get: function () { return Json_2.pick; } });
|
|
558
|
+
var Exception_2 = require("../Exception");
|
|
559
|
+
Object.defineProperty(exports, "ControllerAdvice", { enumerable: true, get: function () { return Exception_2.ControllerAdvice; } });
|
|
560
|
+
Object.defineProperty(exports, "ExceptionHandler", { enumerable: true, get: function () { return Exception_2.ExceptionHandler; } });
|
|
561
|
+
Object.defineProperty(exports, "BizException", { enumerable: true, get: function () { return Exception_2.BizException; } });
|
|
562
|
+
Object.defineProperty(exports, "registerHandler", { enumerable: true, get: function () { return Exception_2.registerHandler; } });
|
|
563
|
+
var Validate_2 = require("../Validate");
|
|
564
|
+
Object.defineProperty(exports, "Validate", { enumerable: true, get: function () { return Validate_2.Validate; } });
|
|
565
|
+
Object.defineProperty(exports, "NotNull", { enumerable: true, get: function () { return Validate_2.NotNull; } });
|
|
566
|
+
Object.defineProperty(exports, "Min", { enumerable: true, get: function () { return Validate_2.Min; } });
|
|
567
|
+
Object.defineProperty(exports, "Max", { enumerable: true, get: function () { return Validate_2.Max; } });
|
|
568
|
+
Object.defineProperty(exports, "Email", { enumerable: true, get: function () { return Validate_2.Email; } });
|
|
569
|
+
Object.defineProperty(exports, "Phone", { enumerable: true, get: function () { return Validate_2.Phone; } });
|
|
570
|
+
Object.defineProperty(exports, "Custom", { enumerable: true, get: function () { return Validate_2.Custom; } });
|
|
571
|
+
Object.defineProperty(exports, "validateHandler", { enumerable: true, get: function () { return Validate_2.validateHandler; } });
|
|
572
|
+
Object.defineProperty(exports, "ValidationError", { enumerable: true, get: function () { return Validate_2.ValidationError; } });
|
|
573
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/framework/Application/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuEA,4CAYC;AAnFD,mDAA4D;AAC5D,4CAAoB;AACpB,gDAAwB;AACxB,+CAAsD;AACtD,yFAAiE;AACjE,2CAAgH;AAChH,yCAIyB;AACzB,iDAIgC;AAChC,+CAI8B;AAC9B,2CAAiD;AACjD,+CAA+C;AAC/C,yCAA2C;AAC3C,6CAI2B;AAC3B,2CAAgD;AAChD,qDAAwD;AACxD,mDAA2E;AAC3E,yCAIoB;AAEpB,mCAAoC;AAkpB3B,0FAlpBA,iBAAS,OAkpBA;AAjpBlB,iDAGwB;AACxB,2CAAsE;AACtE,mDAA4D;AAC5D,qCAA6C;AAC7C,iDAQwB;AAExB,MAAM,GAAG,GAAG,IAAA,kBAAS,EAAC,aAAa,CAAC,CAAC;AAOrC,IAAI,SAAS,GAAG,KAAK,CAAC;AAEtB,MAAM,GAAG,GAAY,IAAA,iBAAO,GAAE,CAAC;AAE/B,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,mBAAU,CAAC,CAAC;AAEnC,MAAM,MAAM,GAAG,IAAA,gBAAM,GAAE,CAAC;AAExB,SAAgB,gBAAgB;IAC5B,OAAO,GAAG,CAAC,MAAM,CAAC,aAAI,EAAE,GAAG,EAAE;QACzB,GAAG,CAAC,IAAI,CAAC,6BAA6B,aAAI,EAAE,CAAC,CAAC;QAC9C,IAAA,8BAAkB,GAAE,CAAC;QAErB,KAAK,IAAA,0BAAiB,GAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACnC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QACH,KAAK,IAAA,+BAAmB,GAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACrC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,sBAAsB,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC;AAED,MAAM,cAAc,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE5C,GAAG,CAAC,MAAM,GAAG,UAAU,GAAG,IAAuC;IAC7D,IAAI,SAAS,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACnD,CAAC;IACD,SAAS,GAAG,IAAI,CAAC;IACjB,OAAO,cAAc,CAAC,GAAG,IAAI,CAAC,CAAC;AACnC,CAAsB,CAAC;AAGvB,SAAS,gBAAgB,CAAC,KAAc;IACpC,OAAO,OAAO,KAAK,KAAK,UAAU,IAAI,CAAC,CAAE,KAAa,CAAC,2BAAoB,CAAC,CAAC;AACjF,CAAC;AAGD,SAAS,eAAe,CAAC,KAAc;IACnC,OAAO,OAAO,KAAK,KAAK,UAAU,IAAI,CAAC,CAAE,KAAa,CAAC,yBAAmB,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACjC,OAAO,OAAO,KAAK,KAAK,UAAU,IAAI,CAAC,CAAE,KAAa,CAAC,wBAAiB,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IAC/B,OAAO,OAAO,KAAK,KAAK,UAAU,IAAI,CAAC,CAAE,KAAa,CAAC,sBAAe,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACpC,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,IACI,KAAK,YAAY,gBAAS;QAC1B,KAAK,YAAY,cAAQ;QACzB,KAAK,YAAY,kBAAU;QAC3B,KAAK,YAAY,0BAAe,EAClC,CAAC;QACC,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAM,WAAW;IAqBb,MAAM,CAAC,MAAM;QACT,OAAO,GAAG,CAAC;IACf,CAAC;IAGD,MAAM,CAAC,OAAO;QACV,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAGD,MAAM,CAAC,MAAM;QACT,OAAO,IAAI,CAAC,aAAa,IAAI,IAAA,qBAAe,GAAE,CAAC;IACnD,CAAC;IAGD,MAAM,CAAC,QAAQ;QACX,OAAO,IAAI,CAAC,eAAe,IAAI,IAAA,qBAAc,GAAE,CAAC;IACpD,CAAC;IAGD,MAAM,CAAC,MAAM;QACT,OAAO,IAAI,CAAC,aAAa,IAAI,IAAA,mBAAY,GAAE,CAAC;IAChD,CAAC;IASD,MAAM,CAAC,qBAAqB,CAAC,EAAsB;QAC/C,IAAA,oCAAqB,EAAC,EAAE,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IAChB,CAAC;IAYD,MAAM,CAAC,sBAAsB,CAAC,EAAuB;QACjD,IAAA,qCAAsB,EAAC,EAAE,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,MAAM,CAAC,iBAAiB;QACpB,IAAA,gCAAiB,GAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IAChB,CAAC;IAYD,MAAM,CAAC,IAAI,CAAC,GAAG,IAA8B;QACzC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YAC7B,MAAM,GAAG,GAAG,cAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBAC7B,CAAC,CAAC,cAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBACtB,CAAC,CAAC,cAAI,CAAC,SAAS,CAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;YACxD,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC7B,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,GAAsB;QAChC,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACrB,KAAK,MAAM,IAAI,IAAI,GAAG,EAAE,CAAC;gBACrB,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,iBAAO,CAAC,MAAM,CAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;YACrE,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,iBAAO,CAAC,MAAM,CAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QACnE,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,MAAM,CAAC,YAAY;QACf,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IAC/B,CAAC;IAOD,MAAM,CAAC,KAAK;QACR,IAAA,yCAAyB,GAAE,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC1B,IAAI,CAAC,eAAe,EAAE,CAAC;QAC3B,CAAC;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,gBAAgB,EAAE,CAAC;QACnB,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,KAAU;QACtB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACpD,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;YACtB,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;gBAE3B,IAAI,IAAA,qBAAc,GAAE,EAAE,KAAK,EAAE,CAAC;oBAC1B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;oBAC5B,IAAA,uBAAgB,EAAC,IAAI,CAAC,CAAC;gBAC3B,CAAC;YACL,CAAC;YACD,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;YAC9B,CAAC;YACD,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;gBAC5B,IAAA,uBAAgB,EAAC,IAAI,CAAC,CAAC;YAC3B,CAAC;YACD,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;gBAC1B,IAAA,qBAAc,EAAC,IAAI,CAAC,CAAC;YACzB,CAAC;QACL,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1D,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,MAAM,CAAC,MAAM;QACT,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACtB,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAChB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC9B,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAMD,MAAM,CAAC,kBAAkB,CAAC,IAAsB;QAC5C,IAAI,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAErC,MAAM,MAAM,GAAG,IAAA,8BAAmB,EAAC,IAAI,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,IAAA,8BAAmB,EAAC,IAAI,CAAC,CAAC;QAEzC,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,qBAAqB,CAKlD,CAAC;QACF,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAErC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACzB,MAAM,QAAQ,GAAG,IAAA,wBAAa,EAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACnD,MAAM,MAAM,GAAI,QAAoC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YACxE,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CACX,iBAAiB,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,WAAW,OAAO,CACzD,CAAC;YACN,CAAC;YACD,MAAM,OAAO,GAAI,MAAkC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACnE,MAAM,MAAM,GAAqB;gBAC7B,GAAG,KAAK,CAAC,MAAM;gBAEf,gBAAgB,EAAE,IAAI,CAAC,IAAI;gBAC3B,aAAa,EAAE,KAAK,CAAC,WAAW;aACnC,CAAC;YACF,QAAQ,KAAK,CAAC,MAAM,EAAE,CAAC;gBACnB,KAAK,KAAK;oBACN,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;oBACpC,MAAM;gBACV,KAAK,MAAM;oBACP,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;oBACrC,MAAM;gBACV,KAAK,KAAK;oBACN,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;oBACpC,MAAM;gBACV,KAAK,QAAQ;oBACT,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;oBACvC,MAAM;YACd,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAYD,MAAM,CAAC,eAAe,CAAC,GAAY;QAC/B,IAAI,IAAI,CAAC,iBAAiB,IAAI,CAAC,GAAG,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,GAAG,EAAE,CAAC;YACN,MAAM,GAAG,GAAG,cAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAC5B,CAAC,CAAC,cAAI,CAAC,SAAS,CAAC,GAAG,CAAC;gBACrB,CAAC,CAAC,cAAI,CAAC,SAAS,CAAC,cAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;YACvD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;YACvB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,KAAK,GACP,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YACrB,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;YACrB,CAAC,CAAC,CAAC,cAAI,CAAC,OAAO,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAAC;QAEtD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QACD,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;QAC9B,OAAO,IAAI,CAAC;IAChB,CAAC;IAGO,MAAM,CAAC,YAAY,CAAC,IAAY;QACpC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;YAC7B,OAAO;QACX,CAAC;QAGD,MAAM,MAAM,GAAG;YACX,QAAQ;YACR,QAAQ;YACR,SAAS;YACT,YAAY;YACZ,aAAa;YACb,QAAQ;YACR,SAAS;SACZ,CAAC;QACF,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;QAC1C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACnC,IAAI,YAAE,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,YAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;gBACvD,MAAM,IAAI,GAAG,cAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACjC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAC1B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;YAC9B,CAAC;QACL,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IAChD,CAAC;IAEO,MAAM,CAAC,eAAe,CAC1B,GAAW,EACX,WAAwB,IAAI,GAAG,EAAE;QAEjC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO;QACX,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,YAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAC/D,MAAM,IAAI,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACxC,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACtB,IAAI,QAAQ,CAAC,GAAG,CAAC,cAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;oBACrC,SAAS;gBACb,CAAC;gBACD,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBACrC,SAAS;YACb,CAAC;YAED,IACI,CAAC,4BAA4B,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC9C,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAC5B,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAC7B,CAAC;gBACC,SAAS;YACb,CAAC;YACD,MAAM,QAAQ,GAAG,cAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACjC,SAAS;YACb,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC/B,IAAI,CAAC;gBACD,OAAO,CAAC,QAAQ,CAAC,CAAC;YACtB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBAEX,GAAG,CAAC,KAAK,CACL,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,EACvB,YAAY,CACf,CAAC;YACN,CAAC;QACL,CAAC;IACL,CAAC;IAaO,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,SAAsB,EAAE,EAAE,GAAY;QACtE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YAClB,OAAO;QACX,CAAC;QACD,IAAI,IAAA,wBAAiB,EAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,OAAO;QACX,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;YACtB,OAAO;QACX,CAAC;QACD,MAAM,eAAQ,CAAC,UAAU,EAAE,CAAC;QAE5B,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;QACvC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,EAAE,WAAW,IAAI,EAAE,CAAC;QACnD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjD,OAAO;QACX,CAAC;QAED,MAAM,QAAQ,GAAG,IAAA,qBAAc,GAAE,CAAC,SAAS,IAAI,IAAI,CAAC;QACpD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,EAAE,QAAQ,IAAI,QAAQ,CAAC;QACnD,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,EAAE,cAAc,IAAI,QAAQ,CAAC;QAE/D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,aAAa,CACpC,KAAK,EACL,QAAQ,EACR,CAAC,IAAI,EAAE,EAAE,CAAC,eAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CACnC,CAAC;QACF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,aAAa,CAC1C,WAAW,EACX,cAAc,EACd,CAAC,IAAI,EAAE,EAAE,CAAC,eAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CACzC,CAAC;QAEF,MAAM,MAAM,GACR,KAAK,CAAC,MAAM,GAAG,CAAC;YAChB,WAAW,CAAC,MAAM,GAAG,CAAC;YACtB,QAAQ,KAAK,IAAI;YACjB,cAAc,KAAK,IAAI,CAAC;QAC5B,IAAI,MAAM,EAAE,CAAC;YACT,IAAI,OAAO,CAAC,EAAE,IAAI,aAAa,CAAC,EAAE;gBAAE,OAAO;YAC3C,MAAM,eAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,OAAO;QACX,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;YAClC,MAAM,eAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,CAAC;QACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC;YAC9C,MAAM,eAAQ,CAAC,eAAe,CAAC,aAAa,CAAC,OAAO,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5E,CAAC;IACL,CAAC;IAGO,MAAM,CAAC,KAAK,CAAC,aAAa,CAC9B,IAAc,EACd,IAAkB,EAClB,GAAuC;QAEvC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;QAC3C,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACjB,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;gBACtB,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;oBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAChE,CAAC;YACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;QACxB,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;YACtB,IAAI,MAAM,GAAG,CAAC,IAAI,CAAC;gBAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;QAC7C,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3C,CAAC;IAQO,MAAM,CAAC,oBAAoB,CAC/B,GAAY,EACZ,MAA+B,EAC/B,OAIC;QAED,IAAI,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAAE,OAAO;QAC3C,MAAM,IAAI,GAAG,MAA0B,CAAC;QACxC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC;QAE7B,MAAM,QAAQ,GAAG,IAAA,gBAAW,EAAC,GAAG,CAAC,CAAC;QAClC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1D,MAAM,GAAG,GAAG;YACR,GAAG;YACH,MAAM,EAAE,SAAS;YACjB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,UAAU,EAAE,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC;YAC3C,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,cAAc,EAAE,IAAI,CAAC,gBAAgB;YACrC,QAAQ;YACR,SAAS;SACZ,CAAC;QACF,YAAY,CAAC,GAAG,EAAE;YACd,KAAK,IAAA,wBAAkB,EAAC,GAAG,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACP,CAAC;IAGO,MAAM,CAAC,KAAK,CAAC,gBAAgB,CACjC,MAA+B,EAC/B,GAAY;QAEZ,MAAM,IAAI,GAAG,MAAsC,CAAC;QACpD,MAAM,IAAA,sBAAc,EAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE;YACzC,cAAc,EAAE,IAAI,EAAE,gBAAgB;YACtC,WAAW,EAAE,IAAI,EAAE,aAAa;SACnC,CAAC,CAAC;QACH,MAAM,IAAA,yBAAiB,EAAC,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC,CAAC;IACvD,CAAC;IAGO,MAAM,CAAC,mBAAmB,CAAC,GAAY,EAAE,QAA0B;QACvE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACrB,QAAQ,CAAC,SAAS,CAAC,cAAc,EAAE,kCAAkC,CAAC,CAAC;QACvE,QAAQ,CAAC,SAAS,CAAC,eAAe,EAAE,wBAAwB,CAAC,CAAC;QAC9D,QAAQ,CAAC,SAAS,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAC/C,QAAQ,CAAC,SAAS,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;QAC9C,IAAI,OAAO,QAAQ,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;YAC9C,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC5B,CAAC;QACD,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5B,GAAG,CAAC,MAAM,EAAE,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAEO,MAAM,CAAC,UAAU,CACrB,MAAyC,EACzC,IAAY,EACZ,QAAiC,EACjC,MAAoB;QAEpB,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE;YACzC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,IAAI,MAAe,CAAC;YACpB,IAAI,KAAc,CAAC;YACnB,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBACvC,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAEzC,MAAM,MAAM,GAAG,MAAM,IAAA,qCAAsB,EAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;gBACnE,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;oBACvB,OAAO;gBACX,CAAC;gBAED,IAAI,MAAM,EAAE,IAAI,IAAI,MAAM,EAAE,GAAG,EAAE,CAAC;oBAC9B,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;wBACrB,OAAO;oBACX,CAAC;oBACD,IAAI,MAAM,EAAE,IAAI,EAAE,CAAC;wBACf,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;oBAC5C,CAAC;oBACD,MAAM,IAAI,GAAG,IAAA,qCAAsB,EAC/B,GAAG,EACH,QAAQ,EACR,MAAM,EACN,QAAQ,CAAC,MAAM,CAClB,CAAC;oBACF,IAAI,MAAM,EAAE,QAAQ,EAAE,CAAC;wBACnB,MAAM,IAAA,6BAAkB,EAAC,IAAI,EAAE,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;oBAC5D,CAAC;oBACD,MAAM,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC5B,CAAC;qBAAM,CAAC;oBACJ,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;wBACtB,MAAM,IAAI,GAAG,IAAA,kCAAmB,EAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;wBAC/D,IAAI,MAAM,EAAE,QAAQ,EAAE,CAAC;4BACnB,MAAM,IAAA,6BAAkB,EAAC,IAAI,EAAE,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC;wBAC5D,CAAC;wBACD,MAAM,GAAG,MAAM,QAAQ,CAAC,GAAG,IAAI,CAAC,CAAC;oBACrC,CAAC;yBAAM,CAAC;wBACJ,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC;oBACzB,CAAC;oBAED,MAAM,UAAU,GAAG,mBAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;oBACnD,MAAM,MAAM,GAAG,MAAM,IAAA,sCAAuB,EAAC;wBACzC,GAAG;wBACH,GAAG,EAAE,QAAQ;wBACb,MAAM;wBACN,IAAI,EAAE,UAAU;qBACnB,CAAC,CAAC;oBACH,IAAI,MAAM,CAAC,OAAO,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;wBACzC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC;wBACrB,OAAO;oBACX,CAAC;oBACD,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC;oBACrB,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;wBACd,QAAQ,CAAC,IAAI,CAAC,sBAAY,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;oBACrD,CAAC;yBAAM,CAAC;wBACJ,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBAC/B,CAAC;gBACL,CAAC;YACL,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,KAAK,GAAG,CAAC,CAAC;gBACV,MAAM,IAAA,2BAAe,EAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;YAC5C,CAAC;oBAAS,CAAC;gBACP,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,MAAM,EAAE;oBACnC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM;oBAClC,KAAK;oBACL,SAAS;iBACZ,CAAC,CAAC;YACP,CAAC;QACL,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,CAAC,GAAG,CAAI,IAAY,EAAE,QAA4C,EAAE,MAAoB;QAC1F,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,CAAC,IAAI,CAAI,IAAY,EAAE,QAA4C,EAAE,MAAoB;QAC3F,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,CAAC,GAAG,CAAI,IAAY,EAAE,QAA4C,EAAE,MAAoB;QAC1F,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,CAAC,MAAM,CAAI,IAAY,EAAE,QAA4C,EAAE,MAAoB;QAC7F,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC7D,CAAC;;AArjBc,yBAAa,GAAG,KAAK,CAAC;AACtB,6BAAiB,GAAG,KAAK,CAAC;AAE1B,0BAAc,GAAG,KAAK,CAAC;AAEvB,yBAAa,GAAG,KAAK,CAAC;AAEtB,2BAAe,GAAG,KAAK,CAAC;AAExB,yBAAa,GAAG,KAAK,CAAC;AAEtB,iCAAqB,GAAG,IAAI,OAAO,EAAY,CAAC;AAEhD,uBAAW,GAAG,IAAI,GAAG,EAAU,CAAC;AAKhC,qBAAS,GAAa,EAAE,CAAC;AAsiB5C,kBAAe,WAAW,CAAC;AAS3B,yCAMqB;AALjB,gHAAA,mBAAmB,OAAA;AACnB,mHAAA,sBAAsB,OAAA;AACtB,+GAAA,kBAAkB,OAAA;AAClB,8GAAA,iBAAiB,OAAA;AACjB,iHAAA,oBAAoB,OAAA;AAExB,2CAkBsB;AAjBlB,wGAAA,UAAU,OAAA;AACV,wGAAA,UAAU,OAAA;AACV,yGAAA,WAAW,OAAA;AACX,wGAAA,UAAU,OAAA;AACV,2GAAA,aAAa,OAAA;AACb,4GAAA,cAAc,OAAA;AACd,2GAAA,aAAa,OAAA;AACb,iHAAA,mBAAmB,OAAA;AACnB,wGAAA,UAAU,OAAA;AACV,iGAAA,GAAG,OAAA;AACH,kGAAA,IAAI,OAAA;AACJ,yGAAA,WAAW,OAAA;AACX,0GAAA,YAAY,OAAA;AACZ,yGAAA,WAAW,OAAA;AACX,2GAAA,aAAa,OAAA;AACb,2GAAA,aAAa,OAAA;AACb,mGAAA,KAAK,OAAA;AAET,uCAAyD;AAAhD,mGAAA,YAAY,OAAA;AAAE,+FAAA,QAAQ,OAAA;AAC/B,2CAI2B;AAHvB,oGAAA,WAAW,OAAA;AACX,qGAAA,YAAY,OAAA;AACZ,wGAAA,eAAe,OAAA;AAEnB,uCAAgD;AAAvC,oGAAA,aAAa,OAAA;AACtB,6CAAwE;AAA/D,mGAAA,SAAS,OAAA;AAAE,gGAAA,MAAM,OAAA;AAAE,yGAAA,eAAe,OAAA;AAC3C,yCAS0B;AARtB,kGAAA,UAAU,OAAA;AACV,mGAAA,WAAW,OAAA;AACX,uGAAA,eAAe,OAAA;AACf,oGAAA,YAAY,OAAA;AACZ,oGAAA,YAAY,OAAA;AACZ,+FAAA,OAAO,OAAA;AACP,sGAAA,cAAc,OAAA;AACd,4FAAA,IAAI,OAAA;AAER,mDAK+B;AAJ3B,6GAAA,gBAAgB,OAAA;AAChB,6GAAA,gBAAgB,OAAA;AAChB,yGAAA,YAAY,OAAA;AACZ,4GAAA,eAAe,OAAA;AAEnB,iDAU8B;AAT1B,oGAAA,QAAQ,OAAA;AACR,mGAAA,OAAO,OAAA;AACP,+FAAA,GAAG,OAAA;AACH,+FAAA,GAAG,OAAA;AACH,iGAAA,KAAK,OAAA;AACL,iGAAA,KAAK,OAAA;AACL,kGAAA,MAAM,OAAA;AACN,2GAAA,eAAe,OAAA;AACf,2GAAA,eAAe,OAAA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { Request, Response } from "express";
|
|
2
|
+
import type { RouteOption } from "./types";
|
|
3
|
+
export interface RequestInterceptorContext {
|
|
4
|
+
req: Request;
|
|
5
|
+
res: Response;
|
|
6
|
+
option?: RouteOption;
|
|
7
|
+
skipHandler?: boolean;
|
|
8
|
+
data?: unknown;
|
|
9
|
+
}
|
|
10
|
+
export interface ResponseInterceptorContext {
|
|
11
|
+
req: Request;
|
|
12
|
+
res: Response;
|
|
13
|
+
option?: RouteOption;
|
|
14
|
+
data: unknown;
|
|
15
|
+
wrap: boolean;
|
|
16
|
+
handled: boolean;
|
|
17
|
+
}
|
|
18
|
+
export type RequestInterceptor = (ctx: RequestInterceptorContext) => void | Promise<void>;
|
|
19
|
+
export type ResponseInterceptor = (ctx: ResponseInterceptorContext) => unknown | void | Promise<unknown | void>;
|
|
20
|
+
export declare function addRequestInterceptor(fn: RequestInterceptor): void;
|
|
21
|
+
export declare function addResponseInterceptor(fn: ResponseInterceptor): void;
|
|
22
|
+
export declare function clearInterceptors(): void;
|
|
23
|
+
export declare function getRequestInterceptors(): readonly RequestInterceptor[];
|
|
24
|
+
export declare function getResponseInterceptors(): readonly ResponseInterceptor[];
|
|
25
|
+
export declare function runRequestInterceptors(req: Request, res: Response, option?: RouteOption): Promise<RequestInterceptorContext>;
|
|
26
|
+
export declare function runResponseInterceptors(base: Omit<ResponseInterceptorContext, "wrap" | "handled"> & Partial<Pick<ResponseInterceptorContext, "wrap" | "handled">>): Promise<ResponseInterceptorContext>;
|
|
27
|
+
//# sourceMappingURL=interceptors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interceptors.d.ts","sourceRoot":"","sources":["../../../../src/framework/Application/interceptors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAG3C,MAAM,WAAW,yBAAyB;IACxC,GAAG,EAAE,OAAO,CAAC;IACb,GAAG,EAAE,QAAQ,CAAC;IACd,MAAM,CAAC,EAAE,WAAW,CAAC;IAMrB,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAGD,MAAM,WAAW,0BAA0B;IACzC,GAAG,EAAE,OAAO,CAAC;IACb,GAAG,EAAE,QAAQ,CAAC;IACd,MAAM,CAAC,EAAE,WAAW,CAAC;IAErB,IAAI,EAAE,OAAO,CAAC;IAKd,IAAI,EAAE,OAAO,CAAC;IAKd,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,kBAAkB,GAAG,CAC/B,GAAG,EAAE,yBAAyB,KAC3B,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAQ1B,MAAM,MAAM,mBAAmB,GAAG,CAChC,GAAG,EAAE,0BAA0B,KAC5B,OAAO,GAAG,IAAI,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;AAK9C,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,kBAAkB,GAAG,IAAI,CAElE;AAED,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,mBAAmB,GAAG,IAAI,CAEpE;AAED,wBAAgB,iBAAiB,IAAI,IAAI,CAGxC;AAED,wBAAgB,sBAAsB,IAAI,SAAS,kBAAkB,EAAE,CAEtE;AAED,wBAAgB,uBAAuB,IAAI,SAAS,mBAAmB,EAAE,CAExE;AAED,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,EACb,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,yBAAyB,CAAC,CAOpC;AAED,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,IAAI,CAAC,0BAA0B,EAAE,MAAM,GAAG,SAAS,CAAC,GACxD,OAAO,CAAC,IAAI,CAAC,0BAA0B,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,GAC9D,OAAO,CAAC,0BAA0B,CAAC,CAoBrC"}
|