@pangza/express 0.0.0-stage → 1.0.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/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 +49 -0
- package/Application/index.d.ts.map +1 -0
- package/Application/index.js +504 -0
- package/Application/index.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 +64 -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/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/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 +39 -0
- package/ORM/index.d.ts.map +1 -0
- package/ORM/index.js +113 -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/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/index.d.ts +9 -0
- package/Redis/index.d.ts.map +1 -0
- package/Redis/index.js +36 -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 +252 -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,129 @@
|
|
|
1
|
+
export interface RedissonConfig {
|
|
2
|
+
lockWatchdogTimeout?: number;
|
|
3
|
+
lockWatchInterval?: number;
|
|
4
|
+
}
|
|
5
|
+
export declare const defaultRedissonConfig: Required<RedissonConfig>;
|
|
6
|
+
export interface RLock {
|
|
7
|
+
readonly name: string;
|
|
8
|
+
lock(leaseTimeMs?: number): Promise<void>;
|
|
9
|
+
tryLock(waitTimeMs?: number, leaseTimeMs?: number): Promise<boolean>;
|
|
10
|
+
unlock(): Promise<void>;
|
|
11
|
+
forceUnlock(): Promise<boolean>;
|
|
12
|
+
isLocked(): Promise<boolean>;
|
|
13
|
+
isHeldByCurrentThread(): Promise<boolean>;
|
|
14
|
+
getHoldCount(): Promise<number>;
|
|
15
|
+
remainTimeToLive(): Promise<number>;
|
|
16
|
+
}
|
|
17
|
+
export interface RReadWriteLock {
|
|
18
|
+
readLock(): RLock;
|
|
19
|
+
writeLock(): RLock;
|
|
20
|
+
}
|
|
21
|
+
export interface RSemaphore {
|
|
22
|
+
readonly name: string;
|
|
23
|
+
trySetPermits(permits: number): Promise<boolean>;
|
|
24
|
+
acquire(permits?: number): Promise<void>;
|
|
25
|
+
tryAcquire(permits?: number, waitTimeMs?: number): Promise<boolean>;
|
|
26
|
+
release(permits?: number): Promise<void>;
|
|
27
|
+
availablePermits(): Promise<number>;
|
|
28
|
+
}
|
|
29
|
+
export interface RCountDownLatch {
|
|
30
|
+
readonly name: string;
|
|
31
|
+
trySetCount(count: number): Promise<boolean>;
|
|
32
|
+
countDown(): Promise<void>;
|
|
33
|
+
await(waitTimeMs?: number): Promise<boolean>;
|
|
34
|
+
getCount(): Promise<number>;
|
|
35
|
+
}
|
|
36
|
+
export interface RAtomicLong {
|
|
37
|
+
readonly name: string;
|
|
38
|
+
get(): Promise<number>;
|
|
39
|
+
set(value: number): Promise<void>;
|
|
40
|
+
getAndSet(value: number): Promise<number>;
|
|
41
|
+
incrementAndGet(): Promise<number>;
|
|
42
|
+
decrementAndGet(): Promise<number>;
|
|
43
|
+
addAndGet(delta: number): Promise<number>;
|
|
44
|
+
compareAndSet(expect: number, update: number): Promise<boolean>;
|
|
45
|
+
delete(): Promise<boolean>;
|
|
46
|
+
}
|
|
47
|
+
export interface RBucket<T = unknown> {
|
|
48
|
+
readonly name: string;
|
|
49
|
+
get(): Promise<T | null>;
|
|
50
|
+
set(value: T, ttlSeconds?: number): Promise<void>;
|
|
51
|
+
getAndDelete(): Promise<T | null>;
|
|
52
|
+
compareAndSet(expect: T, update: T): Promise<boolean>;
|
|
53
|
+
trySet(value: T, ttlSeconds?: number): Promise<boolean>;
|
|
54
|
+
delete(): Promise<boolean>;
|
|
55
|
+
isExists(): Promise<boolean>;
|
|
56
|
+
expire(ttlSeconds: number): Promise<boolean>;
|
|
57
|
+
}
|
|
58
|
+
export interface RMap<V = string> {
|
|
59
|
+
readonly name: string;
|
|
60
|
+
get(key: string): Promise<V | undefined>;
|
|
61
|
+
put(key: string, value: V): Promise<void>;
|
|
62
|
+
putAll(entries: Record<string, V>): Promise<void>;
|
|
63
|
+
remove(key: string): Promise<boolean>;
|
|
64
|
+
containsKey(key: string): Promise<boolean>;
|
|
65
|
+
readAllMap(): Promise<Record<string, V>>;
|
|
66
|
+
size(): Promise<number>;
|
|
67
|
+
clear(): Promise<void>;
|
|
68
|
+
}
|
|
69
|
+
export interface RSet {
|
|
70
|
+
readonly name: string;
|
|
71
|
+
add(...members: string[]): Promise<number>;
|
|
72
|
+
remove(...members: string[]): Promise<number>;
|
|
73
|
+
contains(member: string): Promise<boolean>;
|
|
74
|
+
readAll(): Promise<string[]>;
|
|
75
|
+
size(): Promise<number>;
|
|
76
|
+
clear(): Promise<void>;
|
|
77
|
+
}
|
|
78
|
+
export interface RList {
|
|
79
|
+
readonly name: string;
|
|
80
|
+
add(...values: string[]): Promise<number>;
|
|
81
|
+
get(index: number): Promise<string | null>;
|
|
82
|
+
range(start: number, stop: number): Promise<string[]>;
|
|
83
|
+
remove(count: number, value: string): Promise<number>;
|
|
84
|
+
size(): Promise<number>;
|
|
85
|
+
clear(): Promise<void>;
|
|
86
|
+
}
|
|
87
|
+
export interface RScoredSortedSet {
|
|
88
|
+
readonly name: string;
|
|
89
|
+
add(score: number, value: string): Promise<boolean>;
|
|
90
|
+
addAll(members: Array<{
|
|
91
|
+
score: number;
|
|
92
|
+
value: string;
|
|
93
|
+
}>): Promise<number>;
|
|
94
|
+
remove(...values: string[]): Promise<number>;
|
|
95
|
+
rank(value: string): Promise<number | null>;
|
|
96
|
+
score(value: string): Promise<number | null>;
|
|
97
|
+
valueRange(start: number, stop: number): Promise<string[]>;
|
|
98
|
+
valueRangeByScore(min: number, max: number): Promise<string[]>;
|
|
99
|
+
size(): Promise<number>;
|
|
100
|
+
clear(): Promise<void>;
|
|
101
|
+
}
|
|
102
|
+
export interface RTopic {
|
|
103
|
+
readonly name: string;
|
|
104
|
+
publish(message: string): Promise<number>;
|
|
105
|
+
addListener(listener: (message: string) => void): Promise<() => Promise<void>>;
|
|
106
|
+
}
|
|
107
|
+
export interface RRateLimiter {
|
|
108
|
+
readonly name: string;
|
|
109
|
+
trySetRate(rate: number, rateIntervalMs: number): Promise<boolean>;
|
|
110
|
+
tryAcquire(permits?: number): Promise<boolean>;
|
|
111
|
+
availablePermits(): Promise<number>;
|
|
112
|
+
}
|
|
113
|
+
export interface RBitSet {
|
|
114
|
+
readonly name: string;
|
|
115
|
+
get(bitIndex: number): Promise<boolean>;
|
|
116
|
+
set(bitIndex: number, value?: boolean): Promise<boolean>;
|
|
117
|
+
clear(bitIndex?: number): Promise<void>;
|
|
118
|
+
cardinality(): Promise<number>;
|
|
119
|
+
size(): Promise<number>;
|
|
120
|
+
}
|
|
121
|
+
export interface RQueue {
|
|
122
|
+
readonly name: string;
|
|
123
|
+
offer(...values: string[]): Promise<number>;
|
|
124
|
+
poll(): Promise<string | null>;
|
|
125
|
+
peek(): Promise<string | null>;
|
|
126
|
+
size(): Promise<number>;
|
|
127
|
+
clear(): Promise<void>;
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/framework/Redis/redisson/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/framework/Redis/redisson/types.ts"],"names":[],"mappings":";;;AAQa,QAAA,qBAAqB,GAA6B;IAC7D,mBAAmB,EAAE,KAAM;IAC3B,iBAAiB,EAAE,EAAE;CACtB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare function createClientId(): string;
|
|
2
|
+
export declare function currentThreadId(clientId: string): string;
|
|
3
|
+
export declare function runWithThreadIdAsync<T>(threadId: string, fn: () => Promise<T>): Promise<T>;
|
|
4
|
+
export declare function sleep(ms: number): Promise<void>;
|
|
5
|
+
export declare function channelName(lockName: string): string;
|
|
6
|
+
export declare function evalScript(script: string, keys: string[], args: Array<string | number>): Promise<unknown>;
|
|
7
|
+
export declare function evalNumber(script: string, keys: string[], args: Array<string | number>): Promise<number | null>;
|
|
8
|
+
export declare function waitNotify(channel: string, timeoutMs: number): Promise<boolean>;
|
|
9
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/framework/Redis/redisson/utils.ts"],"names":[],"mappings":"AAKA,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAOD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAKxD;AAED,wBAAsB,oBAAoB,CAAC,CAAC,EAC1C,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACnB,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEpD;AAGD,wBAAsB,UAAU,CAC9B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAC3B,OAAO,CAAC,OAAO,CAAC,CAMlB;AAED,wBAAsB,UAAU,CAC9B,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EAAE,EACd,IAAI,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAC3B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAIxB;AAGD,wBAAsB,UAAU,CAC9B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,OAAO,CAAC,CAuBlB"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createClientId = createClientId;
|
|
7
|
+
exports.currentThreadId = currentThreadId;
|
|
8
|
+
exports.runWithThreadIdAsync = runWithThreadIdAsync;
|
|
9
|
+
exports.sleep = sleep;
|
|
10
|
+
exports.channelName = channelName;
|
|
11
|
+
exports.evalScript = evalScript;
|
|
12
|
+
exports.evalNumber = evalNumber;
|
|
13
|
+
exports.waitNotify = waitNotify;
|
|
14
|
+
const async_hooks_1 = require("async_hooks");
|
|
15
|
+
const crypto_1 = require("crypto");
|
|
16
|
+
const Redis_1 = __importDefault(require("../Redis"));
|
|
17
|
+
function createClientId() {
|
|
18
|
+
return `${process.pid}-${(0, crypto_1.randomBytes)(8).toString("hex")}`;
|
|
19
|
+
}
|
|
20
|
+
const threadAls = new async_hooks_1.AsyncLocalStorage();
|
|
21
|
+
let threadSeq = 0;
|
|
22
|
+
function currentThreadId(clientId) {
|
|
23
|
+
const existing = threadAls.getStore();
|
|
24
|
+
if (existing)
|
|
25
|
+
return existing;
|
|
26
|
+
threadSeq += 1;
|
|
27
|
+
return `${clientId}:${threadSeq}`;
|
|
28
|
+
}
|
|
29
|
+
async function runWithThreadIdAsync(threadId, fn) {
|
|
30
|
+
return threadAls.run(threadId, fn);
|
|
31
|
+
}
|
|
32
|
+
function sleep(ms) {
|
|
33
|
+
return new Promise((resolve) => setTimeout(resolve, Math.max(0, ms)));
|
|
34
|
+
}
|
|
35
|
+
function channelName(lockName) {
|
|
36
|
+
return `pangza_lock_channel:{${lockName}}`;
|
|
37
|
+
}
|
|
38
|
+
async function evalScript(script, keys, args) {
|
|
39
|
+
const client = await Redis_1.default.getClient();
|
|
40
|
+
return client.eval(script, {
|
|
41
|
+
keys,
|
|
42
|
+
arguments: args.map(String),
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
async function evalNumber(script, keys, args) {
|
|
46
|
+
const result = await evalScript(script, keys, args);
|
|
47
|
+
if (result === null || result === undefined)
|
|
48
|
+
return null;
|
|
49
|
+
return Number(result);
|
|
50
|
+
}
|
|
51
|
+
async function waitNotify(channel, timeoutMs) {
|
|
52
|
+
if (timeoutMs <= 0)
|
|
53
|
+
return false;
|
|
54
|
+
let settled = false;
|
|
55
|
+
let unsub = null;
|
|
56
|
+
return new Promise((resolve) => {
|
|
57
|
+
const timer = setTimeout(() => {
|
|
58
|
+
if (settled)
|
|
59
|
+
return;
|
|
60
|
+
settled = true;
|
|
61
|
+
void unsub?.();
|
|
62
|
+
resolve(false);
|
|
63
|
+
}, timeoutMs);
|
|
64
|
+
void Redis_1.default.subscribe(channel, () => {
|
|
65
|
+
if (settled)
|
|
66
|
+
return;
|
|
67
|
+
settled = true;
|
|
68
|
+
clearTimeout(timer);
|
|
69
|
+
void unsub?.();
|
|
70
|
+
resolve(true);
|
|
71
|
+
}).then((u) => {
|
|
72
|
+
unsub = u;
|
|
73
|
+
if (settled)
|
|
74
|
+
void u();
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../src/framework/Redis/redisson/utils.ts"],"names":[],"mappings":"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"}
|
package/Redis/types.d.ts
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
export interface RedisTlsConfig {
|
|
2
|
+
enabled?: boolean;
|
|
3
|
+
rejectUnauthorized?: boolean;
|
|
4
|
+
ca?: string;
|
|
5
|
+
cert?: string;
|
|
6
|
+
key?: string;
|
|
7
|
+
}
|
|
8
|
+
export interface RedisNodeEndpoint {
|
|
9
|
+
host: string;
|
|
10
|
+
port?: number;
|
|
11
|
+
}
|
|
12
|
+
export interface RedisClusterConfig {
|
|
13
|
+
nodes?: RedisNodeEndpoint[];
|
|
14
|
+
useReplicas?: boolean;
|
|
15
|
+
}
|
|
16
|
+
export interface RedisSentinelConfig {
|
|
17
|
+
name?: string;
|
|
18
|
+
nodes?: RedisNodeEndpoint[];
|
|
19
|
+
}
|
|
20
|
+
export type RedisMode = "standalone" | "cluster" | "sentinel";
|
|
21
|
+
export interface RedisConfig {
|
|
22
|
+
host?: string;
|
|
23
|
+
port?: number;
|
|
24
|
+
password?: string;
|
|
25
|
+
username?: string;
|
|
26
|
+
db?: number;
|
|
27
|
+
keyPrefix?: string;
|
|
28
|
+
connectTimeout?: number;
|
|
29
|
+
reconnect?: boolean;
|
|
30
|
+
maxReconnectDelay?: number;
|
|
31
|
+
tls?: RedisTlsConfig;
|
|
32
|
+
mode?: RedisMode;
|
|
33
|
+
cluster?: RedisClusterConfig;
|
|
34
|
+
sentinel?: RedisSentinelConfig;
|
|
35
|
+
}
|
|
36
|
+
export declare const defaultRedisConfig: Required<Pick<RedisConfig, "host" | "port" | "db" | "keyPrefix" | "connectTimeout" | "reconnect" | "maxReconnectDelay" | "mode">> & RedisConfig;
|
|
37
|
+
export declare const RateLimiterType: {
|
|
38
|
+
readonly DEFAULT: "DEFAULT";
|
|
39
|
+
readonly IP: "IP";
|
|
40
|
+
readonly USER: "USER";
|
|
41
|
+
};
|
|
42
|
+
export type RateLimiterTypeValue = (typeof RateLimiterType)[keyof typeof RateLimiterType];
|
|
43
|
+
export type RateLimitMode = "fixed" | "sliding";
|
|
44
|
+
export interface RateLimitOption {
|
|
45
|
+
time?: number;
|
|
46
|
+
count?: number;
|
|
47
|
+
key?: string;
|
|
48
|
+
type?: RateLimiterTypeValue | "DEFAULT" | "IP" | "USER";
|
|
49
|
+
mode?: RateLimitMode;
|
|
50
|
+
}
|
|
51
|
+
export interface RepeatSubmitOption {
|
|
52
|
+
interval?: number;
|
|
53
|
+
message?: string;
|
|
54
|
+
}
|
|
55
|
+
export interface CacheableOption {
|
|
56
|
+
key?: string;
|
|
57
|
+
ttl?: number;
|
|
58
|
+
keyGenerator?: (...args: unknown[]) => string;
|
|
59
|
+
}
|
|
60
|
+
export interface CacheEvictOption {
|
|
61
|
+
key?: string;
|
|
62
|
+
keyGenerator?: (...args: unknown[]) => string;
|
|
63
|
+
allEntries?: boolean;
|
|
64
|
+
}
|
|
65
|
+
export interface TryLockOption {
|
|
66
|
+
ttlMs?: number;
|
|
67
|
+
token?: string;
|
|
68
|
+
}
|
|
69
|
+
export interface WithLockOption extends TryLockOption {
|
|
70
|
+
renewIntervalMs?: number;
|
|
71
|
+
}
|
|
72
|
+
export interface LockHandle {
|
|
73
|
+
key: string;
|
|
74
|
+
token: string;
|
|
75
|
+
release: () => Promise<boolean>;
|
|
76
|
+
renew: (ttlMs: number) => Promise<boolean>;
|
|
77
|
+
}
|
|
78
|
+
export declare const RATE_LIMIT_KEY = "rateLimiter:";
|
|
79
|
+
export declare const REPEAT_SUBMIT_KEY = "repeat:submit:";
|
|
80
|
+
export declare const CACHE_KEY = "cache:";
|
|
81
|
+
export declare const LOCK_KEY = "lock:";
|
|
82
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/framework/Redis/types.ts"],"names":[],"mappings":"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"}
|
package/Redis/types.js
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LOCK_KEY = exports.CACHE_KEY = exports.REPEAT_SUBMIT_KEY = exports.RATE_LIMIT_KEY = exports.RateLimiterType = exports.defaultRedisConfig = void 0;
|
|
4
|
+
exports.defaultRedisConfig = {
|
|
5
|
+
host: "127.0.0.1",
|
|
6
|
+
port: 6379,
|
|
7
|
+
db: 0,
|
|
8
|
+
keyPrefix: "pangza:",
|
|
9
|
+
connectTimeout: 3000,
|
|
10
|
+
reconnect: true,
|
|
11
|
+
maxReconnectDelay: 10000,
|
|
12
|
+
mode: "standalone",
|
|
13
|
+
};
|
|
14
|
+
exports.RateLimiterType = {
|
|
15
|
+
DEFAULT: "DEFAULT",
|
|
16
|
+
IP: "IP",
|
|
17
|
+
USER: "USER",
|
|
18
|
+
};
|
|
19
|
+
exports.RATE_LIMIT_KEY = "rateLimiter:";
|
|
20
|
+
exports.REPEAT_SUBMIT_KEY = "repeat:submit:";
|
|
21
|
+
exports.CACHE_KEY = "cache:";
|
|
22
|
+
exports.LOCK_KEY = "lock:";
|
|
23
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/framework/Redis/types.ts"],"names":[],"mappings":";;;AAuEa,QAAA,kBAAkB,GAaf;IACd,IAAI,EAAE,WAAW;IACjB,IAAI,EAAE,IAAI;IACV,EAAE,EAAE,CAAC;IACL,SAAS,EAAE,SAAS;IACpB,cAAc,EAAE,IAAI;IACpB,SAAS,EAAE,IAAI;IACf,iBAAiB,EAAE,KAAK;IACxB,IAAI,EAAE,YAAY;CACnB,CAAC;AAGW,QAAA,eAAe,GAAG;IAC7B,OAAO,EAAE,SAAS;IAClB,EAAE,EAAE,IAAI;IACR,IAAI,EAAE,MAAM;CACJ,CAAC;AA4EE,QAAA,cAAc,GAAG,cAAc,CAAC;AAChC,QAAA,iBAAiB,GAAG,gBAAgB,CAAC;AACrC,QAAA,SAAS,GAAG,QAAQ,CAAC;AACrB,QAAA,QAAQ,GAAG,OAAO,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { QueryWrapper } from "../ORM";
|
|
2
|
+
import type { IPage, PageQuery } from "../ORM";
|
|
3
|
+
import type { IService } from "./types";
|
|
4
|
+
export declare class BaseService<T extends Record<string, any> = Record<string, any>> implements IService<T> {
|
|
5
|
+
selectById(_id: string | number): Promise<T | null>;
|
|
6
|
+
selectOne(_wrapper?: QueryWrapper): Promise<T | null>;
|
|
7
|
+
selectList(_wrapper?: QueryWrapper, _limit?: number): Promise<T[]>;
|
|
8
|
+
selectCount(_wrapper?: QueryWrapper): Promise<number>;
|
|
9
|
+
selectPage(_page?: PageQuery, _wrapper?: QueryWrapper): Promise<IPage<T>>;
|
|
10
|
+
insert(_entity: Partial<T>): Promise<number>;
|
|
11
|
+
saveBatch(_entities: Array<Partial<T>>): Promise<number>;
|
|
12
|
+
updateById(_entity: Partial<T>): Promise<number>;
|
|
13
|
+
update(_entity: Partial<T>, _wrapper: QueryWrapper): Promise<number>;
|
|
14
|
+
deleteById(_id: string | number): Promise<number>;
|
|
15
|
+
deleteByIds(_ids: Array<string | number>): Promise<number>;
|
|
16
|
+
delete(_wrapper: QueryWrapper): Promise<number>;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=BaseService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseService.d.ts","sourceRoot":"","sources":["../../../../src/framework/Service/BaseService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAUxC,qBAAa,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAC1E,YAAW,QAAQ,CAAC,CAAC,CAAC;IAEtB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAGnD,SAAS,CAAC,QAAQ,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAGrD,UAAU,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAGlE,WAAW,CAAC,QAAQ,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAGrD,UAAU,CACR,KAAK,CAAC,EAAE,SAAS,EACjB,QAAQ,CAAC,EAAE,YAAY,GACtB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAGpB,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAG5C,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAGxD,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAGhD,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAGpE,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAGjD,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAG1D,MAAM,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;CAGhD"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BaseService = void 0;
|
|
4
|
+
function notWired(name) {
|
|
5
|
+
throw new Error(`[Service] 方法未注入,请使用 @Service(Mapper): ${name}`);
|
|
6
|
+
}
|
|
7
|
+
class BaseService {
|
|
8
|
+
selectById(_id) {
|
|
9
|
+
return notWired("selectById");
|
|
10
|
+
}
|
|
11
|
+
selectOne(_wrapper) {
|
|
12
|
+
return notWired("selectOne");
|
|
13
|
+
}
|
|
14
|
+
selectList(_wrapper, _limit) {
|
|
15
|
+
return notWired("selectList");
|
|
16
|
+
}
|
|
17
|
+
selectCount(_wrapper) {
|
|
18
|
+
return notWired("selectCount");
|
|
19
|
+
}
|
|
20
|
+
selectPage(_page, _wrapper) {
|
|
21
|
+
return notWired("selectPage");
|
|
22
|
+
}
|
|
23
|
+
insert(_entity) {
|
|
24
|
+
return notWired("insert");
|
|
25
|
+
}
|
|
26
|
+
saveBatch(_entities) {
|
|
27
|
+
return notWired("saveBatch");
|
|
28
|
+
}
|
|
29
|
+
updateById(_entity) {
|
|
30
|
+
return notWired("updateById");
|
|
31
|
+
}
|
|
32
|
+
update(_entity, _wrapper) {
|
|
33
|
+
return notWired("update");
|
|
34
|
+
}
|
|
35
|
+
deleteById(_id) {
|
|
36
|
+
return notWired("deleteById");
|
|
37
|
+
}
|
|
38
|
+
deleteByIds(_ids) {
|
|
39
|
+
return notWired("deleteByIds");
|
|
40
|
+
}
|
|
41
|
+
delete(_wrapper) {
|
|
42
|
+
return notWired("delete");
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.BaseService = BaseService;
|
|
46
|
+
//# sourceMappingURL=BaseService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseService.js","sourceRoot":"","sources":["../../../../src/framework/Service/BaseService.ts"],"names":[],"mappings":";;;AAIA,SAAS,QAAQ,CAAC,IAAY;IAC5B,MAAM,IAAI,KAAK,CAAC,yCAAyC,IAAI,EAAE,CAAC,CAAC;AACnE,CAAC;AAMD,MAAa,WAAW;IAGtB,UAAU,CAAC,GAAoB;QAC7B,OAAO,QAAQ,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IACD,SAAS,CAAC,QAAuB;QAC/B,OAAO,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IACD,UAAU,CAAC,QAAuB,EAAE,MAAe;QACjD,OAAO,QAAQ,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IACD,WAAW,CAAC,QAAuB;QACjC,OAAO,QAAQ,CAAC,aAAa,CAAC,CAAC;IACjC,CAAC;IACD,UAAU,CACR,KAAiB,EACjB,QAAuB;QAEvB,OAAO,QAAQ,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IACD,MAAM,CAAC,OAAmB;QACxB,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IACD,SAAS,CAAC,SAA4B;QACpC,OAAO,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IACD,UAAU,CAAC,OAAmB;QAC5B,OAAO,QAAQ,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IACD,MAAM,CAAC,OAAmB,EAAE,QAAsB;QAChD,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IACD,UAAU,CAAC,GAAoB;QAC7B,OAAO,QAAQ,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IACD,WAAW,CAAC,IAA4B;QACtC,OAAO,QAAQ,CAAC,aAAa,CAAC,CAAC;IACjC,CAAC;IACD,MAAM,CAAC,QAAsB;QAC3B,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;CACF;AA1CD,kCA0CC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { QueryWrapper } from "../ORM";
|
|
2
|
+
import type { IPage, PageQuery } from "../ORM";
|
|
3
|
+
import type { IService } from "./types";
|
|
4
|
+
export declare class MapperType<T extends Record<string, any> = Record<string, any>> implements IService<T> {
|
|
5
|
+
selectById(_id: string | number): Promise<T | null>;
|
|
6
|
+
selectOne(_wrapper?: QueryWrapper): Promise<T | null>;
|
|
7
|
+
selectList(_wrapper?: QueryWrapper, _limit?: number): Promise<T[]>;
|
|
8
|
+
selectCount(_wrapper?: QueryWrapper): Promise<number>;
|
|
9
|
+
selectPage(_page?: PageQuery, _wrapper?: QueryWrapper): Promise<IPage<T>>;
|
|
10
|
+
insert(_entity: Partial<T>): Promise<number>;
|
|
11
|
+
saveBatch(_entities: Array<Partial<T>>): Promise<number>;
|
|
12
|
+
updateById(_entity: Partial<T>): Promise<number>;
|
|
13
|
+
update(_entity: Partial<T>, _wrapper: QueryWrapper): Promise<number>;
|
|
14
|
+
deleteById(_id: string | number): Promise<number>;
|
|
15
|
+
deleteByIds(_ids: Array<string | number>): Promise<number>;
|
|
16
|
+
delete(_wrapper: QueryWrapper): Promise<number>;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=MapperType.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MapperType.d.ts","sourceRoot":"","sources":["../../../../src/framework/Service/MapperType.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAUxC,qBAAa,UAAU,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CACzE,YAAW,QAAQ,CAAC,CAAC,CAAC;IAEtB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAGnD,SAAS,CAAC,QAAQ,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAGrD,UAAU,CAAC,QAAQ,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAGlE,WAAW,CAAC,QAAQ,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAGrD,UAAU,CACR,KAAK,CAAC,EAAE,SAAS,EACjB,QAAQ,CAAC,EAAE,YAAY,GACtB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAGpB,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAG5C,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAGxD,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAGhD,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAGpE,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAGjD,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAG1D,MAAM,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;CAGhD"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MapperType = void 0;
|
|
4
|
+
function notWired(name) {
|
|
5
|
+
throw new Error(`[Mapper] 方法未注入,请使用 @Mapper(table): ${name}`);
|
|
6
|
+
}
|
|
7
|
+
class MapperType {
|
|
8
|
+
selectById(_id) {
|
|
9
|
+
return notWired("selectById");
|
|
10
|
+
}
|
|
11
|
+
selectOne(_wrapper) {
|
|
12
|
+
return notWired("selectOne");
|
|
13
|
+
}
|
|
14
|
+
selectList(_wrapper, _limit) {
|
|
15
|
+
return notWired("selectList");
|
|
16
|
+
}
|
|
17
|
+
selectCount(_wrapper) {
|
|
18
|
+
return notWired("selectCount");
|
|
19
|
+
}
|
|
20
|
+
selectPage(_page, _wrapper) {
|
|
21
|
+
return notWired("selectPage");
|
|
22
|
+
}
|
|
23
|
+
insert(_entity) {
|
|
24
|
+
return notWired("insert");
|
|
25
|
+
}
|
|
26
|
+
saveBatch(_entities) {
|
|
27
|
+
return notWired("saveBatch");
|
|
28
|
+
}
|
|
29
|
+
updateById(_entity) {
|
|
30
|
+
return notWired("updateById");
|
|
31
|
+
}
|
|
32
|
+
update(_entity, _wrapper) {
|
|
33
|
+
return notWired("update");
|
|
34
|
+
}
|
|
35
|
+
deleteById(_id) {
|
|
36
|
+
return notWired("deleteById");
|
|
37
|
+
}
|
|
38
|
+
deleteByIds(_ids) {
|
|
39
|
+
return notWired("deleteByIds");
|
|
40
|
+
}
|
|
41
|
+
delete(_wrapper) {
|
|
42
|
+
return notWired("delete");
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.MapperType = MapperType;
|
|
46
|
+
//# sourceMappingURL=MapperType.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MapperType.js","sourceRoot":"","sources":["../../../../src/framework/Service/MapperType.ts"],"names":[],"mappings":";;;AAIA,SAAS,QAAQ,CAAC,IAAY;IAC5B,MAAM,IAAI,KAAK,CAAC,sCAAsC,IAAI,EAAE,CAAC,CAAC;AAChE,CAAC;AAMD,MAAa,UAAU;IAGrB,UAAU,CAAC,GAAoB;QAC7B,OAAO,QAAQ,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IACD,SAAS,CAAC,QAAuB;QAC/B,OAAO,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IACD,UAAU,CAAC,QAAuB,EAAE,MAAe;QACjD,OAAO,QAAQ,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IACD,WAAW,CAAC,QAAuB;QACjC,OAAO,QAAQ,CAAC,aAAa,CAAC,CAAC;IACjC,CAAC;IACD,UAAU,CACR,KAAiB,EACjB,QAAuB;QAEvB,OAAO,QAAQ,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IACD,MAAM,CAAC,OAAmB;QACxB,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IACD,SAAS,CAAC,SAA4B;QACpC,OAAO,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IACD,UAAU,CAAC,OAAmB;QAC5B,OAAO,QAAQ,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IACD,MAAM,CAAC,OAAmB,EAAE,QAAsB;QAChD,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;IACD,UAAU,CAAC,GAAoB;QAC7B,OAAO,QAAQ,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;IACD,WAAW,CAAC,IAA4B;QACtC,OAAO,QAAQ,CAAC,aAAa,CAAC,CAAC;IACjC,CAAC;IACD,MAAM,CAAC,QAAsB;QAC3B,OAAO,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC5B,CAAC;CACF;AA1CD,gCA0CC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import "reflect-metadata";
|
|
2
|
+
import { type Ctor } from "./container";
|
|
3
|
+
export type BeanToken = Ctor | string | symbol;
|
|
4
|
+
export interface BeanMethodMeta {
|
|
5
|
+
method: string;
|
|
6
|
+
token: BeanToken;
|
|
7
|
+
name?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface BeanOptions {
|
|
10
|
+
token?: BeanToken;
|
|
11
|
+
name?: string;
|
|
12
|
+
}
|
|
13
|
+
export declare function Bean(tokenOrOptions?: BeanToken | BeanOptions): MethodDecorator;
|
|
14
|
+
export declare function getBeanMethods(ctor: Function): BeanMethodMeta[];
|
|
15
|
+
export declare function registerBeansFromComponent(Ctor: Ctor): void;
|
|
16
|
+
//# sourceMappingURL=bean.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bean.d.ts","sourceRoot":"","sources":["../../../../src/framework/Service/bean.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAa,KAAK,IAAI,EAAE,MAAM,aAAa,CAAC;AAInD,MAAM,MAAM,SAAS,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;AAE/C,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IAEf,KAAK,EAAE,SAAS,CAAC;IAEjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,WAAW;IAK1B,KAAK,CAAC,EAAE,SAAS,CAAC;IAElB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAiCD,wBAAgB,IAAI,CAClB,cAAc,CAAC,EAAE,SAAS,GAAG,WAAW,GACvC,eAAe,CAoBjB;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,cAAc,EAAE,CAE/D;AAMD,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAqC3D"}
|
package/Service/bean.js
ADDED
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Bean = Bean;
|
|
4
|
+
exports.getBeanMethods = getBeanMethods;
|
|
5
|
+
exports.registerBeansFromComponent = registerBeansFromComponent;
|
|
6
|
+
require("reflect-metadata");
|
|
7
|
+
const container_1 = require("./container");
|
|
8
|
+
const BEAN_METHODS_KEY = Symbol.for("pangza.ioc.beanMethods");
|
|
9
|
+
function beanList(ctor) {
|
|
10
|
+
return (Reflect.getOwnMetadata(BEAN_METHODS_KEY, ctor) ?? []);
|
|
11
|
+
}
|
|
12
|
+
function Bean(tokenOrOptions) {
|
|
13
|
+
return (target, propertyKey, _descriptor) => {
|
|
14
|
+
const method = String(propertyKey);
|
|
15
|
+
let token = method;
|
|
16
|
+
let name;
|
|
17
|
+
if (typeof tokenOrOptions === "string" || typeof tokenOrOptions === "symbol") {
|
|
18
|
+
token = tokenOrOptions;
|
|
19
|
+
if (typeof tokenOrOptions === "string")
|
|
20
|
+
name = tokenOrOptions;
|
|
21
|
+
}
|
|
22
|
+
else if (typeof tokenOrOptions === "function") {
|
|
23
|
+
token = tokenOrOptions;
|
|
24
|
+
}
|
|
25
|
+
else if (tokenOrOptions && typeof tokenOrOptions === "object") {
|
|
26
|
+
if (tokenOrOptions.token != null)
|
|
27
|
+
token = tokenOrOptions.token;
|
|
28
|
+
if (tokenOrOptions.name?.trim())
|
|
29
|
+
name = tokenOrOptions.name.trim();
|
|
30
|
+
}
|
|
31
|
+
const ctor = target.constructor;
|
|
32
|
+
const list = [...beanList(ctor), { method, token, name }];
|
|
33
|
+
Reflect.defineMetadata(BEAN_METHODS_KEY, list, ctor);
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
function getBeanMethods(ctor) {
|
|
37
|
+
return beanList(ctor);
|
|
38
|
+
}
|
|
39
|
+
function registerBeansFromComponent(Ctor) {
|
|
40
|
+
const methods = getBeanMethods(Ctor);
|
|
41
|
+
if (!methods.length)
|
|
42
|
+
return;
|
|
43
|
+
const instance = container_1.Container.get(Ctor);
|
|
44
|
+
for (const meta of methods) {
|
|
45
|
+
const fn = instance[meta.method];
|
|
46
|
+
if (typeof fn !== "function") {
|
|
47
|
+
throw new Error(`[Bean] ${Ctor.name}.${meta.method} 不是可调用的工厂方法`);
|
|
48
|
+
}
|
|
49
|
+
const produced = fn.call(instance);
|
|
50
|
+
const bindValue = (value) => {
|
|
51
|
+
container_1.Container.bindConstant(meta.token, value);
|
|
52
|
+
if (meta.name && meta.name !== meta.token) {
|
|
53
|
+
container_1.Container.bindConstant(meta.name, value);
|
|
54
|
+
}
|
|
55
|
+
if (typeof meta.token !== "string" &&
|
|
56
|
+
meta.method &&
|
|
57
|
+
!container_1.Container.has(meta.method)) {
|
|
58
|
+
container_1.Container.bindConstant(meta.method, value);
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
if (produced != null && typeof produced.then === "function") {
|
|
62
|
+
void produced.then(bindValue, (err) => {
|
|
63
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
64
|
+
console.error(`[Bean] ${Ctor.name}.${meta.method} 注册失败: ${msg}`);
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
bindValue(produced);
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=bean.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bean.js","sourceRoot":"","sources":["../../../../src/framework/Service/bean.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type ServiceIdentifier } from "inversify";
|
|
2
|
+
export type Ctor<T = any> = new (...args: any[]) => T;
|
|
3
|
+
declare class AppContainer {
|
|
4
|
+
readonly raw: any;
|
|
5
|
+
private readonly boundClasses;
|
|
6
|
+
ensureInjectable(ctor: Ctor): void;
|
|
7
|
+
bindClass<T>(ctor: Ctor<T>): void;
|
|
8
|
+
getBoundClasses(): Ctor[];
|
|
9
|
+
bindAlias<T>(name: string, ctor: Ctor<T>): void;
|
|
10
|
+
bindConstant<T>(id: ServiceIdentifier | Ctor | string | symbol, value: T): void;
|
|
11
|
+
has(id: ServiceIdentifier | Ctor): boolean;
|
|
12
|
+
get<T>(ctor: Ctor<T>): T;
|
|
13
|
+
get<T = unknown>(id: string | symbol): T;
|
|
14
|
+
clear(): void;
|
|
15
|
+
}
|
|
16
|
+
export declare const Container: AppContainer;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=container.d.ts.map
|