@eggjs/tegg-schedule-decorator 4.0.0-beta.6 → 4.0.0-beta.8
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/dist/index.d.ts +39 -5
- package/dist/index.js +94 -8
- package/package.json +4 -4
- package/dist/builder/ScheduleMetaBuilder.d.ts +0 -11
- package/dist/builder/ScheduleMetaBuilder.js +0 -26
- package/dist/builder/index.js +0 -3
- package/dist/decorator/Schedule.d.ts +0 -6
- package/dist/decorator/Schedule.js +0 -22
- package/dist/decorator/index.js +0 -3
- package/dist/model/ScheduleMetadata.d.ts +0 -14
- package/dist/model/ScheduleMetadata.js +0 -22
- package/dist/util/ScheduleInfoUtil.d.ts +0 -13
- package/dist/util/ScheduleInfoUtil.js +0 -27
- package/dist/util/ScheduleMetadataUtil.d.ts +0 -10
- package/dist/util/ScheduleMetadataUtil.js +0 -15
- package/dist/util/index.js +0 -4
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,41 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { ScheduleMetaBuilder } from "./builder/ScheduleMetaBuilder.js";
|
|
3
|
-
import { Schedule } from "./decorator/Schedule.js";
|
|
4
|
-
import { ScheduleInfoUtil } from "./util/ScheduleInfoUtil.js";
|
|
5
|
-
import { ScheduleMetadataUtil } from "./util/ScheduleMetadataUtil.js";
|
|
1
|
+
import { EggProtoImplClass, ScheduleOptions, ScheduleParams, ScheduleSubscriber, ScheduleTypeLike } from "@eggjs/tegg-types";
|
|
6
2
|
export * from "@eggjs/tegg-types/schedule";
|
|
3
|
+
|
|
4
|
+
//#region src/model/ScheduleMetadata.d.ts
|
|
5
|
+
declare class ScheduleMetadata<T> {
|
|
6
|
+
type: ScheduleTypeLike;
|
|
7
|
+
scheduleData: T;
|
|
8
|
+
immediate: boolean;
|
|
9
|
+
disable: boolean;
|
|
10
|
+
env: undefined | Array<string>;
|
|
11
|
+
constructor(type: ScheduleTypeLike, data: T, immediate: boolean, disable: boolean, env: undefined | Array<string>);
|
|
12
|
+
shouldRegister(env: string): boolean;
|
|
13
|
+
}
|
|
14
|
+
//#endregion
|
|
15
|
+
//#region src/builder/ScheduleMetaBuilder.d.ts
|
|
16
|
+
declare class ScheduleMetaBuilder {
|
|
17
|
+
private readonly clazz;
|
|
18
|
+
constructor(clazz: EggProtoImplClass);
|
|
19
|
+
build(): ScheduleMetadata<object>;
|
|
20
|
+
}
|
|
21
|
+
//#endregion
|
|
22
|
+
//#region src/decorator/Schedule.d.ts
|
|
23
|
+
declare function Schedule<T>(param: ScheduleParams<T>, options?: ScheduleOptions): (clazz: EggProtoImplClass<ScheduleSubscriber>) => void;
|
|
24
|
+
//#endregion
|
|
25
|
+
//#region src/util/ScheduleInfoUtil.d.ts
|
|
26
|
+
declare class ScheduleInfoUtil {
|
|
27
|
+
static isSchedule(clazz: EggProtoImplClass): boolean;
|
|
28
|
+
static setIsSchedule(isSchedule: boolean, clazz: EggProtoImplClass): void;
|
|
29
|
+
static setScheduleParams<T>(scheduleParams: ScheduleParams<T>, clazz: EggProtoImplClass): void;
|
|
30
|
+
static setScheduleOptions(scheduleParams: ScheduleOptions, clazz: EggProtoImplClass): void;
|
|
31
|
+
static getScheduleOptions(clazz: EggProtoImplClass): ScheduleOptions | undefined;
|
|
32
|
+
static getScheduleParams(clazz: EggProtoImplClass): ScheduleParams<object> | undefined;
|
|
33
|
+
}
|
|
34
|
+
//#endregion
|
|
35
|
+
//#region src/util/ScheduleMetadataUtil.d.ts
|
|
36
|
+
declare class ScheduleMetadataUtil {
|
|
37
|
+
static setScheduleMetadata(clazz: EggProtoImplClass, metaData: ScheduleMetadata<object>): void;
|
|
38
|
+
static getScheduleMetadata(clazz: EggProtoImplClass): ScheduleMetadata<object> | undefined;
|
|
39
|
+
}
|
|
40
|
+
//#endregion
|
|
7
41
|
export { Schedule, ScheduleInfoUtil, ScheduleMetaBuilder, ScheduleMetadata, ScheduleMetadataUtil };
|
package/dist/index.js
CHANGED
|
@@ -1,12 +1,98 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import "./util/index.js";
|
|
5
|
-
import { ScheduleMetaBuilder } from "./builder/ScheduleMetaBuilder.js";
|
|
6
|
-
import "./builder/index.js";
|
|
7
|
-
import { Schedule } from "./decorator/Schedule.js";
|
|
8
|
-
import "./decorator/index.js";
|
|
1
|
+
import { MetadataUtil, PrototypeUtil, SingletonProto } from "@eggjs/core-decorator";
|
|
2
|
+
import { AccessLevel, IS_SCHEDULE, SCHEDULE_METADATA, SCHEDULE_OPTIONS, SCHEDULE_PARAMS } from "@eggjs/tegg-types";
|
|
3
|
+
import { StackUtil } from "@eggjs/tegg-common-util";
|
|
9
4
|
|
|
10
5
|
export * from "@eggjs/tegg-types/schedule"
|
|
11
6
|
|
|
7
|
+
//#region src/model/ScheduleMetadata.ts
|
|
8
|
+
var ScheduleMetadata = class {
|
|
9
|
+
type;
|
|
10
|
+
scheduleData;
|
|
11
|
+
immediate;
|
|
12
|
+
disable;
|
|
13
|
+
env;
|
|
14
|
+
constructor(type, data, immediate, disable, env) {
|
|
15
|
+
this.type = type;
|
|
16
|
+
this.scheduleData = data;
|
|
17
|
+
this.immediate = immediate;
|
|
18
|
+
this.disable = disable;
|
|
19
|
+
this.env = env;
|
|
20
|
+
}
|
|
21
|
+
shouldRegister(env) {
|
|
22
|
+
if (!this.env) return true;
|
|
23
|
+
return this.env.includes(env);
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
//#endregion
|
|
28
|
+
//#region src/util/ScheduleInfoUtil.ts
|
|
29
|
+
var ScheduleInfoUtil = class {
|
|
30
|
+
static isSchedule(clazz) {
|
|
31
|
+
return MetadataUtil.getBooleanMetaData(IS_SCHEDULE, clazz);
|
|
32
|
+
}
|
|
33
|
+
static setIsSchedule(isSchedule, clazz) {
|
|
34
|
+
MetadataUtil.defineMetaData(IS_SCHEDULE, isSchedule, clazz);
|
|
35
|
+
}
|
|
36
|
+
static setScheduleParams(scheduleParams, clazz) {
|
|
37
|
+
MetadataUtil.defineMetaData(SCHEDULE_PARAMS, scheduleParams, clazz);
|
|
38
|
+
}
|
|
39
|
+
static setScheduleOptions(scheduleParams, clazz) {
|
|
40
|
+
MetadataUtil.defineMetaData(SCHEDULE_OPTIONS, scheduleParams, clazz);
|
|
41
|
+
}
|
|
42
|
+
static getScheduleOptions(clazz) {
|
|
43
|
+
return MetadataUtil.getMetaData(SCHEDULE_OPTIONS, clazz);
|
|
44
|
+
}
|
|
45
|
+
static getScheduleParams(clazz) {
|
|
46
|
+
return MetadataUtil.getMetaData(SCHEDULE_PARAMS, clazz);
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
//#endregion
|
|
51
|
+
//#region src/util/ScheduleMetadataUtil.ts
|
|
52
|
+
var ScheduleMetadataUtil = class {
|
|
53
|
+
static setScheduleMetadata(clazz, metaData) {
|
|
54
|
+
MetadataUtil.defineMetaData(SCHEDULE_METADATA, metaData, clazz);
|
|
55
|
+
}
|
|
56
|
+
static getScheduleMetadata(clazz) {
|
|
57
|
+
return MetadataUtil.getMetaData(SCHEDULE_METADATA, clazz);
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
//#endregion
|
|
62
|
+
//#region src/builder/ScheduleMetaBuilder.ts
|
|
63
|
+
const DEFAULT_SCHEDULE_OPTIONS = {
|
|
64
|
+
immediate: false,
|
|
65
|
+
disable: false,
|
|
66
|
+
env: void 0
|
|
67
|
+
};
|
|
68
|
+
var ScheduleMetaBuilder = class {
|
|
69
|
+
clazz;
|
|
70
|
+
constructor(clazz) {
|
|
71
|
+
this.clazz = clazz;
|
|
72
|
+
}
|
|
73
|
+
build() {
|
|
74
|
+
const params = ScheduleInfoUtil.getScheduleParams(this.clazz);
|
|
75
|
+
if (!params) throw new Error(`class ${this.clazz.name} is not a schedule`);
|
|
76
|
+
const options = ScheduleInfoUtil.getScheduleOptions(this.clazz);
|
|
77
|
+
const scheduleOptions = Object.assign({}, DEFAULT_SCHEDULE_OPTIONS, options);
|
|
78
|
+
return new ScheduleMetadata(params.type, params.scheduleData, scheduleOptions.immediate, scheduleOptions.disable, scheduleOptions.env);
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
|
|
82
|
+
//#endregion
|
|
83
|
+
//#region src/decorator/Schedule.ts
|
|
84
|
+
function Schedule(param, options) {
|
|
85
|
+
return function(clazz) {
|
|
86
|
+
ScheduleInfoUtil.setIsSchedule(true, clazz);
|
|
87
|
+
ScheduleInfoUtil.setScheduleParams(param, clazz);
|
|
88
|
+
if (options) ScheduleInfoUtil.setScheduleOptions(options, clazz);
|
|
89
|
+
SingletonProto({
|
|
90
|
+
name: clazz.name,
|
|
91
|
+
accessLevel: AccessLevel.PUBLIC
|
|
92
|
+
})(clazz);
|
|
93
|
+
PrototypeUtil.setFilePath(clazz, StackUtil.getCalleeFromStack(false, 5));
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
//#endregion
|
|
12
98
|
export { Schedule, ScheduleInfoUtil, ScheduleMetaBuilder, ScheduleMetadata, ScheduleMetadataUtil };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eggjs/tegg-schedule-decorator",
|
|
3
|
-
"version": "4.0.0-beta.
|
|
3
|
+
"version": "4.0.0-beta.8",
|
|
4
4
|
"description": "tegg schedule decorator",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -31,9 +31,9 @@
|
|
|
31
31
|
"node": ">=22.18.0"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@eggjs/core-decorator": "4.0.0-beta.
|
|
35
|
-
"@eggjs/tegg-
|
|
36
|
-
"@eggjs/tegg-
|
|
34
|
+
"@eggjs/core-decorator": "4.0.0-beta.8",
|
|
35
|
+
"@eggjs/tegg-types": "4.0.0-beta.8",
|
|
36
|
+
"@eggjs/tegg-common-util": "4.0.0-beta.8"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
39
|
"@types/node": "^22.10.5",
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { ScheduleMetadata } from "../model/ScheduleMetadata.js";
|
|
2
|
-
import { EggProtoImplClass } from "@eggjs/tegg-types";
|
|
3
|
-
|
|
4
|
-
//#region src/builder/ScheduleMetaBuilder.d.ts
|
|
5
|
-
declare class ScheduleMetaBuilder {
|
|
6
|
-
private readonly clazz;
|
|
7
|
-
constructor(clazz: EggProtoImplClass);
|
|
8
|
-
build(): ScheduleMetadata<object>;
|
|
9
|
-
}
|
|
10
|
-
//#endregion
|
|
11
|
-
export { ScheduleMetaBuilder };
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { ScheduleMetadata } from "../model/ScheduleMetadata.js";
|
|
2
|
-
import { ScheduleInfoUtil } from "../util/ScheduleInfoUtil.js";
|
|
3
|
-
import "../util/index.js";
|
|
4
|
-
|
|
5
|
-
//#region src/builder/ScheduleMetaBuilder.ts
|
|
6
|
-
const DEFAULT_SCHEDULE_OPTIONS = {
|
|
7
|
-
immediate: false,
|
|
8
|
-
disable: false,
|
|
9
|
-
env: void 0
|
|
10
|
-
};
|
|
11
|
-
var ScheduleMetaBuilder = class {
|
|
12
|
-
clazz;
|
|
13
|
-
constructor(clazz) {
|
|
14
|
-
this.clazz = clazz;
|
|
15
|
-
}
|
|
16
|
-
build() {
|
|
17
|
-
const params = ScheduleInfoUtil.getScheduleParams(this.clazz);
|
|
18
|
-
if (!params) throw new Error(`class ${this.clazz.name} is not a schedule`);
|
|
19
|
-
const options = ScheduleInfoUtil.getScheduleOptions(this.clazz);
|
|
20
|
-
const scheduleOptions = Object.assign({}, DEFAULT_SCHEDULE_OPTIONS, options);
|
|
21
|
-
return new ScheduleMetadata(params.type, params.scheduleData, scheduleOptions.immediate, scheduleOptions.disable, scheduleOptions.env);
|
|
22
|
-
}
|
|
23
|
-
};
|
|
24
|
-
|
|
25
|
-
//#endregion
|
|
26
|
-
export { ScheduleMetaBuilder };
|
package/dist/builder/index.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { EggProtoImplClass, ScheduleOptions, ScheduleParams, ScheduleSubscriber } from "@eggjs/tegg-types";
|
|
2
|
-
|
|
3
|
-
//#region src/decorator/Schedule.d.ts
|
|
4
|
-
declare function Schedule<T>(param: ScheduleParams<T>, options?: ScheduleOptions): (clazz: EggProtoImplClass<ScheduleSubscriber>) => void;
|
|
5
|
-
//#endregion
|
|
6
|
-
export { Schedule };
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { ScheduleInfoUtil } from "../util/ScheduleInfoUtil.js";
|
|
2
|
-
import "../util/index.js";
|
|
3
|
-
import { PrototypeUtil, SingletonProto } from "@eggjs/core-decorator";
|
|
4
|
-
import { AccessLevel } from "@eggjs/tegg-types";
|
|
5
|
-
import { StackUtil } from "@eggjs/tegg-common-util";
|
|
6
|
-
|
|
7
|
-
//#region src/decorator/Schedule.ts
|
|
8
|
-
function Schedule(param, options) {
|
|
9
|
-
return function(clazz) {
|
|
10
|
-
ScheduleInfoUtil.setIsSchedule(true, clazz);
|
|
11
|
-
ScheduleInfoUtil.setScheduleParams(param, clazz);
|
|
12
|
-
if (options) ScheduleInfoUtil.setScheduleOptions(options, clazz);
|
|
13
|
-
SingletonProto({
|
|
14
|
-
name: clazz.name,
|
|
15
|
-
accessLevel: AccessLevel.PUBLIC
|
|
16
|
-
})(clazz);
|
|
17
|
-
PrototypeUtil.setFilePath(clazz, StackUtil.getCalleeFromStack(false, 5));
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
|
|
21
|
-
//#endregion
|
|
22
|
-
export { Schedule };
|
package/dist/decorator/index.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { ScheduleTypeLike } from "@eggjs/tegg-types";
|
|
2
|
-
|
|
3
|
-
//#region src/model/ScheduleMetadata.d.ts
|
|
4
|
-
declare class ScheduleMetadata<T> {
|
|
5
|
-
type: ScheduleTypeLike;
|
|
6
|
-
scheduleData: T;
|
|
7
|
-
immediate: boolean;
|
|
8
|
-
disable: boolean;
|
|
9
|
-
env: undefined | Array<string>;
|
|
10
|
-
constructor(type: ScheduleTypeLike, data: T, immediate: boolean, disable: boolean, env: undefined | Array<string>);
|
|
11
|
-
shouldRegister(env: string): boolean;
|
|
12
|
-
}
|
|
13
|
-
//#endregion
|
|
14
|
-
export { ScheduleMetadata };
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
//#region src/model/ScheduleMetadata.ts
|
|
2
|
-
var ScheduleMetadata = class {
|
|
3
|
-
type;
|
|
4
|
-
scheduleData;
|
|
5
|
-
immediate;
|
|
6
|
-
disable;
|
|
7
|
-
env;
|
|
8
|
-
constructor(type, data, immediate, disable, env) {
|
|
9
|
-
this.type = type;
|
|
10
|
-
this.scheduleData = data;
|
|
11
|
-
this.immediate = immediate;
|
|
12
|
-
this.disable = disable;
|
|
13
|
-
this.env = env;
|
|
14
|
-
}
|
|
15
|
-
shouldRegister(env) {
|
|
16
|
-
if (!this.env) return true;
|
|
17
|
-
return this.env.includes(env);
|
|
18
|
-
}
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
//#endregion
|
|
22
|
-
export { ScheduleMetadata };
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { EggProtoImplClass, ScheduleOptions, ScheduleParams } from "@eggjs/tegg-types";
|
|
2
|
-
|
|
3
|
-
//#region src/util/ScheduleInfoUtil.d.ts
|
|
4
|
-
declare class ScheduleInfoUtil {
|
|
5
|
-
static isSchedule(clazz: EggProtoImplClass): boolean;
|
|
6
|
-
static setIsSchedule(isSchedule: boolean, clazz: EggProtoImplClass): void;
|
|
7
|
-
static setScheduleParams<T>(scheduleParams: ScheduleParams<T>, clazz: EggProtoImplClass): void;
|
|
8
|
-
static setScheduleOptions(scheduleParams: ScheduleOptions, clazz: EggProtoImplClass): void;
|
|
9
|
-
static getScheduleOptions(clazz: EggProtoImplClass): ScheduleOptions | undefined;
|
|
10
|
-
static getScheduleParams(clazz: EggProtoImplClass): ScheduleParams<object> | undefined;
|
|
11
|
-
}
|
|
12
|
-
//#endregion
|
|
13
|
-
export { ScheduleInfoUtil };
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { MetadataUtil } from "@eggjs/core-decorator";
|
|
2
|
-
import { IS_SCHEDULE, SCHEDULE_OPTIONS, SCHEDULE_PARAMS } from "@eggjs/tegg-types";
|
|
3
|
-
|
|
4
|
-
//#region src/util/ScheduleInfoUtil.ts
|
|
5
|
-
var ScheduleInfoUtil = class {
|
|
6
|
-
static isSchedule(clazz) {
|
|
7
|
-
return MetadataUtil.getBooleanMetaData(IS_SCHEDULE, clazz);
|
|
8
|
-
}
|
|
9
|
-
static setIsSchedule(isSchedule, clazz) {
|
|
10
|
-
MetadataUtil.defineMetaData(IS_SCHEDULE, isSchedule, clazz);
|
|
11
|
-
}
|
|
12
|
-
static setScheduleParams(scheduleParams, clazz) {
|
|
13
|
-
MetadataUtil.defineMetaData(SCHEDULE_PARAMS, scheduleParams, clazz);
|
|
14
|
-
}
|
|
15
|
-
static setScheduleOptions(scheduleParams, clazz) {
|
|
16
|
-
MetadataUtil.defineMetaData(SCHEDULE_OPTIONS, scheduleParams, clazz);
|
|
17
|
-
}
|
|
18
|
-
static getScheduleOptions(clazz) {
|
|
19
|
-
return MetadataUtil.getMetaData(SCHEDULE_OPTIONS, clazz);
|
|
20
|
-
}
|
|
21
|
-
static getScheduleParams(clazz) {
|
|
22
|
-
return MetadataUtil.getMetaData(SCHEDULE_PARAMS, clazz);
|
|
23
|
-
}
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
//#endregion
|
|
27
|
-
export { ScheduleInfoUtil };
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { ScheduleMetadata } from "../model/ScheduleMetadata.js";
|
|
2
|
-
import { EggProtoImplClass } from "@eggjs/tegg-types";
|
|
3
|
-
|
|
4
|
-
//#region src/util/ScheduleMetadataUtil.d.ts
|
|
5
|
-
declare class ScheduleMetadataUtil {
|
|
6
|
-
static setScheduleMetadata(clazz: EggProtoImplClass, metaData: ScheduleMetadata<object>): void;
|
|
7
|
-
static getScheduleMetadata(clazz: EggProtoImplClass): ScheduleMetadata<object> | undefined;
|
|
8
|
-
}
|
|
9
|
-
//#endregion
|
|
10
|
-
export { ScheduleMetadataUtil };
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { MetadataUtil } from "@eggjs/core-decorator";
|
|
2
|
-
import { SCHEDULE_METADATA } from "@eggjs/tegg-types";
|
|
3
|
-
|
|
4
|
-
//#region src/util/ScheduleMetadataUtil.ts
|
|
5
|
-
var ScheduleMetadataUtil = class {
|
|
6
|
-
static setScheduleMetadata(clazz, metaData) {
|
|
7
|
-
MetadataUtil.defineMetaData(SCHEDULE_METADATA, metaData, clazz);
|
|
8
|
-
}
|
|
9
|
-
static getScheduleMetadata(clazz) {
|
|
10
|
-
return MetadataUtil.getMetaData(SCHEDULE_METADATA, clazz);
|
|
11
|
-
}
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
//#endregion
|
|
15
|
-
export { ScheduleMetadataUtil };
|
package/dist/util/index.js
DELETED