@midwayjs/decorator 3.0.2 → 3.0.4-beta.1
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/package.json +3 -4
- package/dist/constant.js.map +0 -1
- package/dist/decorator/common/aspect.js.map +0 -1
- package/dist/decorator/common/autoload.js.map +0 -1
- package/dist/decorator/common/configuration.js.map +0 -1
- package/dist/decorator/common/filter.js.map +0 -1
- package/dist/decorator/common/framework.js.map +0 -1
- package/dist/decorator/common/index.js.map +0 -1
- package/dist/decorator/common/inject.js.map +0 -1
- package/dist/decorator/common/middleware.js.map +0 -1
- package/dist/decorator/common/objectDef.js.map +0 -1
- package/dist/decorator/common/pipeline.js.map +0 -1
- package/dist/decorator/common/provide.js.map +0 -1
- package/dist/decorator/faas/serverlessTrigger.js.map +0 -1
- package/dist/decorator/framework/index.js.map +0 -1
- package/dist/decorator/framework/schedule.js.map +0 -1
- package/dist/decorator/index.js.map +0 -1
- package/dist/decorator/microservice/consumer.js.map +0 -1
- package/dist/decorator/microservice/provider.js.map +0 -1
- package/dist/decorator/microservice/rabbitmqListener.js.map +0 -1
- package/dist/decorator/rpc/hsf.js.map +0 -1
- package/dist/decorator/task/queue.js.map +0 -1
- package/dist/decorator/task/task.js.map +0 -1
- package/dist/decorator/task/taskLocal.js.map +0 -1
- package/dist/decorator/web/controller.js.map +0 -1
- package/dist/decorator/web/paramMapping.js.map +0 -1
- package/dist/decorator/web/requestMapping.js.map +0 -1
- package/dist/decorator/web/response.js.map +0 -1
- package/dist/decorator/ws/webSocketController.js.map +0 -1
- package/dist/decorator/ws/webSocketEvent.js.map +0 -1
- package/dist/decoratorManager.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/interface.js.map +0 -1
- package/dist/util/camelCase.js.map +0 -1
- package/dist/util/format.js.map +0 -1
- package/dist/util/fs.js.map +0 -1
- package/dist/util/index.js.map +0 -1
- package/dist/util/uuid.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@midwayjs/decorator",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.4-beta.1",
|
|
4
4
|
"description": "definition decorator for midway project",
|
|
5
5
|
"main": "dist/index",
|
|
6
6
|
"typings": "dist/index.d.ts",
|
|
@@ -23,8 +23,7 @@
|
|
|
23
23
|
],
|
|
24
24
|
"files": [
|
|
25
25
|
"dist/**/*.js",
|
|
26
|
-
"dist/**/*.d.ts"
|
|
27
|
-
"dist/**/*.js.map"
|
|
26
|
+
"dist/**/*.d.ts"
|
|
28
27
|
],
|
|
29
28
|
"engines": {
|
|
30
29
|
"node": ">=12"
|
|
@@ -37,5 +36,5 @@
|
|
|
37
36
|
"publishConfig": {
|
|
38
37
|
"access": "public"
|
|
39
38
|
},
|
|
40
|
-
"gitHead": "
|
|
39
|
+
"gitHead": "52bc37e7a570806c121b33a0e8ac1cd084445f5d"
|
|
41
40
|
}
|
package/dist/constant.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"constant.js","sourceRoot":"","sources":["../src/constant.ts"],"names":[],"mappings":";;;;AAAA,sCAAsC;AACzB,QAAA,GAAG,GAAG,sBAAsB,CAAC;AAE1C,SAAS;AACI,QAAA,YAAY,GAAG,iBAAiB,CAAC;AACjC,QAAA,iBAAiB,GAAG,sBAAsB,CAAC;AAC3C,QAAA,aAAa,GAAG,kBAAkB,CAAC;AACnC,QAAA,UAAU,GAAG,eAAe,CAAC;AAC7B,QAAA,SAAS,GAAG,cAAc,CAAC;AAC3B,QAAA,SAAS,GAAG,cAAc,CAAC;AAExC,OAAO;AACM,QAAA,QAAQ,GAAG,WAAW,CAAC;AACvB,QAAA,mBAAmB,GAAG,0BAA0B,CAAC;AAE9D,MAAM;AACO,QAAA,cAAc,GAAG,gBAAgB,CAAC;AAClC,QAAA,cAAc,GAAG,YAAY,CAAC;AAC9B,QAAA,oBAAoB,GAAG,kBAAkB,CAAC;AAC1C,QAAA,gBAAgB,GAAG,cAAc,CAAC;AAClC,QAAA,sBAAsB,GAAG,wBAAwB,CAAC;AAClD,QAAA,qBAAqB,GAAG,uBAAuB,CAAC;AAChD,QAAA,mBAAmB,GAAG,qBAAqB,CAAC;AAC5C,QAAA,yBAAyB,GAAG,2BAA2B,CAAC;AACxD,QAAA,mBAAmB,GAAG,qBAAqB,CAAC;AAEzD,OAAO;AACM,QAAA,eAAe,GAAG,WAAW,CAAC;AAC9B,QAAA,oBAAoB,GAAG,mBAAmB,CAAC;AAC3C,QAAA,0BAA0B,GAAG,sBAAsB,CAAC;AACpD,QAAA,8BAA8B,GAAG,8BAA8B,CAAC;AAChE,QAAA,qBAAqB,GAAG,iBAAiB,CAAC;AAC1C,QAAA,yBAAyB,GAAG,yBAAyB,CAAC;AAEnE,KAAK;AACQ,QAAA,iBAAiB,GAAG,eAAe,CAAC;AACpC,QAAA,YAAY,GAAG,UAAU,CAAC;AAEvC,MAAM;AACO,QAAA,OAAO,GAAG,SAAS,CAAC;AACpB,QAAA,YAAY,GAAG,UAAU,CAAC;AAC1B,QAAA,aAAa,GAAG,WAAW,CAAC;AAEzC,eAAe;AACF,QAAA,eAAe,GAAG,aAAa,CAAC;AAChC,QAAA,eAAe,GAAG,aAAa,CAAC;AAChC,QAAA,eAAe,GAAG,aAAa,CAAC;AAE7C,aAAa;AACA,QAAA,kBAAkB,GAAG,gBAAgB,CAAC;AACtC,QAAA,mBAAmB,GAAG,iBAAiB,CAAC;AACxC,QAAA,iBAAiB,GAAG,eAAe,CAAC;AAEjD,YAAY;AACC,QAAA,UAAU,GAAG,QAAQ,CAAC;AACtB,QAAA,UAAU,GAAG,QAAQ,CAAC;AACtB,QAAA,UAAU,GAAG,QAAQ,CAAC;AACtB,QAAA,eAAe,GAAG,0BAA0B,CAAC;AAC7C,QAAA,uBAAuB,GAAG,gCAAgC,CAAC;AAExE,sDAAsD;AACtD,kBAAkB;AACL,QAAA,qBAAqB,GAAG,8BAA8B,CAAC;AAEpE,0BAA0B;AACb,QAAA,SAAS,GAAG,OAAO,CAAC;AAEjC,wCAAwC;AAC3B,QAAA,UAAU,GAAG,QAAQ,CAAC;AACnC,0DAA0D;AAC7C,QAAA,sBAAsB,GAAG,wBAAwB,CAAC;AAC/D,uDAAuD;AAC1C,QAAA,oBAAoB,GAAG,sBAAsB,CAAC;AAC3D,uDAAuD;AAC1C,QAAA,mBAAmB,GAAG,qBAAqB,CAAC;AACzD,EAAE;AACF,8CAA8C;AAC9C,4CAA4C;AAC5C,EAAE;AACF,yCAAyC;AACzC,uDAAuD;AAEvD,qCAAqC;AACxB,QAAA,UAAU,GAAG,wBAAwB,CAAC;AAEnD,wCAAwC;AAC3B,QAAA,UAAU,GAAG,2BAA2B,CAAC;AAEzC,QAAA,WAAW,GAAG,mCAAmC,CAAC;AAE/D,WAAW;AACE,QAAA,mBAAmB,GAAG,yBAAyB,CAAC;AAC7D,sBAAsB;AACT,QAAA,2BAA2B,GAAG,eAAe,CAAC;AAE9C,QAAA,eAAe,GAAG,UAAU,CAAC;AAC7B,QAAA,qBAAqB,GAAG,8BAA8B,CAAC","sourcesContent":["// got all value with no property name\nexport const ALL = 'common:all_value_key';\n\n// common\nexport const SCHEDULE_KEY = 'common:schedule';\nexport const CONFIGURATION_KEY = 'common:configuration';\nexport const FRAMEWORK_KEY = 'common:framework';\nexport const ASPECT_KEY = 'common:aspect';\nexport const CATCH_KEY = 'common:catch';\nexport const MATCH_KEY = 'common:match';\n\n// faas\nexport const FUNC_KEY = 'faas:func';\nexport const SERVERLESS_FUNC_KEY = 'faas:serverless:function';\n\n// web\nexport const CONTROLLER_KEY = 'web:controller';\nexport const WEB_ROUTER_KEY = 'web:router';\nexport const WEB_ROUTER_PARAM_KEY = 'web:router_param';\nexport const WEB_RESPONSE_KEY = 'web:response';\nexport const WEB_RESPONSE_HTTP_CODE = 'web:response_http_code';\nexport const WEB_RESPONSE_REDIRECT = 'web:response_redirect';\nexport const WEB_RESPONSE_HEADER = 'web:response_header';\nexport const WEB_RESPONSE_CONTENT_TYPE = 'web:response_content_type';\nexport const WEB_RESPONSE_RENDER = 'web:response_render';\n\n// task\nexport const MODULE_TASK_KEY = 'task:task';\nexport const MODULE_TASK_METADATA = 'task:task:options';\nexport const MODULE_TASK_TASK_LOCAL_KEY = 'task:task:task_local';\nexport const MODULE_TASK_TASK_LOCAL_OPTIONS = 'task:task:task_local:options';\nexport const MODULE_TASK_QUEUE_KEY = 'task:task:queue';\nexport const MODULE_TASK_QUEUE_OPTIONS = 'task:task:queue:options';\n\n// ws\nexport const WS_CONTROLLER_KEY = 'ws:controller';\nexport const WS_EVENT_KEY = 'ws:event';\n\n// RPC\nexport const HSF_KEY = 'rpc:hsf';\nexport const RPC_GRPC_KEY = 'rpc:grpc';\nexport const RPC_DUBBO_KEY = 'rpc:dubbo';\n\n// microservice\nexport const MS_CONSUMER_KEY = 'ms:consumer';\nexport const MS_PRODUCER_KEY = 'ms:producer';\nexport const MS_PROVIDER_KEY = 'ms:provider';\n\n// rpc method\nexport const MS_GRPC_METHOD_KEY = 'ms:grpc:method';\nexport const MS_DUBBO_METHOD_KEY = 'ms:dubbo:method';\nexport const MS_HSF_METHOD_KEY = 'ms:hsf:method';\n\n// framework\nexport const CONFIG_KEY = 'config';\nexport const PLUGIN_KEY = 'plugin';\nexport const LOGGER_KEY = 'logger';\nexport const APPLICATION_KEY = '__midway_framework_app__';\nexport const APPLICATION_CONTEXT_KEY = '__midway_application_context__';\n\n////////////////////////////////////////// inject keys\n// constructor key\nexport const CLASS_KEY_CONSTRUCTOR = 'midway:class_key_constructor';\n\n// Used for named bindings\nexport const NAMED_TAG = 'named';\n\n// The name of the target at design time\nexport const INJECT_TAG = 'inject';\n// The name inject custom property decorator with resolver\nexport const INJECT_CUSTOM_PROPERTY = 'inject_custom_property';\n// The name inject custom param decorator with resolver\nexport const INJECT_CUSTOM_METHOD = 'inject_custom_method';\n// The name inject custom param decorator with resolver\nexport const INJECT_CUSTOM_PARAM = 'inject_custom_param';\n//\n// // used to store constructor arguments tags\n// export const TAGGED = 'injection:tagged';\n//\n// // used to store class properties tags\n// export const TAGGED_PROP = 'injection:tagged_props';\n\n// used to store class to be injected\nexport const TAGGED_CLS = 'injection:tagged_class';\n\n// used to store function to be injected\nexport const TAGGED_FUN = 'injection:tagged_function';\n\nexport const OBJ_DEF_CLS = 'injection:object_definition_class';\n\n// pipeline\nexport const PIPELINE_IDENTIFIER = '__pipeline_identifier__';\n// lifecycle interface\nexport const LIFECYCLE_IDENTIFIER_PREFIX = '__lifecycle__';\n\nexport const MAIN_MODULE_KEY = '__main__';\nexport const PRIVATE_META_DATA_KEY = '__midway_private_meta_data__';\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aspect.js","sourceRoot":"","sources":["../../../src/decorator/common/aspect.ts"],"names":[],"mappings":";;;AAAA,uCAMqB;AACrB,2CAAoC;AAuBpC,SAAgB,MAAM,CACpB,YAAyB,EACzB,KAAgC,EAChC,QAAiB;IAEjB,OAAO,UAAU,MAAM;QACrB,IAAA,kBAAU,EAAC,kBAAU,EAAE,MAAM,CAAC,CAAC;QAC/B,MAAM,aAAa,GAAG,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC9C,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE;YACxC,IAAA,2BAAmB,EACjB,kBAAU,EACV;gBACE,YAAY;gBACZ,KAAK;gBACL,QAAQ;aACT,EACD,MAAM,CACP,CAAC;SACH;QAED,IAAA,iBAAK,EAAC,iBAAS,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;QACnC,IAAA,eAAO,GAAE,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAvBD,wBAuBC","sourcesContent":["import {\n ASPECT_KEY,\n attachClassMetadata,\n Provide,\n saveModule,\n ScopeEnum,\n} from '../../index';\nimport { Scope } from './objectDef';\n\nexport interface JoinPoint {\n methodName: string;\n target: any;\n args: any[];\n proceed?(...args: any[]): any;\n}\n\nexport interface AspectMetadata {\n aspectTarget: any;\n match?: string | (() => boolean);\n priority?: number;\n}\n\nexport interface IMethodAspect {\n after?(joinPoint: JoinPoint, result: any, error: Error);\n afterReturn?(joinPoint: JoinPoint, result: any): any;\n afterThrow?(joinPoint: JoinPoint, error: Error): void;\n before?(joinPoint: JoinPoint): void;\n around?(joinPoint: JoinPoint): any;\n}\n\nexport function Aspect(\n aspectTarget: any | any[],\n match?: string | (() => boolean),\n priority?: number\n) {\n return function (target) {\n saveModule(ASPECT_KEY, target);\n const aspectTargets = [].concat(aspectTarget);\n for (const aspectTarget of aspectTargets) {\n attachClassMetadata(\n ASPECT_KEY,\n {\n aspectTarget,\n match,\n priority,\n },\n target\n );\n }\n\n Scope(ScopeEnum.Singleton)(target);\n Provide()(target);\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"autoload.js","sourceRoot":"","sources":["../../../src/decorator/common/autoload.ts"],"names":[],"mappings":";;;AAAA,6DAA2D;AAC3D,uCAAoC;AAEpC,SAAgB,QAAQ;IACtB,OAAO,UAAU,MAAM;QACrB,IAAA,oCAAiB,EAAC,MAAM,CAAC,CAAC;QAC1B,IAAA,iBAAO,GAAE,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AALD,4BAKC","sourcesContent":["import { savePreloadModule } from '../../decoratorManager';\nimport { Provide } from './provide';\n\nexport function Autoload() {\n return function (target) {\n savePreloadModule(target);\n Provide()(target);\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"configuration.js","sourceRoot":"","sources":["../../../src/decorator/common/configuration.ts"],"names":[],"mappings":";;;AAAA,uCAAmE;AAwBnE,SAAgB,aAAa,CAC3B,UAAyC,EAAE;IAE3C,OAAO,CAAC,MAAW,EAAE,EAAE;QACrB,IAAA,yBAAiB,EAAC,yBAAiB,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IACxD,CAAC,CAAC;AACJ,CAAC;AAND,sCAMC","sourcesContent":["import { saveClassMetadata, CONFIGURATION_KEY } from '../../index';\n\nexport interface IComponentInfo {\n component: any;\n enabledEnvironment?: string[];\n}\n\nexport interface ResolveFilter {\n pattern: string | RegExp;\n filter: (module, filter, bindModule) => any;\n ignoreRequire?: boolean;\n}\n\nexport interface InjectionConfigurationOptions {\n imports?: Array<string | IComponentInfo | { Configuration: any }>;\n importObjects?: Record<string, unknown>;\n importConfigs?:\n | Array<{ [environmentName: string]: Record<string, any> }>\n | Record<string, any>;\n namespace?: string;\n directoryResolveFilter?: ResolveFilter[];\n conflictCheck?: boolean;\n}\n\nexport function Configuration(\n options: InjectionConfigurationOptions = {}\n): ClassDecorator {\n return (target: any) => {\n saveClassMetadata(CONFIGURATION_KEY, options, target);\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../src/decorator/common/filter.ts"],"names":[],"mappings":";;;AAAA,6DAA2D;AAC3D,6CAAsD;AACtD,2CAAoC;AACpC,+CAA4C;AAC5C,uCAAoC;AAEpC,SAAgB,KAAK,CAAC,WAAyB;IAC7C,OAAO,UAAU,MAAM;QACrB,MAAM,YAAY,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACtE,IAAA,oCAAiB,EACf,oBAAS,EACT;YACE,YAAY;SACb,EACD,MAAM,CACP,CAAC;QAEF,IAAA,iBAAK,EAAC,qBAAS,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;QACnC,IAAA,iBAAO,GAAE,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAdD,sBAcC;AAQD,SAAgB,KAAK,CAAC,eAA6B,IAAI;IACrD,OAAO,UAAU,MAAM;QACrB,IAAA,oCAAiB,EACf,oBAAS,EACT;YACE,YAAY;SACb,EACD,MAAM,CACP,CAAC;QAEF,IAAA,iBAAK,EAAC,qBAAS,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;QACnC,IAAA,iBAAO,GAAE,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAbD,sBAaC","sourcesContent":["import { saveClassMetadata } from '../../decoratorManager';\nimport { CATCH_KEY, MATCH_KEY } from '../../constant';\nimport { Scope } from './objectDef';\nimport { ScopeEnum } from '../../interface';\nimport { Provide } from './provide';\n\nexport function Catch(catchTarget?: any | any[]) {\n return function (target) {\n const catchTargets = catchTarget ? [].concat(catchTarget) : undefined;\n saveClassMetadata(\n CATCH_KEY,\n {\n catchTargets,\n },\n target\n );\n\n Scope(ScopeEnum.Singleton)(target);\n Provide()(target);\n };\n}\n\nexport type MatchPattern<CtxOrReq = any, Res = any> =\n | ((ctxOrReq: CtxOrReq, res: Res) => boolean)\n | string\n | string[]\n | boolean;\n\nexport function Match(matchPattern: MatchPattern = true) {\n return function (target) {\n saveClassMetadata(\n MATCH_KEY,\n {\n matchPattern,\n },\n target\n );\n\n Scope(ScopeEnum.Singleton)(target);\n Provide()(target);\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"framework.js","sourceRoot":"","sources":["../../../src/decorator/common/framework.ts"],"names":[],"mappings":";;;AAAA,uCAMqB;AAErB,SAAgB,SAAS;IACvB,OAAO,CAAC,MAAW,EAAE,EAAE;QACrB,IAAA,kBAAU,EAAC,qBAAa,EAAE,MAAM,CAAC,CAAC;QAClC,IAAA,aAAK,EAAC,iBAAS,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;QACnC,IAAA,eAAO,GAAE,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAND,8BAMC","sourcesContent":["import {\n saveModule,\n FRAMEWORK_KEY,\n Scope,\n ScopeEnum,\n Provide,\n} from '../../index';\n\nexport function Framework(): ClassDecorator {\n return (target: any) => {\n saveModule(FRAMEWORK_KEY, target);\n Scope(ScopeEnum.Singleton)(target);\n Provide()(target);\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/decorator/common/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4CAA0B;AAC1B,2CAAyB;AACzB,6CAA2B;AAC3B,2CAAyB;AACzB,6CAA2B;AAC3B,kDAAgC;AAChC,8CAA4B;AAC5B,8CAA4B;AAC5B,2CAAyB;AACzB,+CAA6B","sourcesContent":["export * from './provide';\nexport * from './inject';\nexport * from './pipeline';\nexport * from './aspect';\nexport * from './autoload';\nexport * from './configuration';\nexport * from './objectDef';\nexport * from './framework';\nexport * from './filter';\nexport * from './middleware';\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"inject.js","sourceRoot":"","sources":["../../../src/decorator/common/inject.ts"],"names":[],"mappings":";;;AACA,uCAAiD;AAEjD,SAAgB,MAAM,CAAC,UAA6B;IAClD,OAAO,UAAU,MAAW,EAAE,SAAiB;QAC7C,IAAA,0BAAkB,EAAC,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;IACxD,CAAC,CAAC;AACJ,CAAC;AAJD,wBAIC","sourcesContent":["import { ObjectIdentifier } from '../../interface';\nimport { savePropertyInject } from '../../index';\n\nexport function Inject(identifier?: ObjectIdentifier) {\n return function (target: any, targetKey: string): void {\n savePropertyInject({ target, targetKey, identifier });\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"middleware.js","sourceRoot":"","sources":["../../../src/decorator/common/middleware.ts"],"names":[],"mappings":";;;AAAA,uCAAwD;AAExD,SAAgB,UAAU;IACxB,OAAO,CAAC,MAAW,EAAE,EAAE;QACrB,IAAA,aAAK,EAAC,iBAAS,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;QACnC,IAAA,eAAO,GAAE,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AALD,gCAKC","sourcesContent":["import { Scope, ScopeEnum, Provide } from '../../index';\n\nexport function Middleware(): ClassDecorator {\n return (target: any) => {\n Scope(ScopeEnum.Singleton)(target);\n Provide()(target);\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"objectDef.js","sourceRoot":"","sources":["../../../src/decorator/common/objectDef.ts"],"names":[],"mappings":";;;AAAA,uCAA8D;AAE9D,SAAgB,IAAI;IAClB,OAAO,UAAU,MAAW,EAAE,WAAmB;QAC/C,IAAA,4BAAoB,EAAC,MAAM,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC;IAC5D,CAAC,CAAC;AACJ,CAAC;AAJD,oBAIC;AAED,SAAgB,OAAO;IACrB,OAAO,UAAU,MAAW,EAAE,WAAmB;QAC/C,IAAA,4BAAoB,EAAC,MAAM,EAAE;YAC3B,aAAa,EAAE,WAAW;SAC3B,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAND,0BAMC;AAED,SAAgB,KAAK,CACnB,KAAgB,EAChB,YAA2C;IAE3C,OAAO,UAAU,MAAW;QAC1B,IAAA,4BAAoB,EAAC,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,YAAY,EAAE,CAAC,CAAC;IAC3D,CAAC,CAAC;AACJ,CAAC;AAPD,sBAOC","sourcesContent":["import { ScopeEnum, saveObjectDefinition } from '../../index';\n\nexport function Init(): MethodDecorator {\n return function (target: any, propertyKey: string) {\n saveObjectDefinition(target, { initMethod: propertyKey });\n };\n}\n\nexport function Destroy(): MethodDecorator {\n return function (target: any, propertyKey: string) {\n saveObjectDefinition(target, {\n destroyMethod: propertyKey,\n });\n };\n}\n\nexport function Scope(\n scope: ScopeEnum,\n scopeOptions?: { allowDowngrade?: boolean }\n): ClassDecorator {\n return function (target: any): void {\n saveObjectDefinition(target, { scope, ...scopeOptions });\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../../src/decorator/common/pipeline.ts"],"names":[],"mappings":";;;AACA,uCAGqB;AAErB,SAAgB,QAAQ,CACtB,MAAyD;IAEzD,OAAO,IAAA,qCAA6B,EAAC,2BAAmB,EAAE;QACxD,MAAM;KACP,CAAC,CAAC;AACL,CAAC;AAND,4BAMC","sourcesContent":["import { ObjectIdentifier } from '../../interface';\nimport {\n createCustomPropertyDecorator,\n PIPELINE_IDENTIFIER,\n} from '../../index';\n\nexport function Pipeline(\n valves?: Array<ObjectIdentifier | (new (...args) => any)>\n) {\n return createCustomPropertyDecorator(PIPELINE_IDENTIFIER, {\n valves,\n });\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"provide.js","sourceRoot":"","sources":["../../../src/decorator/common/provide.ts"],"names":[],"mappings":";;;AACA,uCAA6C;AAE7C,SAAgB,OAAO,CAAC,UAA6B;IACnD,OAAO,UAAU,MAAW;QAC1B,OAAO,IAAA,sBAAc,EAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC5C,CAAC,CAAC;AACJ,CAAC;AAJD,0BAIC","sourcesContent":["import { ObjectIdentifier } from '../../interface';\nimport { saveProviderId } from '../../index';\n\nexport function Provide(identifier?: ObjectIdentifier) {\n return function (target: any) {\n return saveProviderId(identifier, target);\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"serverlessTrigger.js","sourceRoot":"","sources":["../../../src/decorator/faas/serverlessTrigger.ts"],"names":[],"mappings":";;;AAAA,8BAQgB;AAEhB,SAAgB,kBAAkB,CAChC,OAA+C;IAE/C,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,EAAE;QACjC,IAAA,wBAAoB,EAAC,uBAAmB,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;IAClE,CAAC,CAAC;AACJ,CAAC;AAND,gDAMC;AA0CD,SAAgB,iBAAiB,CAC/B,IAAS,EACT,WAAgB,EAAE;IAElB,OAAO,CAAC,MAAM,EAAE,YAAoB,EAAE,UAAU,EAAE,EAAE;;QAClD,IACE,IAAI,KAAK,yBAAqB,CAAC,IAAI;YACnC,IAAI,KAAK,yBAAqB,CAAC,WAAW,EAC1C;YACA,QAAQ,CAAC,QAAQ,CAAC,GAAG,MAAA,QAAQ,CAAC,QAAQ,CAAC,mCAAI,KAAK,CAAC;SAClD;QACD,IAAA,cAAU,EAAC,YAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QACzC,uBAAuB;QACvB,QAAQ,GAAG,QAAQ,IAAI,EAAE,CAAC;QAC1B,IAAA,uBAAmB,EACjB,YAAQ,EACR;YACE,IAAI;YACJ,UAAU,EAAE,YAAY;YACxB,QAAQ;SACT,EACD,MAAM,CAAC,WAAW,CACnB,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAxBD,8CAwBC","sourcesContent":["import {\n attachClassMetadata,\n savePropertyMetadata,\n FaaSMetadata,\n FUNC_KEY,\n SERVERLESS_FUNC_KEY,\n saveModule,\n ServerlessTriggerType,\n} from '../../';\n\nexport function ServerlessFunction(\n options: FaaSMetadata.ServerlessFunctionOptions\n): MethodDecorator {\n return (target, key, descriptor) => {\n savePropertyMetadata(SERVERLESS_FUNC_KEY, options, target, key);\n };\n}\n\nexport function ServerlessTrigger(\n type: ServerlessTriggerType.HTTP,\n metadata: FaaSMetadata.HTTPTriggerOptions\n): MethodDecorator;\nexport function ServerlessTrigger(\n type: ServerlessTriggerType.OS,\n metadata: FaaSMetadata.OSTriggerOptions\n): MethodDecorator;\nexport function ServerlessTrigger(\n type: ServerlessTriggerType.LOG,\n metadata: FaaSMetadata.LogTriggerOptions\n): MethodDecorator;\nexport function ServerlessTrigger(\n type: ServerlessTriggerType.TIMER,\n metadata: FaaSMetadata.TimerTriggerOptions\n): MethodDecorator;\nexport function ServerlessTrigger(\n type: ServerlessTriggerType.MQ,\n metadata: FaaSMetadata.MQTriggerOptions\n): MethodDecorator;\nexport function ServerlessTrigger(\n type: ServerlessTriggerType.CDN,\n metadata?: FaaSMetadata.CDNTriggerOptions\n): MethodDecorator;\nexport function ServerlessTrigger(\n type: ServerlessTriggerType.API_GATEWAY,\n metadata?: FaaSMetadata.APIGatewayTriggerOptions\n): MethodDecorator;\nexport function ServerlessTrigger(\n type: ServerlessTriggerType.HSF,\n metadata?: FaaSMetadata.HSFTriggerOptions\n): MethodDecorator;\nexport function ServerlessTrigger(\n type: ServerlessTriggerType.MTOP,\n metadata?: FaaSMetadata.MTopTriggerOptions\n): MethodDecorator;\nexport function ServerlessTrigger(\n type: ServerlessTriggerType.EVENT,\n metadata?: FaaSMetadata.EventTriggerOptions\n): MethodDecorator;\nexport function ServerlessTrigger(\n type: any,\n metadata: any = {}\n): MethodDecorator {\n return (target, functionName: string, descriptor) => {\n if (\n type === ServerlessTriggerType.HTTP ||\n type === ServerlessTriggerType.API_GATEWAY\n ) {\n metadata['method'] = metadata['method'] ?? 'get';\n }\n saveModule(FUNC_KEY, target.constructor);\n // new method decorator\n metadata = metadata || {};\n attachClassMetadata(\n FUNC_KEY,\n {\n type,\n methodName: functionName,\n metadata,\n },\n target.constructor\n );\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/decorator/framework/index.ts"],"names":[],"mappings":";;;AAAA,8BAQgB;AAEhB,SAAgB,MAAM,CAAC,UAAmB;IACxC,OAAO,IAAA,iCAA6B,EAAC,cAAU,EAAE;QAC/C,UAAU;KACX,CAAC,CAAC;AACL,CAAC;AAJD,wBAIC;AAED,SAAgB,MAAM,CAAC,UAAmB;IACxC,OAAO,IAAA,iCAA6B,EAAC,cAAU,EAAE;QAC/C,UAAU;KACX,CAAC,CAAC;AACL,CAAC;AAJD,wBAIC;AAED,SAAgB,GAAG,CAAC,IAAoB;IACtC,OAAO,IAAA,iCAA6B,EAAC,mBAAe,EAAE;QACpD,IAAI;KACL,CAAC,CAAC;AACL,CAAC;AAJD,kBAIC;AAED,SAAgB,MAAM,CAAC,UAAmB;IACxC,OAAO,IAAA,iCAA6B,EAAC,cAAU,EAAE;QAC/C,UAAU;KACX,CAAC,CAAC;AACL,CAAC;AAJD,wBAIC;AAED,SAAgB,kBAAkB;IAChC,OAAO,IAAA,iCAA6B,EAAC,2BAAuB,EAAE,EAAE,CAAC,CAAC;AACpE,CAAC;AAFD,gDAEC","sourcesContent":["import {\n APPLICATION_KEY,\n CONFIG_KEY,\n PLUGIN_KEY,\n LOGGER_KEY,\n createCustomPropertyDecorator,\n APPLICATION_CONTEXT_KEY,\n FrameworkType,\n} from '../../';\n\nexport function Plugin(identifier?: string): PropertyDecorator {\n return createCustomPropertyDecorator(PLUGIN_KEY, {\n identifier,\n });\n}\n\nexport function Config(identifier?: string): PropertyDecorator {\n return createCustomPropertyDecorator(CONFIG_KEY, {\n identifier,\n });\n}\n\nexport function App(type?: FrameworkType): PropertyDecorator {\n return createCustomPropertyDecorator(APPLICATION_KEY, {\n type,\n });\n}\n\nexport function Logger(identifier?: string): PropertyDecorator {\n return createCustomPropertyDecorator(LOGGER_KEY, {\n identifier,\n });\n}\n\nexport function ApplicationContext(): PropertyDecorator {\n return createCustomPropertyDecorator(APPLICATION_CONTEXT_KEY, {});\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schedule.js","sourceRoot":"","sources":["../../../src/decorator/framework/schedule.ts"],"names":[],"mappings":";;;AAAA,8BAMgB;AAChB,sCAAkC;AAuBlC,SAAgB,QAAQ,CAAC,YAAmC;IAC1D,OAAO,UAAU,MAAW;QAC1B,IAAA,cAAU,EAAC,gBAAY,EAAE,MAAM,CAAC,CAAC;QACjC,IAAA,qBAAiB,EAAC,gBAAY,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;QACtD,IAAA,cAAK,EAAC,aAAS,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;QACjC,IAAA,WAAO,GAAE,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAPD,4BAOC","sourcesContent":["import {\n ScopeEnum,\n saveClassMetadata,\n saveModule,\n SCHEDULE_KEY,\n Provide,\n} from '../../';\nimport { Scope } from '../common';\n\nexport interface CommonSchedule {\n exec(ctx?);\n}\n\nexport interface ScheduleOpts {\n type: string;\n cron?: string;\n interval?: number | string;\n immediate?: boolean;\n disable?: boolean;\n env?: string[];\n cronOptions?: {\n currentDate?: string | number | Date;\n startDate?: string | number | Date;\n endDate?: string | number | Date;\n iterator?: boolean;\n utc?: boolean;\n tz?: string;\n };\n}\n\nexport function Schedule(scheduleOpts: ScheduleOpts | string) {\n return function (target: any): void {\n saveModule(SCHEDULE_KEY, target);\n saveClassMetadata(SCHEDULE_KEY, scheduleOpts, target);\n Scope(ScopeEnum.Request)(target);\n Provide()(target);\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/decorator/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,SAAS;AACT,iDAA+B;AAE/B,OAAO;AACP,2DAAyC;AAEzC,YAAY;AACZ,oDAAkC;AAClC,uDAAqC;AAErC,eAAe;AACf,0DAAwC;AACxC,0DAAwC;AACxC,kEAAgD;AAEhD,MAAM;AACN,4CAA0B;AAE1B,OAAO;AACP,+CAA6B;AAC7B,8CAA4B;AAC5B,mDAAiC;AAEjC,MAAM;AACN,mDAAiC;AACjC,qDAAmC;AACnC,uDAAqC;AACrC,iDAA+B;AAE/B,KAAK;AACL,2DAAyC;AACzC,sDAAoC","sourcesContent":["// common\nexport * from './common/index';\n\n// faas\nexport * from './faas/serverlessTrigger';\n\n// framework\nexport * from './framework/index';\nexport * from './framework/schedule';\n\n// microservice\nexport * from './microservice/consumer';\nexport * from './microservice/provider';\nexport * from './microservice/rabbitmqListener';\n\n// rpc\nexport * from './rpc/hsf';\n\n// task\nexport * from './task/queue';\nexport * from './task/task';\nexport * from './task/taskLocal';\n\n// web\nexport * from './web/controller';\nexport * from './web/paramMapping';\nexport * from './web/requestMapping';\nexport * from './web/response';\n\n// ws\nexport * from './ws/webSocketController';\nexport * from './ws/webSocketEvent';\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"consumer.js","sourceRoot":"","sources":["../../../src/decorator/microservice/consumer.ts"],"names":[],"mappings":";;;AAAA,8BAOgB;AAChB,sCAAkC;AAOlC,SAAgB,QAAQ,CAAC,IAAS,EAAE,UAAe,EAAE;IACnD,OAAO,CAAC,MAAW,EAAE,EAAE;QACrB,IAAA,cAAU,EAAC,mBAAe,EAAE,MAAM,CAAC,CAAC;QACpC,IAAA,qBAAiB,EACf,mBAAe,EACf;YACE,IAAI;YACJ,QAAQ,EAAE,OAAO;SAClB,EACD,MAAM,CACP,CAAC;QACF,IAAA,cAAK,EAAC,aAAS,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;QACjC,IAAA,WAAO,GAAE,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAdD,4BAcC","sourcesContent":["import {\n ScopeEnum,\n saveClassMetadata,\n saveModule,\n MS_CONSUMER_KEY,\n MSListenerType,\n Provide,\n} from '../../';\nimport { Scope } from '../common';\n\nexport function Consumer(type: MSListenerType.MQTT): ClassDecorator;\nexport function Consumer(\n type: MSListenerType.RABBITMQ,\n options?: any\n): ClassDecorator;\nexport function Consumer(type: any, options: any = {}): ClassDecorator {\n return (target: any) => {\n saveModule(MS_CONSUMER_KEY, target);\n saveClassMetadata(\n MS_CONSUMER_KEY,\n {\n type,\n metadata: options,\n },\n target\n );\n Scope(ScopeEnum.Request)(target);\n Provide()(target);\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/decorator/microservice/provider.ts"],"names":[],"mappings":";;;AAAA,8BAagB;AAChB,sCAAkC;AAUlC,SAAgB,QAAQ,CACtB,IAAoB,EACpB,WAAgB,EAAE;IAElB,OAAO,CAAC,MAAW,EAAE,EAAE;QACrB,IAAA,cAAU,EAAC,mBAAe,EAAE,MAAM,CAAC,CAAC;QACpC,IAAA,qBAAiB,EACf,mBAAe,EACf;YACE,IAAI;YACJ,QAAQ;SACT,EACD,MAAM,CACP,CAAC;QACF,IAAA,cAAK,EAAC,aAAS,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;QACjC,IAAA,WAAO,GAAE,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAjBD,4BAiBC;AAED,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,mCAAa,CAAA;IACb,mDAA6B,CAAA;IAC7B,uDAAiC,CAAA;IACjC,wDAAkC,CAAA;AACpC,CAAC,EALW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAK7B;AAED,SAAgB,UAAU,CACxB,gBAII,EAAE;IAEN,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,UAA8B,EAAE,EAAE;QAC9D,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;YACvB,aAAa,CAAC,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC;SAC9C;QACD,IAAA,wBAAoB,EAClB,sBAAkB,EAClB;YACE,UAAU,EAAE,aAAa,CAAC,UAAU,IAAI,YAAY;YACpD,IAAI,EAAE,aAAa,CAAC,IAAI;YACxB,KAAK,EAAE,aAAa,CAAC,KAAK;SAC3B,EACD,MAAM,EACN,YAAY,CACb,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAxBD,gCAwBC;AAED,SAAgB,WAAW,CAAC,UAAmB;IAC7C,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,UAA8B,EAAE,EAAE;QAC9D,IAAA,uBAAmB,EACjB,uBAAmB,EACnB;YACE,UAAU,EAAE,UAAU,IAAI,YAAY;SACvC,EACD,MAAM,CACP,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAZD,kCAYC;AAED,SAAgB,SAAS,CAAC,UAAmB;IAC3C,OAAO,CAAC,MAAM,EAAE,YAAY,EAAE,UAA8B,EAAE,EAAE;QAC9D,IAAA,uBAAmB,EACjB,qBAAiB,EACjB;YACE,UAAU,EAAE,UAAU,IAAI,YAAY;SACvC,EACD,MAAM,CACP,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAZD,8BAYC","sourcesContent":["import {\n ScopeEnum,\n saveClassMetadata,\n saveModule,\n MS_PROVIDER_KEY,\n attachClassMetadata,\n savePropertyMetadata,\n MS_GRPC_METHOD_KEY,\n MS_DUBBO_METHOD_KEY,\n MS_HSF_METHOD_KEY,\n MSProviderType,\n GRPCMetadata,\n Provide,\n} from '../../';\nimport { Scope } from '../common';\n\nexport function Provider(\n type: MSProviderType.GRPC,\n metadata?: GRPCMetadata.ProviderOptions\n): ClassDecorator;\nexport function Provider(\n type: MSProviderType.DUBBO,\n metadata?: any\n): ClassDecorator;\nexport function Provider(\n type: MSProviderType,\n metadata: any = {}\n): ClassDecorator {\n return (target: any) => {\n saveModule(MS_PROVIDER_KEY, target);\n saveClassMetadata(\n MS_PROVIDER_KEY,\n {\n type,\n metadata,\n },\n target\n );\n Scope(ScopeEnum.Request)(target);\n Provide()(target);\n };\n}\n\nexport enum GrpcStreamTypeEnum {\n BASE = 'base',\n DUPLEX = 'ServerDuplexStream',\n READABLE = 'ServerReadableStream',\n WRITEABLE = 'ServerWritableStream',\n}\n\nexport function GrpcMethod(\n methodOptions: {\n methodName?: string;\n type?: GrpcStreamTypeEnum;\n onEnd?: string;\n } = {}\n): MethodDecorator {\n return (target, propertyName, descriptor: PropertyDescriptor) => {\n if (!methodOptions.type) {\n methodOptions.type = GrpcStreamTypeEnum.BASE;\n }\n savePropertyMetadata(\n MS_GRPC_METHOD_KEY,\n {\n methodName: methodOptions.methodName || propertyName,\n type: methodOptions.type,\n onEnd: methodOptions.onEnd,\n },\n target,\n propertyName\n );\n\n return descriptor;\n };\n}\n\nexport function DubboMethod(methodName?: string): MethodDecorator {\n return (target, propertyName, descriptor: PropertyDescriptor) => {\n attachClassMetadata(\n MS_DUBBO_METHOD_KEY,\n {\n methodName: methodName || propertyName,\n },\n target\n );\n\n return descriptor;\n };\n}\n\nexport function HSFMethod(methodName?: string): MethodDecorator {\n return (target, propertyName, descriptor: PropertyDescriptor) => {\n attachClassMetadata(\n MS_HSF_METHOD_KEY,\n {\n methodName: methodName || propertyName,\n },\n target\n );\n\n return descriptor;\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"rabbitmqListener.js","sourceRoot":"","sources":["../../../src/decorator/microservice/rabbitmqListener.ts"],"names":[],"mappings":";;;AAAA,8BAAoE;AAmDpE,SAAgB,gBAAgB,CAC9B,SAAiB,EACjB,UAAmC,EAAE;IAErC,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,EAAE;QAC1C,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;QAC9B,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;QAClC,IAAA,6BAAyB,EAAC,mBAAe,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IAC3E,CAAC,CAAC;AACJ,CAAC;AATD,4CASC","sourcesContent":["import { MS_CONSUMER_KEY, attachPropertyDataToClass } from '../../';\n\nexport interface RabbitMQListenerOptions {\n propertyKey?: string;\n queueName?: string;\n exchange?: string;\n /**\n * queue options\n */\n exclusive?: boolean;\n durable?: boolean;\n autoDelete?: boolean;\n messageTtl?: number;\n expires?: number;\n deadLetterExchange?: string;\n deadLetterRoutingKey?: string;\n maxLength?: number;\n maxPriority?: number;\n pattern?: string;\n /**\n * prefetch\n */\n prefetch?: number;\n /**\n * router\n */\n routingKey?: string;\n /**\n * exchange options\n */\n exchangeOptions?: {\n type?: 'direct' | 'topic' | 'headers' | 'fanout' | 'match' | string;\n durable?: boolean;\n internal?: boolean;\n autoDelete?: boolean;\n alternateExchange?: string;\n arguments?: any;\n };\n /**\n * consumeOptions\n */\n consumeOptions?: {\n consumerTag?: string;\n noLocal?: boolean;\n noAck?: boolean;\n exclusive?: boolean;\n priority?: number;\n arguments?: any;\n };\n}\n\nexport function RabbitMQListener(\n queueName: string,\n options: RabbitMQListenerOptions = {}\n): MethodDecorator {\n return (target: any, propertyKey: string) => {\n options.queueName = queueName;\n options.propertyKey = propertyKey;\n attachPropertyDataToClass(MS_CONSUMER_KEY, options, target, propertyKey);\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"hsf.js","sourceRoot":"","sources":["../../../src/decorator/rpc/hsf.ts"],"names":[],"mappings":";;;AAAA,8BAMgB;AAChB,2BAA4B;AAS5B;;;GAGG;AACH,SAAgB,GAAG,CAAC,YAAqB,EAAE;IACzC,OAAO,CAAC,MAAW,EAAE,EAAE;QACrB,IAAA,cAAU,EAAC,WAAO,EAAE,MAAM,CAAC,CAAC;QAC5B,IAAA,qBAAiB,EAAC,WAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QAC9C,IAAA,SAAK,EAAC,aAAS,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;QACjC,IAAA,WAAO,GAAE,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAPD,kBAOC","sourcesContent":["import {\n ScopeEnum,\n saveClassMetadata,\n saveModule,\n HSF_KEY,\n Provide,\n} from '../../';\nimport { Scope } from '../';\n\nexport interface HSFOpts {\n interfaceName?: string;\n version?: string;\n group?: string;\n namespace?: string;\n}\n\n/**\n * @param hsfOption\n * @constructor\n */\nexport function HSF(hsfOption: HSFOpts = {}): ClassDecorator {\n return (target: any) => {\n saveModule(HSF_KEY, target);\n saveClassMetadata(HSF_KEY, hsfOption, target);\n Scope(ScopeEnum.Request)(target);\n Provide()(target);\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"queue.js","sourceRoot":"","sources":["../../../src/decorator/task/queue.ts"],"names":[],"mappings":";;;AAAA,8BAAgE;AAChE,6CAGwB;AAExB,SAAgB,KAAK,CAAC,OAAa;IACjC,OAAO,UAAU,MAAM;QACrB,IAAA,cAAU,EAAC,gCAAqB,EAAE,MAAM,CAAC,CAAC;QAC1C,IAAA,qBAAiB,EACf,oCAAyB,EACzB;YACE,OAAO;YACP,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,EACD,MAAM,CACP,CAAC;QACF,IAAA,WAAO,GAAE,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAbD,sBAaC","sourcesContent":["import { saveModule, saveClassMetadata, Provide } from '../../';\nimport {\n MODULE_TASK_QUEUE_KEY,\n MODULE_TASK_QUEUE_OPTIONS,\n} from '../../constant';\n\nexport function Queue(options?: any): ClassDecorator {\n return function (target) {\n saveModule(MODULE_TASK_QUEUE_KEY, target);\n saveClassMetadata(\n MODULE_TASK_QUEUE_OPTIONS,\n {\n options,\n name: target.name,\n },\n target\n );\n Provide()(target);\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"task.js","sourceRoot":"","sources":["../../../src/decorator/task/task.ts"],"names":[],"mappings":";;;AAAA,8BAAyD;AACzD,6CAAuE;AAEvE,SAAgB,IAAI,CAAC,OAAO;IAC1B,OAAO,UACL,MAAW,EACX,WAAmB,EACnB,UAA8B;QAE9B,IAAA,cAAU,EAAC,0BAAe,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QAChD,IAAA,uBAAmB,EACjB,+BAAoB,EACpB;YACE,OAAO;YACP,WAAW;YACX,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,IAAI,EAAE,MAAM,CAAC,WAAW,CAAC,IAAI;SAC9B,EACD,MAAM,CACP,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAlBD,oBAkBC","sourcesContent":["import { saveModule, attachClassMetadata } from '../../';\nimport { MODULE_TASK_KEY, MODULE_TASK_METADATA } from '../../constant';\n\nexport function Task(options) {\n return function (\n target: any,\n propertyKey: string,\n descriptor: PropertyDescriptor\n ) {\n saveModule(MODULE_TASK_KEY, target.constructor);\n attachClassMetadata(\n MODULE_TASK_METADATA,\n {\n options,\n propertyKey,\n value: descriptor.value,\n name: target.constructor.name,\n },\n target\n );\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"taskLocal.js","sourceRoot":"","sources":["../../../src/decorator/task/taskLocal.ts"],"names":[],"mappings":";;;AAAA,8BAAyD;AACzD,6CAGwB;AAExB,SAAgB,SAAS,CAAC,OAAO;IAC/B,OAAO,UACL,MAAW,EACX,WAAmB,EACnB,UAA8B;QAE9B,IAAA,cAAU,EAAC,qCAA0B,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QAC3D,IAAA,uBAAmB,EACjB,yCAA8B,EAC9B;YACE,OAAO;YACP,WAAW;YACX,KAAK,EAAE,UAAU,CAAC,KAAK;SACxB,EACD,MAAM,CACP,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAjBD,8BAiBC","sourcesContent":["import { saveModule, attachClassMetadata } from '../../';\nimport {\n MODULE_TASK_TASK_LOCAL_KEY,\n MODULE_TASK_TASK_LOCAL_OPTIONS,\n} from '../../constant';\n\nexport function TaskLocal(options) {\n return function (\n target: any,\n propertyKey: string,\n descriptor: PropertyDescriptor\n ) {\n saveModule(MODULE_TASK_TASK_LOCAL_KEY, target.constructor);\n attachClassMetadata(\n MODULE_TASK_TASK_LOCAL_OPTIONS,\n {\n options,\n propertyKey,\n value: descriptor.value,\n },\n target\n );\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../src/decorator/web/controller.ts"],"names":[],"mappings":";;;AAAA,sCAAkC;AAClC,8BAMgB;AAehB,SAAgB,UAAU,CACxB,MAAM,GAAG,GAAG,EACZ,gBAMI,EAAE,UAAU,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;IAEvC,OAAO,CAAC,MAAW,EAAE,EAAE;QACrB,IAAA,cAAU,EAAC,kBAAc,EAAE,MAAM,CAAC,CAAC;QACnC,IAAI,MAAM;YACR,IAAA,qBAAiB,EACf,kBAAc,EACd;gBACE,MAAM;gBACN,aAAa;aACM,EACrB,MAAM,CACP,CAAC;QACJ,IAAA,cAAK,EAAC,aAAS,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;QACjC,IAAA,WAAO,GAAE,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAxBD,gCAwBC","sourcesContent":["import { Scope } from '../common';\nimport {\n ScopeEnum,\n saveClassMetadata,\n saveModule,\n CONTROLLER_KEY,\n Provide,\n} from '../../';\nimport { MiddlewareParamArray } from '../../interface';\n\nexport interface ControllerOption {\n prefix: string;\n routerOptions: {\n sensitive?: boolean;\n middleware?: MiddlewareParamArray;\n alias?: string[];\n description?: string;\n tagName?: string;\n ignoreGlobalPrefix?: boolean;\n };\n}\n\nexport function Controller(\n prefix = '/',\n routerOptions: {\n sensitive?: boolean;\n middleware?: MiddlewareParamArray;\n description?: string;\n tagName?: string;\n ignoreGlobalPrefix?: boolean;\n } = { middleware: [], sensitive: true }\n): ClassDecorator {\n return (target: any) => {\n saveModule(CONTROLLER_KEY, target);\n if (prefix)\n saveClassMetadata(\n CONTROLLER_KEY,\n {\n prefix,\n routerOptions,\n } as ControllerOption,\n target\n );\n Scope(ScopeEnum.Request)(target);\n Provide()(target);\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"paramMapping.js","sourceRoot":"","sources":["../../../src/decorator/web/paramMapping.ts"],"names":[],"mappings":";;;AAAA,8BAA0E;AAE1E,IAAY,eAaX;AAbD,WAAY,eAAe;IACzB,uDAAK,CAAA;IACL,qDAAI,CAAA;IACJ,uDAAK,CAAA;IACL,2DAAO,CAAA;IACP,2DAAO,CAAA;IACP,iEAAU,CAAA;IACV,mEAAW,CAAA;IACX,qDAAI,CAAA;IACJ,qEAAY,CAAA;IACZ,iEAAU,CAAA;IACV,4DAAO,CAAA;IACP,0DAAM,CAAA;AACR,CAAC,EAbW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAa1B;AAQD,MAAM,kBAAkB,GAAG,UAAU,IAAqB;IACxD,OAAO,CAAC,YAAkB,EAAE,EAAE;QAC5B,OAAO,IAAA,8BAA0B,EAAC,wBAAoB,EAAE;YACtD,IAAI;YACJ,YAAY;SACb,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC,CAAC;AAEK,MAAM,OAAO,GAAG,CAAC,QAAiB,EAAE,EAAE,CAC3C,kBAAkB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;AAD3C,QAAA,OAAO,WACoC;AACjD,MAAM,IAAI,GAAG,CAAC,QAAiB,EAAE,EAAE,CACxC,kBAAkB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;AADxC,QAAA,IAAI,QACoC;AAC9C,MAAM,KAAK,GAAG,CAAC,QAAiB,EAAE,EAAE,CACzC,kBAAkB,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;AADzC,QAAA,KAAK,SACoC;AAC/C,MAAM,KAAK,GAAG,CAAC,QAAiB,EAAE,EAAE,CACzC,kBAAkB,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC;AADzC,QAAA,KAAK,SACoC;AAC/C,MAAM,OAAO,GAAG,CAAC,QAAiB,EAAE,EAAE,CAC3C,kBAAkB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;AAD3C,QAAA,OAAO,WACoC;AACjD,MAAM,IAAI,GAAG,CAAC,QAAc,EAAE,EAAE,CACrC,kBAAkB,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,CAAC;AAD9C,QAAA,IAAI,QAC0C;AACpD,MAAM,KAAK,GAAG,CAAC,QAAc,EAAE,EAAE,CACtC,kBAAkB,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;AAD/C,QAAA,KAAK,SAC0C;AACrD,MAAM,WAAW,GAAG,GAAG,EAAE,CAC9B,kBAAkB,CAAC,eAAe,CAAC,YAAY,CAAC,EAAE,CAAC;AADxC,QAAA,WAAW,eAC6B;AAC9C,MAAM,SAAS,GAAG,GAAG,EAAE,CAAC,kBAAkB,CAAC,eAAe,CAAC,UAAU,CAAC,EAAE,CAAC;AAAnE,QAAA,SAAS,aAA0D;AACzE,MAAM,OAAO,GAAG,CAAC,QAAiB,EAAE,EAAE,CAC3C,kBAAkB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC;AAD3C,QAAA,OAAO,WACoC;AACjD,MAAM,MAAM,GAAG,CAAC,QAAiB,EAAE,EAAE,CAC1C,kBAAkB,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC;AAD1C,QAAA,MAAM,UACoC","sourcesContent":["import { createCustomParamDecorator, WEB_ROUTER_PARAM_KEY } from '../../';\n\nexport enum RouteParamTypes {\n QUERY,\n BODY,\n PARAM,\n HEADERS,\n SESSION,\n FILESTREAM,\n FILESSTREAM,\n NEXT,\n REQUEST_PATH,\n REQUEST_IP,\n QUERIES,\n FIELDS,\n}\n\nexport interface RouterParamValue {\n index: number;\n type: RouteParamTypes;\n propertyData?: any;\n}\n\nconst createParamMapping = function (type: RouteParamTypes) {\n return (propertyData?: any) => {\n return createCustomParamDecorator(WEB_ROUTER_PARAM_KEY, {\n type,\n propertyData,\n });\n };\n};\n\nexport const Session = (property?: string) =>\n createParamMapping(RouteParamTypes.SESSION)(property);\nexport const Body = (property?: string) =>\n createParamMapping(RouteParamTypes.BODY)(property);\nexport const Query = (property?: string) =>\n createParamMapping(RouteParamTypes.QUERY)(property);\nexport const Param = (property?: string) =>\n createParamMapping(RouteParamTypes.PARAM)(property);\nexport const Headers = (property?: string) =>\n createParamMapping(RouteParamTypes.HEADERS)(property);\nexport const File = (property?: any) =>\n createParamMapping(RouteParamTypes.FILESTREAM)(property);\nexport const Files = (property?: any) =>\n createParamMapping(RouteParamTypes.FILESSTREAM)(property);\nexport const RequestPath = () =>\n createParamMapping(RouteParamTypes.REQUEST_PATH)();\nexport const RequestIP = () => createParamMapping(RouteParamTypes.REQUEST_IP)();\nexport const Queries = (property?: string) =>\n createParamMapping(RouteParamTypes.QUERIES)(property);\nexport const Fields = (property?: string) =>\n createParamMapping(RouteParamTypes.FIELDS)(property);\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"requestMapping.js","sourceRoot":"","sources":["../../../src/decorator/web/requestMapping.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,8BAA6D;AAwChD,QAAA,aAAa,GAAG;IAC3B,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;IACZ,GAAG,EAAE,KAAK;IACV,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;IACV,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;CACb,CAAC;AAEF,MAAM,eAAe,GAAG;IACtB,IAAI,EAAE,GAAG;IACT,aAAa,EAAE,qBAAa,CAAC,GAAG;IAChC,UAAU,EAAE,IAAI;IAChB,UAAU,EAAE,EAAE;CACf,CAAC;AAEK,MAAM,cAAc,GAAG,CAC5B,WAAyB,eAAe,EACvB,EAAE;IACnB,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,GAAG,CAAC;IAClC,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,IAAI,qBAAa,CAAC,GAAG,CAAC;IAClE,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;IACvC,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;IAEvC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,UAA8B,EAAE,EAAE;;QACrD,IAAA,uBAAmB,EACjB,kBAAc,EACd;YACE,IAAI;YACJ,aAAa;YACb,UAAU;YACV,MAAM,EAAE,GAAG;YACX,UAAU;YACV,OAAO,EAAE,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,KAAI,EAAE;YAChC,WAAW,EAAE,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,WAAW,KAAI,EAAE;YACxC,kBAAkB,EAAE,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,kBAAkB,mCAAI,KAAK;SAC1C,EACjB,MAAM,CACP,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC,CAAC;AA1BW,QAAA,cAAc,kBA0BzB;AAEF,MAAM,sBAAsB,GAC1B,CAAC,MAAc,EAAE,EAAE,CACnB,CACE,IAAsB,EACtB,gBAMI,EAAE,UAAU,EAAE,EAAE,EAAE,EACL,EAAE;IACnB,OAAO,IAAA,sBAAc,EACnB,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE;QAC3B,aAAa,EAAE,MAAM;QACrB,IAAI;KACL,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEJ;;GAEG;AACU,QAAA,IAAI,GAAG,sBAAsB,CAAC,qBAAa,CAAC,IAAI,CAAC,CAAC;AAE/D;;GAEG;AACU,QAAA,GAAG,GAAG,sBAAsB,CAAC,qBAAa,CAAC,GAAG,CAAC,CAAC;AAE7D;;GAEG;AACU,QAAA,GAAG,GAAG,sBAAsB,CAAC,qBAAa,CAAC,MAAM,CAAC,CAAC;AAEhE;;GAEG;AACU,QAAA,GAAG,GAAG,sBAAsB,CAAC,qBAAa,CAAC,GAAG,CAAC,CAAC;AAE7D;;GAEG;AACU,QAAA,KAAK,GAAG,sBAAsB,CAAC,qBAAa,CAAC,KAAK,CAAC,CAAC;AAEjE;;GAEG;AACU,QAAA,OAAO,GAAG,sBAAsB,CAAC,qBAAa,CAAC,OAAO,CAAC,CAAC;AAErE;;GAEG;AACU,QAAA,IAAI,GAAG,sBAAsB,CAAC,qBAAa,CAAC,IAAI,CAAC,CAAC;AAE/D;;GAEG;AACU,QAAA,GAAG,GAAG,sBAAsB,CAAC,qBAAa,CAAC,GAAG,CAAC,CAAC","sourcesContent":["/**\n * 'HEAD', 'OPTIONS', 'GET', 'PUT', 'PATCH', 'POST', 'DELETE' 封装\n */\nimport { attachClassMetadata, WEB_ROUTER_KEY } from '../../';\nimport { MiddlewareParamArray } from '../../interface';\n\nexport interface RouterOption {\n /**\n * router path, like \"/api\"\n */\n path?: string | RegExp;\n /**\n * http method, like \"get\", \"post\"\n */\n requestMethod: string;\n /**\n * router alias name\n */\n routerName?: string;\n /**\n * which method decorator attached\n */\n method?: string;\n /**\n * middleware array in router\n */\n middleware?: MiddlewareParamArray;\n /**\n * router summary, for swagger\n * @deprecated\n */\n summary?: string;\n /**\n * router description, for swagger\n * @deprecated\n */\n description?: string;\n /**\n * ignore global prefix\n */\n ignoreGlobalPrefix?: boolean;\n}\n\nexport const RequestMethod = {\n GET: 'get',\n POST: 'post',\n PUT: 'put',\n DELETE: 'delete',\n PATCH: 'patch',\n ALL: 'all',\n OPTIONS: 'options',\n HEAD: 'head',\n};\n\nconst defaultMetadata = {\n path: '/',\n requestMethod: RequestMethod.GET,\n routerName: null,\n middleware: [],\n};\n\nexport const RequestMapping = (\n metadata: RouterOption = defaultMetadata\n): MethodDecorator => {\n const path = metadata.path || '/';\n const requestMethod = metadata.requestMethod || RequestMethod.GET;\n const routerName = metadata.routerName;\n const middleware = metadata.middleware;\n\n return (target, key, descriptor: PropertyDescriptor) => {\n attachClassMetadata(\n WEB_ROUTER_KEY,\n {\n path,\n requestMethod,\n routerName,\n method: key,\n middleware,\n summary: metadata?.summary || '',\n description: metadata?.description || '',\n ignoreGlobalPrefix: metadata?.ignoreGlobalPrefix ?? false,\n } as RouterOption,\n target\n );\n\n return descriptor;\n };\n};\n\nconst createMappingDecorator =\n (method: string) =>\n (\n path?: string | RegExp,\n routerOptions: {\n routerName?: string;\n middleware?: MiddlewareParamArray;\n summary?: string;\n description?: string;\n ignoreGlobalPrefix?: boolean;\n } = { middleware: [] }\n ): MethodDecorator => {\n return RequestMapping(\n Object.assign(routerOptions, {\n requestMethod: method,\n path,\n })\n );\n };\n\n/**\n * Routes HTTP POST requests to the specified path.\n */\nexport const Post = createMappingDecorator(RequestMethod.POST);\n\n/**\n * Routes HTTP GET requests to the specified path.\n */\nexport const Get = createMappingDecorator(RequestMethod.GET);\n\n/**\n * Routes HTTP DELETE requests to the specified path.\n */\nexport const Del = createMappingDecorator(RequestMethod.DELETE);\n\n/**\n * Routes HTTP PUT requests to the specified path.\n */\nexport const Put = createMappingDecorator(RequestMethod.PUT);\n\n/**\n * Routes HTTP PATCH requests to the specified path.\n */\nexport const Patch = createMappingDecorator(RequestMethod.PATCH);\n\n/**\n * Routes HTTP OPTIONS requests to the specified path.\n */\nexport const Options = createMappingDecorator(RequestMethod.OPTIONS);\n\n/**\n * Routes HTTP HEAD requests to the specified path.\n */\nexport const Head = createMappingDecorator(RequestMethod.HEAD);\n\n/**\n * Routes all HTTP requests to the specified path.\n */\nexport const All = createMappingDecorator(RequestMethod.ALL);\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/decorator/web/response.ts"],"names":[],"mappings":";;;AAAA,8BAQgB;AAEhB,SAAgB,QAAQ,CAAC,GAAW,EAAE,IAAI,GAAG,GAAG;IAC9C,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,UAA8B,EAAE,EAAE;QACrD,IAAA,0BAAsB,EACpB,oBAAgB,EAChB;YACE,IAAI,EAAE,yBAAqB;YAC3B,GAAG;YACH,IAAI;SACL,EACD,MAAM,EACN,GAAG,CACJ,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAfD,4BAeC;AAED,SAAgB,QAAQ,CAAC,IAAY;IACnC,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,UAA8B,EAAE,EAAE;QACrD,IAAA,0BAAsB,EACpB,oBAAgB,EAChB;YACE,IAAI,EAAE,0BAAsB;YAC5B,IAAI;SACL,EACD,MAAM,EACN,GAAG,CACJ,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAdD,4BAcC;AAED,SAAgB,SAAS,CACvB,SAAuC,EACvC,KAAc;IAEd,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,UAA8B,EAAE,EAAE;QACrD,IAAI,YAAY,GAAwB,EAAE,CAAC;QAC3C,IAAI,KAAK,EAAE;YACT,YAAY,CAAC,SAAmB,CAAC,GAAG,KAAK,CAAC;SAC3C;aAAM;YACL,YAAY,GAAG,SAAgC,CAAC;SACjD;QACD,IAAA,0BAAsB,EACpB,oBAAgB,EAChB;YACE,IAAI,EAAE,uBAAmB;YACzB,UAAU,EAAE,YAAY;SACzB,EACD,MAAM,EACN,GAAG,CACJ,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAvBD,8BAuBC;AAED,SAAgB,WAAW,CAAC,WAAmB;IAC7C,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,UAA8B,EAAE,EAAE;QACrD,IAAA,0BAAsB,EACpB,oBAAgB,EAChB;YACE,IAAI,EAAE,6BAAyB;YAC/B,WAAW;SACZ,EACD,MAAM,EACN,GAAG,CACJ,CAAC;QAEF,OAAO,UAAU,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAdD,kCAcC;AAED,SAAgB,YAAY,CAAC,YAG5B;IACC,OAAO,CAAC,YAAoB,EAAE,EAAE;QAC9B,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,UAA8B,EAAE,EAAE;YACrD,IAAA,0BAAsB,EACpB,oBAAgB,EAChB;gBACE,IAAI,EAAE,uBAAmB;gBACzB,YAAY;aACb,EACD,MAAM,EACN,GAAG,CACJ,CAAC;YAEF,OAAO,UAAU,CAAC;QACpB,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAnBD,oCAmBC","sourcesContent":["import {\n attachPropertyMetadata,\n WEB_RESPONSE_REDIRECT,\n WEB_RESPONSE_HTTP_CODE,\n WEB_RESPONSE_HEADER,\n WEB_RESPONSE_KEY,\n WEB_RESPONSE_CONTENT_TYPE,\n WEB_RESPONSE_RENDER,\n} from '../../';\n\nexport function Redirect(url: string, code = 302) {\n return (target, key, descriptor: PropertyDescriptor) => {\n attachPropertyMetadata(\n WEB_RESPONSE_KEY,\n {\n type: WEB_RESPONSE_REDIRECT,\n url,\n code,\n },\n target,\n key\n );\n\n return descriptor;\n };\n}\n\nexport function HttpCode(code: number) {\n return (target, key, descriptor: PropertyDescriptor) => {\n attachPropertyMetadata(\n WEB_RESPONSE_KEY,\n {\n type: WEB_RESPONSE_HTTP_CODE,\n code,\n },\n target,\n key\n );\n\n return descriptor;\n };\n}\n\nexport function SetHeader(\n headerKey: string | Record<string, any>,\n value?: string\n) {\n return (target, key, descriptor: PropertyDescriptor) => {\n let headerObject: Record<string, any> = {};\n if (value) {\n headerObject[headerKey as string] = value;\n } else {\n headerObject = headerKey as Record<string, any>;\n }\n attachPropertyMetadata(\n WEB_RESPONSE_KEY,\n {\n type: WEB_RESPONSE_HEADER,\n setHeaders: headerObject,\n },\n target,\n key\n );\n\n return descriptor;\n };\n}\n\nexport function ContentType(contentType: string) {\n return (target, key, descriptor: PropertyDescriptor) => {\n attachPropertyMetadata(\n WEB_RESPONSE_KEY,\n {\n type: WEB_RESPONSE_CONTENT_TYPE,\n contentType,\n },\n target,\n key\n );\n\n return descriptor;\n };\n}\n\nexport function createRender(RenderEngine: {\n render: () => string;\n renderString: () => string;\n}) {\n return (templateName: string) => {\n return (target, key, descriptor: PropertyDescriptor) => {\n attachPropertyMetadata(\n WEB_RESPONSE_KEY,\n {\n type: WEB_RESPONSE_RENDER,\n templateName,\n },\n target,\n key\n );\n\n return descriptor;\n };\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webSocketController.js","sourceRoot":"","sources":["../../../src/decorator/ws/webSocketController.ts"],"names":[],"mappings":";;;AAAA,sCAAkC;AAClC,8BAMgB;AAUhB,SAAgB,YAAY,CAC1B,YAA6B,GAAG,EAChC,gBAEI,EAAE,UAAU,EAAE,EAAE,EAAE;IAEtB,OAAO,CAAC,MAAW,EAAE,EAAE;QACrB,IAAA,cAAU,EAAC,qBAAiB,EAAE,MAAM,CAAC,CAAC;QACtC,IAAA,qBAAiB,EACf,qBAAiB,EACjB;YACE,SAAS;YACT,aAAa;SACQ,EACvB,MAAM,CACP,CAAC;QACF,IAAA,cAAK,EAAC,aAAS,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;QACjC,IAAA,WAAO,GAAE,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC;AAnBD,oCAmBC","sourcesContent":["import { Scope } from '../common';\nimport {\n ScopeEnum,\n saveClassMetadata,\n saveModule,\n WS_CONTROLLER_KEY,\n Provide,\n} from '../../';\nimport { MiddlewareParamArray } from '../../interface';\n\nexport interface WSControllerOption {\n namespace: string;\n routerOptions: {\n middleware?: MiddlewareParamArray;\n };\n}\n\nexport function WSController(\n namespace: string | RegExp = '/',\n routerOptions: {\n middleware?: MiddlewareParamArray;\n } = { middleware: [] }\n): ClassDecorator {\n return (target: any) => {\n saveModule(WS_CONTROLLER_KEY, target);\n saveClassMetadata(\n WS_CONTROLLER_KEY,\n {\n namespace,\n routerOptions,\n } as WSControllerOption,\n target\n );\n Scope(ScopeEnum.Request)(target);\n Provide()(target);\n };\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"webSocketEvent.js","sourceRoot":"","sources":["../../../src/decorator/ws/webSocketEvent.ts"],"names":[],"mappings":";;;AAAA,8BAA2D;AAE3D,IAAY,eAOX;AAPD,WAAY,eAAe;IACzB,oDAAiC,CAAA;IACjC,0DAAuC,CAAA;IACvC,8CAA2B,CAAA;IAC3B,uDAAoC,CAAA;IACpC,mCAAgB,CAAA;IAChB,6CAA0B,CAAA;AAC5B,CAAC,EAPW,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAO1B;AAsBD,SAAgB,cAAc;IAC5B,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B,EAAE,EAAE;QAC1E,IAAA,uBAAmB,EACjB,gBAAY,EACZ;YACE,SAAS,EAAE,eAAe,CAAC,aAAa;YACxC,YAAY,EAAE,WAAW;YACzB,UAAU;SACX,EACD,MAAM,CAAC,WAAW,CACnB,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAZD,wCAYC;AAED,SAAgB,iBAAiB;IAC/B,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B,EAAE,EAAE;QAC1E,IAAA,uBAAmB,EACjB,gBAAY,EACZ;YACE,SAAS,EAAE,eAAe,CAAC,gBAAgB;YAC3C,YAAY,EAAE,WAAW;YACzB,UAAU;SACX,EACD,MAAM,CAAC,WAAW,CACnB,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAZD,8CAYC;AAED,SAAgB,WAAW,CAAC,SAAiB;IAC3C,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B,EAAE,EAAE;QAC1E,IAAA,uBAAmB,EACjB,gBAAY,EACZ;YACE,SAAS,EAAE,eAAe,CAAC,UAAU;YACrC,gBAAgB,EAAE,SAAS;YAC3B,YAAY,EAAE,WAAW;YACzB,UAAU;SACX,EACD,MAAM,CAAC,WAAW,CACnB,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAbD,kCAaC;AAED,SAAgB,MAAM,CACpB,WAAmB,EACnB,WAA8B,EAAE;IAEhC,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B,EAAE,EAAE;QAC1E,IAAA,uBAAmB,EACjB,gBAAY,EACZ;YACE,SAAS,EAAE,eAAe,CAAC,IAAI;YAC/B,YAAY,EAAE,WAAW;YACzB,gBAAgB,EAAE,WAAW;YAC7B,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;YAC7B,UAAU;SACX,EACD,MAAM,CAAC,WAAW,CACnB,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAjBD,wBAiBC;AAED,SAAgB,WAAW,CACzB,WAAW,GAAG,EAAE,EAChB,WAA8B,EAAE;IAEhC,OAAO,CAAC,MAAW,EAAE,WAAmB,EAAE,UAA8B,EAAE,EAAE;QAC1E,IAAA,uBAAmB,EACjB,gBAAY,EACZ;YACE,SAAS,EAAE,eAAe,CAAC,SAAS;YACpC,YAAY,EAAE,WAAW;YACzB,gBAAgB,EAAE,WAAW;YAC7B,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC;YAC7B,UAAU;SACX,EACD,MAAM,CAAC,WAAW,CACnB,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAjBD,kCAiBC;AAED;;GAEG;AACU,QAAA,SAAS,GAAG,WAAW,CAAC;AACrC;;GAEG;AACU,QAAA,IAAI,GAAG,MAAM,CAAC;AAC3B;;GAEG;AACU,QAAA,eAAe,GAAG,iBAAiB,CAAC;AACjD;;GAEG;AACU,QAAA,YAAY,GAAG,cAAc,CAAC","sourcesContent":["import { WS_EVENT_KEY, attachClassMetadata } from '../../';\n\nexport enum WSEventTypeEnum {\n ON_CONNECTION = 'ws:onConnection',\n ON_DISCONNECTION = 'ws:onDisconnection',\n ON_MESSAGE = 'ws:onMessage',\n ON_SOCKET_ERROR = 'ws:onSocketError',\n EMIT = 'ws:Emit',\n BROADCAST = 'ws:broadcast',\n}\n\nexport interface WSEventInfo {\n /**\n * web socket event name in enum\n */\n eventType: WSEventTypeEnum;\n /**\n * decorator method name\n */\n propertyName: string;\n descriptor: PropertyDescriptor;\n /**\n * the event name by user definition\n */\n messageEventName?: string;\n /**\n * the room name to emit\n */\n roomName?: string[];\n}\n\nexport function OnWSConnection(): MethodDecorator {\n return (target: any, propertyKey: string, descriptor: PropertyDescriptor) => {\n attachClassMetadata(\n WS_EVENT_KEY,\n {\n eventType: WSEventTypeEnum.ON_CONNECTION,\n propertyName: propertyKey,\n descriptor,\n },\n target.constructor\n );\n };\n}\n\nexport function OnWSDisConnection(): MethodDecorator {\n return (target: any, propertyKey: string, descriptor: PropertyDescriptor) => {\n attachClassMetadata(\n WS_EVENT_KEY,\n {\n eventType: WSEventTypeEnum.ON_DISCONNECTION,\n propertyName: propertyKey,\n descriptor,\n },\n target.constructor\n );\n };\n}\n\nexport function OnWSMessage(eventName: string): MethodDecorator {\n return (target: any, propertyKey: string, descriptor: PropertyDescriptor) => {\n attachClassMetadata(\n WS_EVENT_KEY,\n {\n eventType: WSEventTypeEnum.ON_MESSAGE,\n messageEventName: eventName,\n propertyName: propertyKey,\n descriptor,\n },\n target.constructor\n );\n };\n}\n\nexport function WSEmit(\n messageName: string,\n roomName: string | string[] = []\n): MethodDecorator {\n return (target: any, propertyKey: string, descriptor: PropertyDescriptor) => {\n attachClassMetadata(\n WS_EVENT_KEY,\n {\n eventType: WSEventTypeEnum.EMIT,\n propertyName: propertyKey,\n messageEventName: messageName,\n roomName: [].concat(roomName),\n descriptor,\n },\n target.constructor\n );\n };\n}\n\nexport function WSBroadCast(\n messageName = '',\n roomName: string | string[] = []\n): MethodDecorator {\n return (target: any, propertyKey: string, descriptor: PropertyDescriptor) => {\n attachClassMetadata(\n WS_EVENT_KEY,\n {\n eventType: WSEventTypeEnum.BROADCAST,\n propertyName: propertyKey,\n messageEventName: messageName,\n roomName: [].concat(roomName),\n descriptor,\n },\n target.constructor\n );\n };\n}\n\n/**\n * @deprecated please use @OnWSMessage\n */\nexport const OnMessage = OnWSMessage;\n/**\n * @deprecated please use @WSEmit\n */\nexport const Emit = WSEmit;\n/**\n * @deprecated please use @OnWSDisConnection\n */\nexport const OnDisConnection = OnWSDisConnection;\n/**\n * @deprecated please use @OnWSConnection\n */\nexport const OnConnection = OnWSConnection;\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"decoratorManager.js","sourceRoot":"","sources":["../src/decoratorManager.ts"],"names":[],"mappings":"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","sourcesContent":["import 'reflect-metadata';\nimport {\n ObjectDefinitionOptions,\n ObjectIdentifier,\n TagClsMetadata,\n TagPropsMetadata,\n IModuleStore,\n GroupModeType,\n} from './interface';\nimport {\n INJECT_CUSTOM_METHOD,\n INJECT_CUSTOM_PARAM,\n INJECT_CUSTOM_PROPERTY,\n INJECT_TAG,\n OBJ_DEF_CLS,\n TAGGED_CLS,\n} from './constant';\n\nimport { isNullOrUndefined, isClass, generateRandomId, merge } from './util';\nimport { camelCase } from './util/camelCase';\n\nconst debug = require('util').debuglog('midway:decorator');\n\nexport const PRELOAD_MODULE_KEY = 'INJECTION_PRELOAD_MODULE_KEY';\n\nexport const INJECT_CLASS_KEY_PREFIX = 'INJECTION_CLASS_META_DATA';\n\nexport class DecoratorManager extends Map implements IModuleStore {\n /**\n * the key for meta data store in class\n */\n injectClassKeyPrefix = INJECT_CLASS_KEY_PREFIX;\n /**\n * the key for method meta data store in class\n */\n injectClassMethodKeyPrefix = 'INJECTION_CLASS_METHOD_META_DATA';\n\n /**\n * the key for method meta data store in method\n */\n injectMethodKeyPrefix = 'INJECTION_METHOD_META_DATA';\n\n container: IModuleStore;\n\n saveModule(key, module) {\n if (this.container) {\n return this.container.saveModule(key, module);\n }\n if (!this.has(key)) {\n this.set(key, new Set());\n }\n this.get(key).add(module);\n }\n\n listModule(key) {\n if (this.container) {\n return this.container.listModule(key);\n }\n return Array.from(this.get(key) || {});\n }\n\n resetModule(key) {\n this.set(key, new Set());\n }\n\n bindContainer(container: IModuleStore) {\n this.container = container;\n this.container.transformModule(this);\n }\n\n static getDecoratorClassKey(decoratorNameKey: ObjectIdentifier) {\n return decoratorNameKey.toString() + '_CLS';\n }\n\n static removeDecoratorClassKeySuffix(decoratorNameKey: ObjectIdentifier) {\n return decoratorNameKey.toString().replace('_CLS', '');\n }\n\n static getDecoratorMethodKey(decoratorNameKey: ObjectIdentifier) {\n return decoratorNameKey.toString() + '_METHOD';\n }\n\n static getDecoratorClsExtendedKey(decoratorNameKey: ObjectIdentifier) {\n return decoratorNameKey.toString() + '_EXT';\n }\n\n static getDecoratorClsMethodPrefix(decoratorNameKey: ObjectIdentifier) {\n return decoratorNameKey.toString() + '_CLS_METHOD';\n }\n\n static getDecoratorClsMethodKey(\n decoratorNameKey: ObjectIdentifier,\n methodKey: ObjectIdentifier\n ) {\n return (\n DecoratorManager.getDecoratorClsMethodPrefix(decoratorNameKey) +\n ':' +\n methodKey.toString()\n );\n }\n\n static getDecoratorMethod(\n decoratorNameKey: ObjectIdentifier,\n methodKey: ObjectIdentifier\n ) {\n return (\n DecoratorManager.getDecoratorMethodKey(decoratorNameKey) +\n '_' +\n methodKey.toString()\n );\n }\n\n static saveMetadata(\n metaKey: string,\n target: any,\n dataKey: string,\n data: any\n ) {\n // filter Object.create(null)\n if (typeof target === 'object' && target.constructor) {\n target = target.constructor;\n }\n\n let m: Map<string, any>;\n if (Reflect.hasOwnMetadata(metaKey, target)) {\n m = Reflect.getMetadata(metaKey, target);\n } else {\n m = new Map<string, any>();\n }\n\n m.set(dataKey, data);\n Reflect.defineMetadata(metaKey, m, target);\n }\n\n static attachMetadata(\n metaKey: string,\n target: any,\n dataKey: string,\n data: any,\n groupBy?: string,\n groupMode: GroupModeType = 'one'\n ) {\n // filter Object.create(null)\n if (typeof target === 'object' && target.constructor) {\n target = target.constructor;\n }\n\n let m: Map<string, any>;\n if (Reflect.hasOwnMetadata(metaKey, target)) {\n m = Reflect.getMetadata(metaKey, target);\n } else {\n m = new Map<string, any>();\n }\n\n if (!m.has(dataKey)) {\n if (groupBy) {\n m.set(dataKey, {});\n } else {\n m.set(dataKey, []);\n }\n }\n if (groupBy) {\n if (groupMode === 'one') {\n m.get(dataKey)[groupBy] = data;\n } else {\n if (m.get(dataKey)[groupBy]) {\n m.get(dataKey)[groupBy].push(data);\n } else {\n m.get(dataKey)[groupBy] = [data];\n }\n }\n } else {\n m.get(dataKey).push(data);\n }\n Reflect.defineMetadata(metaKey, m, target);\n }\n\n static getMetadata(metaKey: string, target: any, dataKey?: string) {\n // filter Object.create(null)\n if (typeof target === 'object' && target.constructor) {\n target = target.constructor;\n }\n\n let m: Map<string, any>;\n if (!Reflect.hasOwnMetadata(metaKey, target)) {\n m = new Map<string, any>();\n Reflect.defineMetadata(metaKey, m, target);\n } else {\n m = Reflect.getMetadata(metaKey, target);\n }\n if (!dataKey) {\n return m;\n }\n return m.get(dataKey);\n }\n\n /**\n * save meta data to class or property\n * @param decoratorNameKey the alias name for decorator\n * @param data the data you want to store\n * @param target target class\n * @param propertyName\n */\n saveMetadata(\n decoratorNameKey: ObjectIdentifier,\n data,\n target,\n propertyName?\n ) {\n if (propertyName) {\n const dataKey = DecoratorManager.getDecoratorMethod(\n decoratorNameKey,\n propertyName\n );\n DecoratorManager.saveMetadata(\n this.injectMethodKeyPrefix,\n target,\n dataKey,\n data\n );\n } else {\n const dataKey = DecoratorManager.getDecoratorClassKey(decoratorNameKey);\n DecoratorManager.saveMetadata(\n this.injectClassKeyPrefix,\n target,\n dataKey,\n data\n );\n }\n }\n\n /**\n * attach data to class or property\n * @param decoratorNameKey\n * @param data\n * @param target\n * @param propertyName\n * @param groupBy\n */\n attachMetadata(\n decoratorNameKey: ObjectIdentifier,\n data,\n target,\n propertyName?: string,\n groupBy?: string,\n groupMode?: GroupModeType\n ) {\n if (propertyName) {\n const dataKey = DecoratorManager.getDecoratorMethod(\n decoratorNameKey,\n propertyName\n );\n DecoratorManager.attachMetadata(\n this.injectMethodKeyPrefix,\n target,\n dataKey,\n data,\n groupBy,\n groupMode\n );\n } else {\n const dataKey = DecoratorManager.getDecoratorClassKey(decoratorNameKey);\n DecoratorManager.attachMetadata(\n this.injectClassKeyPrefix,\n target,\n dataKey,\n data,\n groupBy,\n groupMode\n );\n }\n }\n\n /**\n * get single data from class or property\n * @param decoratorNameKey\n * @param target\n * @param propertyName\n */\n getMetadata(decoratorNameKey: ObjectIdentifier, target, propertyName?) {\n if (propertyName) {\n const dataKey = DecoratorManager.getDecoratorMethod(\n decoratorNameKey,\n propertyName\n );\n return DecoratorManager.getMetadata(\n this.injectMethodKeyPrefix,\n target,\n dataKey\n );\n } else {\n const dataKey = `${DecoratorManager.getDecoratorClassKey(\n decoratorNameKey\n )}`;\n return DecoratorManager.getMetadata(\n this.injectClassKeyPrefix,\n target,\n dataKey\n );\n }\n }\n\n /**\n * save property data to class\n * @param decoratorNameKey\n * @param data\n * @param target\n * @param propertyName\n */\n savePropertyDataToClass(\n decoratorNameKey: ObjectIdentifier,\n data,\n target,\n propertyName\n ) {\n const dataKey = DecoratorManager.getDecoratorClsMethodKey(\n decoratorNameKey,\n propertyName\n );\n DecoratorManager.saveMetadata(\n this.injectClassMethodKeyPrefix,\n target,\n dataKey,\n data\n );\n }\n\n /**\n * attach property data to class\n * @param decoratorNameKey\n * @param data\n * @param target\n * @param propertyName\n * @param groupBy\n */\n attachPropertyDataToClass(\n decoratorNameKey: ObjectIdentifier,\n data,\n target,\n propertyName,\n groupBy?: string\n ) {\n const dataKey = DecoratorManager.getDecoratorClsMethodKey(\n decoratorNameKey,\n propertyName\n );\n DecoratorManager.attachMetadata(\n this.injectClassMethodKeyPrefix,\n target,\n dataKey,\n data,\n groupBy\n );\n }\n\n /**\n * get property data from class\n * @param decoratorNameKey\n * @param target\n * @param propertyName\n */\n getPropertyDataFromClass(\n decoratorNameKey: ObjectIdentifier,\n target,\n propertyName\n ) {\n const dataKey = DecoratorManager.getDecoratorClsMethodKey(\n decoratorNameKey,\n propertyName\n );\n return DecoratorManager.getMetadata(\n this.injectClassMethodKeyPrefix,\n target,\n dataKey\n );\n }\n\n /**\n * list property data from class\n * @param decoratorNameKey\n * @param target\n */\n listPropertyDataFromClass(decoratorNameKey: ObjectIdentifier, target) {\n const originMap = DecoratorManager.getMetadata(\n this.injectClassMethodKeyPrefix,\n target\n );\n const res = [];\n for (const [key, value] of originMap) {\n if (\n key.indexOf(\n DecoratorManager.getDecoratorClsMethodPrefix(decoratorNameKey)\n ) !== -1\n ) {\n res.push(value);\n }\n }\n return res;\n }\n}\n\nlet manager = new DecoratorManager();\nif (typeof global === 'object') {\n if (global['MIDWAY_GLOBAL_DECORATOR_MANAGER']) {\n console.warn(\n 'DecoratorManager not singleton and please check @midwayjs/decorator version by \"npm ls @midwayjs/decorator\"'\n );\n manager = global['MIDWAY_GLOBAL_DECORATOR_MANAGER'];\n } else {\n global['MIDWAY_GLOBAL_DECORATOR_MANAGER'] = manager;\n }\n}\n/**\n * save data to class\n * @param decoratorNameKey\n * @param data\n * @param target\n * @param mergeIfExist\n */\nexport function saveClassMetadata(\n decoratorNameKey: ObjectIdentifier,\n data: any,\n target: any,\n mergeIfExist?: boolean\n) {\n if (mergeIfExist && typeof data === 'object') {\n const originData = manager.getMetadata(decoratorNameKey, target);\n if (!originData) {\n return manager.saveMetadata(decoratorNameKey, data, target);\n }\n if (Array.isArray(originData)) {\n return manager.saveMetadata(\n decoratorNameKey,\n originData.concat(data),\n target\n );\n } else {\n return manager.saveMetadata(\n decoratorNameKey,\n Object.assign(originData, data),\n target\n );\n }\n } else {\n return manager.saveMetadata(decoratorNameKey, data, target);\n }\n}\n\n/**\n * attach data to class\n * @param decoratorNameKey\n * @param data\n * @param target\n * @param groupBy\n */\nexport function attachClassMetadata(\n decoratorNameKey: ObjectIdentifier,\n data: any,\n target,\n groupBy?: string,\n groupMode?: GroupModeType\n) {\n return manager.attachMetadata(\n decoratorNameKey,\n data,\n target,\n undefined,\n groupBy,\n groupMode\n );\n}\n\n/**\n * get data from class and proto\n * @param decoratorNameKey\n * @param target\n * @param propertyName\n * @param useCache\n */\nexport function getClassExtendedMetadata(\n decoratorNameKey: ObjectIdentifier,\n target,\n propertyName?: string,\n useCache?: boolean\n) {\n if (useCache === undefined) {\n useCache = true;\n }\n const extKey = DecoratorManager.getDecoratorClsExtendedKey(decoratorNameKey);\n let metadata = manager.getMetadata(extKey, target, propertyName);\n if (useCache && metadata !== undefined) {\n return metadata;\n }\n const father = Reflect.getPrototypeOf(target);\n if (father && father.constructor !== Object) {\n metadata = merge(\n getClassExtendedMetadata(\n decoratorNameKey,\n father,\n propertyName,\n useCache\n ),\n manager.getMetadata(decoratorNameKey, target, propertyName)\n );\n }\n manager.saveMetadata(extKey, metadata || null, target, propertyName);\n return metadata;\n}\n\n/**\n * get data from class\n * @param decoratorNameKey\n * @param target\n */\nexport function getClassMetadata(decoratorNameKey: ObjectIdentifier, target) {\n return manager.getMetadata(decoratorNameKey, target);\n}\n\n/**\n * save property data to class\n * @param decoratorNameKey\n * @param data\n * @param target\n * @param propertyName\n */\nexport function savePropertyDataToClass(\n decoratorNameKey: ObjectIdentifier,\n data,\n target,\n propertyName\n) {\n return manager.savePropertyDataToClass(\n decoratorNameKey,\n data,\n target,\n propertyName\n );\n}\n\n/**\n * attach property data to class\n * @param decoratorNameKey\n * @param data\n * @param target\n * @param propertyName\n * @param groupBy\n */\nexport function attachPropertyDataToClass(\n decoratorNameKey: ObjectIdentifier,\n data,\n target,\n propertyName,\n groupBy?: string\n) {\n return manager.attachPropertyDataToClass(\n decoratorNameKey,\n data,\n target,\n propertyName,\n groupBy\n );\n}\n\n/**\n * get property data from class\n * @param decoratorNameKey\n * @param target\n * @param propertyName\n */\nexport function getPropertyDataFromClass(\n decoratorNameKey: ObjectIdentifier,\n target,\n propertyName\n) {\n return manager.getPropertyDataFromClass(\n decoratorNameKey,\n target,\n propertyName\n );\n}\n\n/**\n * list property data from class\n * @param decoratorNameKey\n * @param target\n */\nexport function listPropertyDataFromClass(\n decoratorNameKey: ObjectIdentifier,\n target\n) {\n return manager.listPropertyDataFromClass(decoratorNameKey, target);\n}\n\n/**\n * save property data\n * @param decoratorNameKey\n * @param data\n * @param target\n * @param propertyName\n */\nexport function savePropertyMetadata(\n decoratorNameKey: ObjectIdentifier,\n data,\n target,\n propertyName\n) {\n return manager.saveMetadata(decoratorNameKey, data, target, propertyName);\n}\n\n/**\n * attach property data\n * @param decoratorNameKey\n * @param data\n * @param target\n * @param propertyName\n */\nexport function attachPropertyMetadata(\n decoratorNameKey: ObjectIdentifier,\n data,\n target,\n propertyName\n) {\n return manager.attachMetadata(decoratorNameKey, data, target, propertyName);\n}\n\n/**\n * get property data\n * @param decoratorNameKey\n * @param target\n * @param propertyName\n */\nexport function getPropertyMetadata(\n decoratorNameKey: ObjectIdentifier,\n target,\n propertyName\n) {\n return manager.getMetadata(decoratorNameKey, target, propertyName);\n}\n\n/**\n * save preload module by target\n * @param target\n */\nexport function savePreloadModule(target) {\n return saveModule(PRELOAD_MODULE_KEY, target);\n}\n\n/**\n * list preload module\n */\nexport function listPreloadModule(): any[] {\n return listModule(PRELOAD_MODULE_KEY);\n}\n\n/**\n * save module to inner map\n * @param decoratorNameKey\n * @param target\n */\nexport function saveModule(decoratorNameKey: ObjectIdentifier, target) {\n if (isClass(target)) {\n saveProviderId(undefined, target);\n }\n return manager.saveModule(decoratorNameKey, target);\n}\n\nexport function bindContainer(container) {\n return manager.bindContainer(container);\n}\n\nexport function clearBindContainer() {\n return (manager.container = null);\n}\n\n/**\n * list module from decorator key\n * @param decoratorNameKey\n * @param filter\n */\nexport function listModule(\n decoratorNameKey: ObjectIdentifier,\n filter?: (module) => boolean\n): any[] {\n const modules = manager.listModule(decoratorNameKey);\n if (filter) {\n return modules.filter(filter);\n } else {\n return modules;\n }\n}\n\n/**\n * reset module\n * @param decoratorNameKey\n */\nexport function resetModule(decoratorNameKey: ObjectIdentifier): void {\n return manager.resetModule(decoratorNameKey);\n}\n\n/**\n * clear all module\n */\nexport function clearAllModule() {\n debug('--- clear all module here ---');\n return manager.clear();\n}\n\nexport interface TSDesignType {\n name: string;\n originDesign: any;\n isBaseType: boolean;\n}\n\nfunction transformTypeFromTSDesign(designFn): TSDesignType {\n if (isNullOrUndefined(designFn)) {\n return { name: 'undefined', isBaseType: true, originDesign: designFn };\n }\n\n switch (designFn.name) {\n case 'String':\n return { name: 'string', isBaseType: true, originDesign: designFn };\n case 'Number':\n return { name: 'number', isBaseType: true, originDesign: designFn };\n case 'Boolean':\n return { name: 'boolean', isBaseType: true, originDesign: designFn };\n case 'Symbol':\n return { name: 'symbol', isBaseType: true, originDesign: designFn };\n case 'Object':\n return { name: 'object', isBaseType: true, originDesign: designFn };\n case 'Function':\n return { name: 'function', isBaseType: true, originDesign: designFn };\n default:\n return {\n name: designFn.name,\n isBaseType: false,\n originDesign: designFn,\n };\n }\n}\n\n/**\n * save property inject args\n * @param opts 参数\n */\nexport function savePropertyInject(opts: {\n // id\n identifier: ObjectIdentifier;\n // class\n target: any;\n // propertyName\n targetKey: string;\n args?: any;\n}) {\n // 1、use identifier by user\n let identifier = opts.identifier;\n // 2、use identifier by class uuid\n if (!identifier) {\n const type = getPropertyType(opts.target, opts.targetKey);\n if (\n !type.isBaseType &&\n isClass(type.originDesign) &&\n isProvide(type.originDesign)\n ) {\n identifier = getProviderUUId(type.originDesign);\n }\n if (!identifier) {\n // 3、use identifier by property name\n identifier = opts.targetKey;\n }\n }\n attachClassMetadata(\n INJECT_TAG,\n {\n targetKey: opts.targetKey, // 注入的属性名\n value: identifier, // 注入的 id\n args: opts.args, // 注入的其他参数\n },\n opts.target,\n opts.targetKey\n );\n}\n\n/**\n * get property inject args\n * @param target\n * @param useCache\n */\nexport function getPropertyInject(\n target: any,\n useCache?: boolean\n): {\n [methodName: string]: TagPropsMetadata;\n} {\n return getClassExtendedMetadata(INJECT_TAG, target, undefined, useCache);\n}\n\n/**\n * save class object definition\n * @param target class\n * @param props property data\n */\nexport function saveObjectDefinition(target: any, props = {}) {\n saveClassMetadata(OBJ_DEF_CLS, props, target, true);\n return target;\n}\n\n/**\n * get class object definition from metadata\n * @param target\n */\nexport function getObjectDefinition(target: any): ObjectDefinitionOptions {\n return getClassExtendedMetadata(OBJ_DEF_CLS, target);\n}\n\n/**\n * class provider id\n * @param identifier id\n * @param target class\n */\nexport function saveProviderId(identifier: ObjectIdentifier, target: any) {\n if (isProvide(target)) {\n if (identifier) {\n const meta = getClassMetadata(TAGGED_CLS, target);\n if (meta.id !== identifier) {\n meta.id = identifier;\n // save class id and uuid\n saveClassMetadata(TAGGED_CLS, meta, target);\n debug(`update provide: ${target.name} -> ${meta.uuid}`);\n }\n }\n } else {\n // save\n const uuid = generateRandomId();\n // save class id and uuid\n saveClassMetadata(\n TAGGED_CLS,\n {\n id: identifier,\n originName: target.name,\n uuid,\n name: camelCase(target.name),\n },\n target\n );\n debug(`save provide: ${target.name} -> ${uuid}`);\n }\n\n return target;\n}\n\n/**\n * get provider id from module\n * @param module\n */\nexport function getProviderId(module): string {\n const metaData = getClassMetadata(TAGGED_CLS, module) as TagClsMetadata;\n if (metaData && metaData.id) {\n return metaData.id;\n }\n}\n\nexport function getProviderName(module): string {\n const metaData = getClassMetadata(TAGGED_CLS, module) as TagClsMetadata;\n if (metaData && metaData.name) {\n return metaData.name;\n }\n}\n\n/**\n * get provider uuid from module\n * @param module\n */\nexport function getProviderUUId(module): string {\n const metaData = getClassMetadata(TAGGED_CLS, module) as TagClsMetadata;\n if (metaData && metaData.uuid) {\n return metaData.uuid;\n }\n}\n\n/**\n * use @Provide decorator or not\n * @param target class\n */\nexport function isProvide(target: any): boolean {\n return !!getClassMetadata(TAGGED_CLS, target);\n}\n\nexport enum BaseType {\n Boolean = 'boolean',\n Number = 'number',\n String = 'string',\n}\n\n/**\n * get parameters type by reflect-metadata\n */\nexport function getMethodParamTypes(target, methodName: string | symbol) {\n if (isClass(target)) {\n target = target.prototype;\n }\n return Reflect.getMetadata('design:paramtypes', target, methodName);\n}\n\n/**\n * get property(method) type from metadata\n * @param target\n * @param methodName\n */\nexport function getPropertyType(target, methodName: string | symbol) {\n return transformTypeFromTSDesign(\n Reflect.getMetadata('design:type', target, methodName)\n );\n}\n\n/**\n * get method return type from metadata\n * @param target\n * @param methodName\n */\nexport function getMethodReturnTypes(target, methodName: string | symbol) {\n if (isClass(target)) {\n target = target.prototype;\n }\n return Reflect.getMetadata('design:returntype', target, methodName);\n}\n\n/**\n * create a custom property inject\n * @param decoratorKey\n * @param metadata\n * @param impl default true, configuration need decoratorService.registerMethodHandler\n */\nexport function createCustomPropertyDecorator(\n decoratorKey: string,\n metadata: any,\n impl = true\n): PropertyDecorator {\n return function (target: any, propertyName: string): void {\n attachClassMetadata(\n INJECT_CUSTOM_PROPERTY,\n {\n propertyName,\n key: decoratorKey,\n metadata,\n impl,\n },\n target,\n propertyName\n );\n };\n}\n/**\n *\n * @param decoratorKey\n * @param metadata\n * @param impl default true, configuration need decoratorService.registerMethodHandler\n */\nexport function createCustomMethodDecorator(\n decoratorKey: string,\n metadata: any,\n impl = true\n): MethodDecorator {\n return function (target: any, propertyName: string, descriptor) {\n attachClassMetadata(\n INJECT_CUSTOM_METHOD,\n {\n propertyName,\n key: decoratorKey,\n metadata,\n impl,\n },\n target\n );\n };\n}\n/**\n *\n * @param decoratorKey\n * @param metadata\n * @param impl default true, configuration need decoratorService.registerMethodHandler\n */\nexport function createCustomParamDecorator(\n decoratorKey: string,\n metadata: any,\n impl = true\n): ParameterDecorator {\n return function (target: any, propertyName: string, parameterIndex: number) {\n // const parameterName = getParamNames(target[methodName])[parameterIndex];\n attachClassMetadata(\n INJECT_CUSTOM_PARAM,\n {\n key: decoratorKey,\n parameterIndex,\n propertyName,\n metadata,\n impl,\n },\n target,\n propertyName,\n 'multi'\n );\n };\n}\n"]}
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,8CAA4B;AAC5B,6CAA2B;AAC3B,qDAAmC;AACnC,sCAAmD;AAA1C,8FAAA,KAAK,OAAA;AAAE,8FAAA,KAAK,OAAA;AAAE,8FAAA,KAAK,OAAA;AAC5B,gCAAsC;AAA7B,+FAAA,SAAS,OAAA;AAClB,gDAA8B","sourcesContent":["export * from './decorator';\nexport * from './interface';\nexport * from './constant';\nexport * from './decoratorManager';\nexport { Types, Utils, sleep } from './util/index';\nexport { FileUtils } from './util/fs';\nexport * from './util/format';\n"]}
|
package/dist/interface.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"interface.js","sourceRoot":"","sources":["../src/interface.ts"],"names":[],"mappings":";;;AAIA,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,oCAAuB,CAAA;IACvB,gCAAmB,CAAA;IACnB,oCAAuB,CAAA;AACzB,CAAC,EAJW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAIpB;AAuCD,IAAY,cAIX;AAJD,WAAY,cAAc;IACxB,iCAAe,CAAA;IACf,+BAAa,CAAA;IACb,6BAAW,CAAA;AACb,CAAC,EAJW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAIzB;AAED,IAAY,cAKX;AALD,WAAY,cAAc;IACxB,uCAAqB,CAAA;IACrB,+BAAa,CAAA;IACb,iCAAe,CAAA;IACf,iCAAe,CAAA;AACjB,CAAC,EALW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAKzB;AA+JD,MAAsB,aAAa;CAElC;AAFD,sCAEC;AAED,MAAa,mBAAoB,SAAQ,aAAa;IAcpD,YAAmB,IAAY;QAC7B,KAAK,EAAE,CAAC;QADS,SAAI,GAAJ,IAAI,CAAQ;IAE/B,CAAC;IAAA,CAAC;;AAhBJ,kDAiBC;AAhBQ,uBAAG,GAAG,IAAI,mBAAmB,CAAC,eAAe,CAAC,CAAC;AAC/C,2BAAO,GAAG,IAAI,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;AACvD,+BAAW,GAAG,IAAI,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;AAC3D,wBAAI,GAAG,IAAI,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;AACjD,2BAAO,GAAG,IAAI,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;AACpD,+BAAW,GAAG,IAAI,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;AAC5D,yBAAK,GAAG,IAAI,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;AACtD,sBAAE,GAAG,IAAI,mBAAmB,CAAC,cAAc,CAAC,CAAC;AAC7C,kCAAc,GAAG,IAAI,mBAAmB,CAAC,0BAA0B,CAAC,CAAC;AACrE,0BAAM,GAAG,IAAI,mBAAmB,CAAC,EAAE,CAAC,CAAC;AACrC,yBAAK,GAAG,IAAI,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACzC,yBAAK,GAAG,IAAI,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACzC,wBAAI,GAAG,IAAI,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;AAM1D,IAAY,qBAWX;AAXD,WAAY,qBAAqB;IAC/B,wCAAe,CAAA;IACf,sCAAa,CAAA;IACb,8CAAqB,CAAA;IACrB,kCAAS,CAAA;IACT,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,wCAAe,CAAA;IACf,kCAAS,CAAA;IACT,oCAAW,CAAA;IACX,sCAAa,CAAA;AACf,CAAC,EAXW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAWhC","sourcesContent":["export type MiddlewareParamArray = Array<string | any>;\nexport type ObjectIdentifier = string | Symbol;\nexport type GroupModeType = 'one' | 'multi';\n\nexport enum ScopeEnum {\n Singleton = 'Singleton',\n Request = 'Request',\n Prototype = 'Prototype',\n}\n\n/**\n * 内部管理的属性、json、ref等解析实例存储\n */\nexport interface IManagedInstance {\n type: string;\n value?: any;\n args?: any;\n}\n\nexport interface ObjectDefinitionOptions {\n isAsync?: boolean;\n initMethod?: string;\n destroyMethod?: string;\n scope?: ScopeEnum;\n constructorArgs?: any[];\n namespace?: string;\n srcPath?: string;\n allowDowngrade?: boolean;\n}\n\nexport interface TagPropsMetadata {\n key: string | number | symbol;\n value: any;\n args?: any;\n}\n\nexport interface TagClsMetadata {\n id: string;\n originName: string;\n uuid: string;\n name: string;\n}\n\nexport interface ReflectResult {\n [key: string]: any[];\n}\n\nexport enum MSProviderType {\n DUBBO = 'dubbo',\n GRPC = 'gRPC',\n HSF = 'hsf',\n}\n\nexport enum MSListenerType {\n RABBITMQ = 'rabbitmq',\n MQTT = 'mqtt',\n KAFKA = 'kafka',\n REDIS = 'redis',\n}\n\nexport namespace ConsumerMetadata {\n\n export interface ConsumerMetadata {\n type: MSListenerType,\n metadata: any;\n }\n}\n\n/**\n * grpc decorator metadata format\n */\nexport namespace GRPCMetadata {\n export interface ProviderOptions {\n serviceName?: string;\n package?: string;\n }\n\n export interface ProviderMetadata {\n type: MSProviderType,\n metadata: ProviderOptions\n }\n}\n\nexport namespace FaaSMetadata {\n\n export interface ServerlessFunctionOptions {\n /**\n * function name\n */\n functionName?: string;\n /**\n * function description\n */\n description?: string;\n /**\n * function memory size, unit: M\n */\n memorySize?: number;\n /**\n * function timeout value, unit: seconds\n */\n timeout?: number;\n /**\n * function init timeout, just for aliyun\n */\n initTimeout?: number;\n /**\n * function runtime, nodejs10, nodejs12, nodejs14\n */\n runtime?: string;\n /**\n * invoke concurrency, just for aliyun\n */\n concurrency?: number;\n /**\n * function invoke stage, like env, just for tencent\n */\n stage?: string;\n /**\n * environment variable, key-value\n */\n environment?: any;\n /**\n * deploy or not\n */\n isDeploy?: boolean;\n }\n\n interface TriggerCommonOptions {\n /**\n * function name\n */\n functionName?: string;\n /**\n * serverless event name\n */\n name?: string;\n /**\n * function invoke role, just for aliyun\n */\n role?: string;\n /**\n * function publish version, just for aliyun\n */\n version?: string;\n /**\n * deploy or not\n */\n isDeploy?: boolean;\n /**\n * function middleware\n */\n middleware?: any[];\n }\n\n export interface EventTriggerOptions extends TriggerCommonOptions {\n\n }\n\n export interface HTTPTriggerOptions extends TriggerCommonOptions {\n path: string;\n method?: 'get' | 'post' | 'delete' | 'put' | 'head' | 'patch' | 'all';\n }\n\n export interface APIGatewayTriggerOptions extends HTTPTriggerOptions {\n }\n\n export interface OSTriggerOptions extends TriggerCommonOptions {\n bucket: string;\n events: string | string[];\n filter?: {\n prefix: string;\n suffix: string;\n };\n }\n\n export interface LogTriggerOptions extends TriggerCommonOptions {\n source: string;\n project: string;\n log: string;\n retryTime?: number;\n interval?: number;\n }\n\n export interface TimerTriggerOptions extends TriggerCommonOptions {\n type: 'cron' | 'every' | 'interval';\n value: string;\n payload?: string;\n }\n\n export interface MQTriggerOptions extends TriggerCommonOptions {\n topic: string;\n tags?: string;\n region?: string;\n strategy?: 'BACKOFF_RETRY' | 'EXPONENTIAL_DECAY_RETRY';\n }\n\n export interface HSFTriggerOptions extends TriggerCommonOptions {\n }\n\n export interface MTopTriggerOptions extends TriggerCommonOptions {\n }\n\n export interface CDNTriggerOptions extends TriggerCommonOptions {\n }\n\n export type EventTriggerUnionOptions = EventTriggerOptions | HTTPTriggerOptions | APIGatewayTriggerOptions | OSTriggerOptions | CDNTriggerOptions | LogTriggerOptions | TimerTriggerOptions | MQTriggerOptions | HSFTriggerOptions | MTopTriggerOptions;\n\n export interface TriggerMetadata {\n type: ServerlessTriggerType;\n functionName?: string;\n methodName: string,\n metadata: EventTriggerUnionOptions;\n }\n\n}\n\nexport abstract class FrameworkType {\n abstract name: string;\n}\n\nexport class MidwayFrameworkType extends FrameworkType {\n static WEB = new MidwayFrameworkType('@midwayjs/web');\n static WEB_KOA = new MidwayFrameworkType('@midwayjs/web-koa');\n static WEB_EXPRESS = new MidwayFrameworkType('@midwayjs/express');\n static FAAS = new MidwayFrameworkType('@midwayjs/faas');\n static MS_GRPC = new MidwayFrameworkType('@midwayjs/grpc');\n static MS_RABBITMQ = new MidwayFrameworkType('@midwayjs/rabbitmq');\n static WS_IO = new MidwayFrameworkType('@midwayjs/socketio');\n static WS = new MidwayFrameworkType('@midwayjs/ws');\n static SERVERLESS_APP = new MidwayFrameworkType('@midwayjs/serverless-app');\n static CUSTOM = new MidwayFrameworkType('');\n static EMPTY = new MidwayFrameworkType('empty');\n static LIGHT = new MidwayFrameworkType('light');\n static TASK = new MidwayFrameworkType('@midwayjs/task');\n constructor(public name: string) {\n super();\n };\n}\n\nexport enum ServerlessTriggerType {\n EVENT = 'event',\n HTTP = 'http',\n API_GATEWAY = 'apigw',\n OS = 'os',\n CDN = 'cdn',\n LOG = 'log',\n TIMER = 'timer',\n MQ = 'mq',\n HSF = 'hsf',\n MTOP = 'mtop',\n}\n\nexport interface IModuleStore {\n listModule(key: string);\n saveModule(key: string, module: any);\n transformModule?(moduleMap: Map<string, Set<any>>);\n}\n"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"camelCase.js","sourceRoot":"","sources":["../../src/util/camelCase.ts"],"names":[],"mappings":"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","sourcesContent":["const UPPERCASE = /[\\p{Lu}]/u;\nconst LOWERCASE = /[\\p{Ll}]/u;\nconst IDENTIFIER = /([\\p{Alpha}\\p{N}_]|$)/u;\nconst SEPARATORS = /[_.\\- ]+/;\n\nconst LEADING_SEPARATORS = new RegExp('^' + SEPARATORS.source);\nconst SEPARATORS_AND_IDENTIFIER = new RegExp(\n SEPARATORS.source + IDENTIFIER.source,\n 'gu'\n);\nconst NUMBERS_AND_IDENTIFIER = new RegExp('\\\\d+' + IDENTIFIER.source, 'gu');\n\nconst preserveCamelCase = (string, toLowerCase, toUpperCase) => {\n let isLastCharLower = false;\n let isLastCharUpper = false;\n let isLastLastCharUpper = false;\n\n for (let i = 0; i < string.length; i++) {\n const character = string[i];\n\n if (isLastCharLower && UPPERCASE.test(character)) {\n string = string.slice(0, i) + '-' + string.slice(i);\n isLastCharLower = false;\n isLastLastCharUpper = isLastCharUpper;\n isLastCharUpper = true;\n i++;\n } else if (\n isLastCharUpper &&\n isLastLastCharUpper &&\n LOWERCASE.test(character)\n ) {\n string = string.slice(0, i - 1) + '-' + string.slice(i - 1);\n isLastLastCharUpper = isLastCharUpper;\n isLastCharUpper = false;\n isLastCharLower = true;\n } else {\n isLastCharLower =\n toLowerCase(character) === character &&\n toUpperCase(character) !== character;\n isLastLastCharUpper = isLastCharUpper;\n isLastCharUpper =\n toUpperCase(character) === character &&\n toLowerCase(character) !== character;\n }\n }\n\n return string;\n};\n\nconst postProcess = (input, toUpperCase) => {\n SEPARATORS_AND_IDENTIFIER.lastIndex = 0;\n NUMBERS_AND_IDENTIFIER.lastIndex = 0;\n\n return input\n .replace(SEPARATORS_AND_IDENTIFIER, (_, identifier) =>\n toUpperCase(identifier)\n )\n .replace(NUMBERS_AND_IDENTIFIER, m => toUpperCase(m));\n};\n\nfunction camelCaseOrigin(\n input: string,\n options?: {\n pascalCase?: boolean;\n }\n): string {\n options = {\n pascalCase: false,\n ...options,\n };\n\n input = input.trim();\n\n if (input.length === 0) {\n return '';\n }\n\n const toLowerCase = string => string.toLowerCase();\n const toUpperCase = string => string.toUpperCase();\n\n if (input.length === 1) {\n return options.pascalCase ? toUpperCase(input) : toLowerCase(input);\n }\n\n const hasUpperCase = input !== toLowerCase(input);\n\n if (hasUpperCase) {\n input = preserveCamelCase(input, toLowerCase, toUpperCase);\n }\n\n input = input.replace(LEADING_SEPARATORS, '');\n\n input = toLowerCase(input);\n\n if (options.pascalCase) {\n input = toUpperCase(input.charAt(0)) + input.slice(1);\n }\n\n return postProcess(input, toUpperCase);\n}\n\nexport function camelCase(input: string): string {\n return camelCaseOrigin(input, {\n pascalCase: false,\n });\n}\n\nexport function pascalCase(input: string): string {\n return camelCaseOrigin(input, {\n pascalCase: true,\n });\n}\n"]}
|
package/dist/util/format.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/util/format.ts"],"names":[],"mappings":";;;AAAA,wBAAwB;AACxB,MAAM,CAAC,GAAG,IAAI,CAAC;AACf,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;AACjB,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;AACjB,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;AACjB,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAChB,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;AAErB,MAAM,EAAE,GAAG;IACT,UAAU,EAAE,CAAC;IACb,UAAU,EAAE,CAAC;IACb,QAAQ,EAAE,CAAC;IACX,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,CAAC;IACX,QAAQ,EAAE,CAAC;CACZ,CAAC;AAEF,qBAAqB;AACrB,MAAM,OAAO,GAAG;IACd,YAAY,EAAE,aAAa;IAC3B,YAAY,EAAE,aAAa;IAC3B,UAAU,EAAE,aAAa;IACzB,SAAS,EAAE,aAAa;IACxB,sBAAsB,EAAE,cAAc;IACtC,qBAAqB,EAAE,cAAc;IACrC,kBAAkB,EAAE,eAAe;IACnC,mBAAmB,EAAE,gBAAgB;IACrC,mBAAmB,EAAE,gBAAgB;IACrC,kBAAkB,EAAE,eAAe;IACnC,mBAAmB,EAAE,gBAAgB;IACrC,mBAAmB,EAAE,gBAAgB;CACtC,CAAC;AAEW,QAAA,MAAM,GAAG;IACpB,EAAE;IACF,OAAO;CACR,CAAC","sourcesContent":["// value from ms package\nconst s = 1000;\nconst m = s * 60;\nconst h = m * 60;\nconst d = h * 24;\nconst w = d * 7;\nconst y = d * 365.25;\n\nconst MS = {\n ONE_SECOND: s,\n ONE_MINUTE: m,\n ONE_HOUR: h,\n ONE_DAY: d,\n ONE_WEEK: w,\n ONE_YEAR: y,\n};\n\n// crontab pre format\nconst CRONTAB = {\n EVERY_SECOND: '* * * * * *',\n EVERY_MINUTE: '0 * * * * *',\n EVERY_HOUR: '0 0 * * * *',\n EVERY_DAY: '0 0 0 * * *',\n EVERY_DAY_ZERO_FIFTEEN: '0 15 0 * * *',\n EVERY_DAY_ONE_FIFTEEN: '0 15 1 * * *',\n EVERY_PER_5_SECOND: '*/5 * * * * *',\n EVERY_PER_10_SECOND: '*/10 * * * * *',\n EVERY_PER_30_SECOND: '*/30 * * * * *',\n EVERY_PER_5_MINUTE: '0 */5 * * * *',\n EVERY_PER_10_MINUTE: '0 */10 * * * *',\n EVERY_PER_30_MINUTE: '0 */30 * * * *',\n};\n\nexport const FORMAT = {\n MS,\n CRONTAB,\n};\n"]}
|
package/dist/util/fs.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"fs.js","sourceRoot":"","sources":["../../src/util/fs.ts"],"names":[],"mappings":";;;AAAA,2BAAyC;AAElC,KAAK,UAAU,MAAM,CAAC,CAAC;IAC5B,OAAO,aAAQ;SACZ,MAAM,CAAC,CAAC,EAAE,cAAS,CAAC,IAAI,CAAC;SACzB,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;SAChB,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;AACxB,CAAC;AALD,wBAKC;AAEY,QAAA,SAAS,GAAG;IACvB,MAAM;CACP,CAAC","sourcesContent":["import { constants, promises } from 'fs';\n\nexport async function exists(p) {\n return promises\n .access(p, constants.F_OK)\n .then(() => true)\n .catch(() => false);\n}\n\nexport const FileUtils = {\n exists,\n};\n"]}
|
package/dist/util/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"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","sourcesContent":["import * as util from 'util';\nimport * as crypto from 'crypto';\nimport { camelCase, pascalCase } from './camelCase';\nimport { randomUUID } from './uuid';\n\nconst ToString = Function.prototype.toString;\nconst hasOwn = Object.prototype.hasOwnProperty;\nconst toStr = Object.prototype.toString;\n\nfunction fnBody(fn) {\n return ToString.call(fn)\n .replace(/^[^{]*{\\s*/, '')\n .replace(/\\s*}[^}]*$/, '');\n}\n\nexport function isString(value) {\n return typeof value === 'string';\n}\n\nexport function isClass(fn) {\n if (typeof fn !== 'function') {\n return false;\n }\n\n if (/^class[\\s{]/.test(ToString.call(fn))) {\n return true;\n }\n\n // babel.js classCallCheck() & inlined\n const body = fnBody(fn);\n return (\n /classCallCheck\\(/.test(body) ||\n /TypeError\\(\"Cannot call a class as a function\"\\)/.test(body)\n );\n}\n\nexport function isAsyncFunction(value) {\n return util.types.isAsyncFunction(value);\n}\n\nexport function isGeneratorFunction(value) {\n return util.types.isGeneratorFunction(value);\n}\n\nexport function isPromise(value) {\n return util.types.isPromise(value);\n}\n\nexport function isFunction(value) {\n return typeof value === 'function';\n}\n\nexport function isObject(value) {\n return value !== null && typeof value === 'object';\n}\n\nexport function isPlainObject(obj) {\n if (!obj || toStr.call(obj) !== '[object Object]') {\n return false;\n }\n\n const hasOwnConstructor = hasOwn.call(obj, 'constructor');\n const hasIsPrototypeOf =\n obj.constructor &&\n obj.constructor.prototype &&\n hasOwn.call(obj.constructor.prototype, 'isPrototypeOf');\n // Not own constructor property must be Object\n if (obj.constructor && !hasOwnConstructor && !hasIsPrototypeOf) {\n return false;\n }\n\n // Own properties are enumerated firstly, so to speed up,\n // if last one is own, then all properties are own.\n let key;\n for (key in obj) {\n /**/\n }\n\n return typeof key === 'undefined' || hasOwn.call(obj, key);\n}\n\nexport function isNumber(value) {\n return typeof value === 'number';\n}\n\nexport function isProxy(value) {\n return util.types.isProxy(value);\n}\n\nexport function isMap(value) {\n return util.types.isMap(value);\n}\n\nexport function isSet(value) {\n return util.types.isSet(value);\n}\n\nexport function isRegExp(value) {\n return util.types.isRegExp(value);\n}\n\nexport function isUndefined(value) {\n return value === undefined;\n}\n\nexport function isNull(value) {\n return value === null;\n}\n\nexport function isNullOrUndefined(value) {\n return isUndefined(value) || isNull(value);\n}\n\nexport function sleep(sleepTime = 1000) {\n return new Promise<void>(resolve => {\n setTimeout(() => {\n resolve();\n }, sleepTime);\n });\n}\n\nconst STRIP_COMMENTS = /((\\/\\/.*$)|(\\/\\*[\\s\\S]*?\\*\\/))/gm;\n\n/**\n * get parameter name from function\n * @param func\n */\nexport function getParamNames(func): string[] {\n const fnStr = func.toString().replace(STRIP_COMMENTS, '');\n let result = fnStr\n .slice(fnStr.indexOf('(') + 1, fnStr.indexOf(')'))\n .split(',')\n .map(content => {\n return content.trim().replace(/\\s?=.*$/, '');\n });\n\n if (result.length === 1 && result[0] === '') {\n result = [];\n }\n return result;\n}\n\n/**\n * generate a lightweight 32 bit random id, enough for ioc container\n */\nexport function generateRandomId(): string {\n // => f9b327e70bbcf42494ccb28b2d98e00e\n return crypto.randomBytes(16).toString('hex');\n}\n\nexport function merge(target: any, src: any) {\n if (!target) {\n target = src;\n src = null;\n }\n if (!target) {\n return null;\n }\n if (Array.isArray(target)) {\n return target.concat(src || []);\n }\n if (typeof target === 'object') {\n return Object.assign({}, target, src);\n }\n throw new Error('can not merge meta that type of ' + typeof target);\n}\n\nexport function toAsyncFunction<T extends (...args) => any>(\n method: T\n): (...args: Parameters<T>) => Promise<ReturnType<T>> {\n if (isAsyncFunction(method)) {\n return method as any;\n } else {\n return async function (...args) {\n return Promise.resolve(method.call(this, ...args));\n } as any;\n }\n}\n\nexport const Types = {\n isClass,\n isAsyncFunction,\n isGeneratorFunction,\n isString,\n isPromise,\n isFunction,\n isObject,\n isPlainObject,\n isNumber,\n isProxy,\n isMap,\n isSet,\n isRegExp,\n isUndefined,\n isNull,\n isNullOrUndefined,\n};\n\nexport const Utils = {\n sleep,\n getParamNames,\n generateRandomId,\n merge,\n camelCase,\n pascalCase,\n randomUUID,\n toAsyncFunction,\n};\n"]}
|
package/dist/util/uuid.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"uuid.js","sourceRoot":"","sources":["../../src/util/uuid.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AAEjC;;GAEG;AACH,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,qCAAqC;AAC5E,IAAI,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC;AAE/B,SAAS,GAAG;IACV,IAAI,OAAO,GAAG,SAAS,CAAC,MAAM,GAAG,EAAE,EAAE;QACnC,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;QACjC,OAAO,GAAG,CAAC,CAAC;KACb;IACD,OAAO,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;AACnD,CAAC;AAED;;;GAGG;AACH,MAAM,SAAS,GAAG,EAAE,CAAC;AAErB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,CAAC,EAAE;IAC5B,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;CACpD;AAED,SAAS,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC;IACtC,uEAAuE;IACvE,oFAAoF;IACpF,OAAO,CACL,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1B,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1B,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1B,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1B,GAAG;QACH,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1B,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1B,GAAG;QACH,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1B,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1B,GAAG;QACH,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1B,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1B,GAAG;QACH,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;QAC3B,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;QAC3B,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;QAC3B,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;QAC3B,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;QAC3B,SAAS,CAAC,GAAG,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAC5B,CAAC,WAAW,EAAE,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,SAAgB,UAAU;IACxB,gBAAgB;IAChB,IAAI,MAAM,CAAC,YAAY,CAAC,EAAE;QACxB,OAAO,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;KAC/B;IACD,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC;IACnB,gEAAgE;IAChE,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAClC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAElC,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAXD,gCAWC","sourcesContent":["import * as crypto from 'crypto';\n\n/**\n * code fork from https://github.com/uuidjs/uuid/blob/main/src/stringify.js\n */\nconst rnds8Pool = new Uint8Array(256); // # of random values to pre-allocate\nlet poolPtr = rnds8Pool.length;\n\nfunction rng() {\n if (poolPtr > rnds8Pool.length - 16) {\n crypto.randomFillSync(rnds8Pool);\n poolPtr = 0;\n }\n return rnds8Pool.slice(poolPtr, (poolPtr += 16));\n}\n\n/**\n * Convert array of 16 byte values to UUID string format of the form:\n * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX\n */\nconst byteToHex = [];\n\nfor (let i = 0; i < 256; ++i) {\n byteToHex.push((i + 0x100).toString(16).substr(1));\n}\n\nfunction unsafeStringify(arr, offset = 0) {\n // Note: Be careful editing this code! It's been tuned for performance\n // and works in ways you may not expect. See https://github.com/uuidjs/uuid/pull/434\n return (\n byteToHex[arr[offset + 0]] +\n byteToHex[arr[offset + 1]] +\n byteToHex[arr[offset + 2]] +\n byteToHex[arr[offset + 3]] +\n '-' +\n byteToHex[arr[offset + 4]] +\n byteToHex[arr[offset + 5]] +\n '-' +\n byteToHex[arr[offset + 6]] +\n byteToHex[arr[offset + 7]] +\n '-' +\n byteToHex[arr[offset + 8]] +\n byteToHex[arr[offset + 9]] +\n '-' +\n byteToHex[arr[offset + 10]] +\n byteToHex[arr[offset + 11]] +\n byteToHex[arr[offset + 12]] +\n byteToHex[arr[offset + 13]] +\n byteToHex[arr[offset + 14]] +\n byteToHex[arr[offset + 15]]\n ).toLowerCase();\n}\n\n/**\n * a easy uuid v4 generator\n */\nexport function randomUUID(): string {\n // node > v14.17\n if (crypto['randomUUID']) {\n return crypto['randomUUID']();\n }\n const rnds = rng();\n // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`\n rnds[6] = (rnds[6] & 0x0f) | 0x40;\n rnds[8] = (rnds[8] & 0x3f) | 0x80;\n\n return unsafeStringify(rnds);\n}\n"]}
|