@certd/pipeline 1.22.8 → 1.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +21 -0
- package/build.md +1 -1
- package/dist/access/decorator.js +1 -1
- package/dist/bundle.js +25 -0
- package/dist/core/context.js +1 -1
- package/dist/core/executor.d.ts +2 -1
- package/dist/core/executor.js +22 -14
- package/dist/core/file-store.js +5 -2
- package/dist/core/license.d.ts +15 -1
- package/dist/core/license.js +63 -13
- package/dist/core/run-history.d.ts +2 -2
- package/dist/core/run-history.js +4 -4
- package/dist/core/storage.js +1 -1
- package/dist/d/access/api.d.ts +16 -0
- package/dist/d/access/decorator.d.ts +5 -0
- package/dist/d/access/index.d.ts +3 -0
- package/dist/d/access/registry.d.ts +2 -0
- package/dist/d/context/index.d.ts +5 -0
- package/dist/d/core/context.d.ts +32 -0
- package/dist/d/core/executor.d.ts +39 -0
- package/dist/d/core/file-store.d.ts +16 -0
- package/dist/d/core/index.d.ts +5 -0
- package/dist/d/core/run-history.d.ts +40 -0
- package/dist/d/core/storage.d.ts +30 -0
- package/dist/d/d.ts/fast-crud.d.ts +107 -0
- package/dist/d/d.ts/index.d.ts +2 -0
- package/dist/d/d.ts/pipeline.d.ts +122 -0
- package/dist/d/decorator/common.d.ts +6 -0
- package/dist/d/decorator/index.d.ts +2 -0
- package/dist/d/decorator/utils.d.ts +11 -0
- package/dist/d/index.d.ts +10 -0
- package/dist/d/midway/configuration.d.ts +6 -0
- package/dist/d/midway/index.d.ts +1 -0
- package/dist/d/plugin/api.d.ts +76 -0
- package/dist/d/plugin/decorator.d.ts +10 -0
- package/dist/d/plugin/index.d.ts +3 -0
- package/dist/d/plugin/registry.d.ts +3 -0
- package/dist/d/plugin/test/echo-plugin.d.ts +6 -0
- package/dist/d/registry/index.d.ts +1 -0
- package/dist/d/registry/registry.d.ts +28 -0
- package/dist/d/service/email.d.ts +9 -0
- package/dist/d/service/index.d.ts +1 -0
- package/dist/d/utils/index.d.ts +7 -0
- package/dist/d/utils/util.file.d.ts +5 -0
- package/dist/d/utils/util.log.d.ts +4 -0
- package/dist/d/utils/util.promise.d.ts +1 -0
- package/dist/d/utils/util.request.d.ts +8 -0
- package/dist/d/utils/util.sleep.d.ts +1 -0
- package/dist/decorator/utils.js +1 -1
- package/dist/plugin/api.d.ts +4 -0
- package/dist/plugin/api.js +5 -1
- package/dist/plugin/decorator.js +1 -1
- package/dist/plugin/registry.js +1 -1
- package/dist/plugin/test/echo-plugin.js +1 -1
- package/dist/registry/registry.js +1 -1
- package/dist/utils/util.file.js +1 -1
- package/dist/utils/util.log.js +1 -1
- package/dist/utils/util.promise.js +1 -1
- package/dist/utils/util.request.js +17 -2
- package/dist/utils/util.sp.js +2 -2
- package/package.json +2 -2
- package/stats.html +6177 -0
- package/test/pipeline/access-service-test.js +65 -65
- package/test/user.secret.ts +4 -0
- package/tsconfig.tsbuildinfo +1 -1
- package/dist/core/license.spec.d.ts +0 -1
- package/dist/core/license.spec.js +0 -16
- package/test/cert.fake.test.js +0 -4
- package/test/pipeline/init.test.js +0 -16
- package/test/pipeline/license.test.spec.js +0 -63
- package/test/pipeline/license.test.spec.ts +0 -16
- package/test/pipeline/pipeline.define.js +0 -68
- package/test/pipeline/pipeline.test.js +0 -70
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { Context, HistoryResult, Pipeline, Runnable, RunnableMap } from "../d.ts";
|
|
2
|
+
import { Logger } from "log4js";
|
|
3
|
+
export type HistoryStatus = {
|
|
4
|
+
result: HistoryResult;
|
|
5
|
+
logs: string[];
|
|
6
|
+
};
|
|
7
|
+
export type RunTrigger = {
|
|
8
|
+
type: string;
|
|
9
|
+
};
|
|
10
|
+
export declare function NewRunHistory(obj: any): RunHistory;
|
|
11
|
+
export declare class RunHistory {
|
|
12
|
+
id: string;
|
|
13
|
+
context: Context;
|
|
14
|
+
pipeline: Pipeline;
|
|
15
|
+
logs: {
|
|
16
|
+
[runnableId: string]: string[];
|
|
17
|
+
};
|
|
18
|
+
_loggers: {
|
|
19
|
+
[runnableId: string]: Logger;
|
|
20
|
+
};
|
|
21
|
+
trigger: RunTrigger;
|
|
22
|
+
constructor(runtimeId: any, trigger: RunTrigger, pipeline: Pipeline);
|
|
23
|
+
start(runnable: Runnable): HistoryResult;
|
|
24
|
+
success(runnable: Runnable): void;
|
|
25
|
+
skip(runnable: Runnable): void;
|
|
26
|
+
error(runnable: Runnable, e: Error): void;
|
|
27
|
+
cancel(runnable: Runnable): void;
|
|
28
|
+
log(runnable: Runnable, text: string): void;
|
|
29
|
+
logError(runnable: Runnable, e: Error): void;
|
|
30
|
+
finally(runnable: Runnable): void;
|
|
31
|
+
}
|
|
32
|
+
export declare class RunnableCollection {
|
|
33
|
+
private collection;
|
|
34
|
+
private pipeline;
|
|
35
|
+
constructor(pipeline?: Pipeline);
|
|
36
|
+
static each<T extends Runnable>(list: T[], exec: (item: Runnable) => void): void;
|
|
37
|
+
toMap(pipeline: Pipeline): RunnableMap;
|
|
38
|
+
get(id: string): Runnable | undefined;
|
|
39
|
+
clear(): void;
|
|
40
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export interface IStorage {
|
|
2
|
+
get(scope: string, namespace: string, version: string, key: string): Promise<string | null>;
|
|
3
|
+
set(scope: string, namespace: string, version: string, key: string, value: string): Promise<void>;
|
|
4
|
+
remove(scope: string, namespace: string, version: string, key: string): Promise<void>;
|
|
5
|
+
}
|
|
6
|
+
export declare class FileStorage implements IStorage {
|
|
7
|
+
root: string;
|
|
8
|
+
constructor(rootDir?: string);
|
|
9
|
+
remove(scope: string, namespace: string, version: string, key: string): Promise<void>;
|
|
10
|
+
writeFile(filePath: string, value: string): string;
|
|
11
|
+
readFile(filePath: string): string | null;
|
|
12
|
+
get(scope: string, namespace: string, version: string, key: string): Promise<string | null>;
|
|
13
|
+
set(scope: string, namespace: string, version: string, key: string, value: string): Promise<void>;
|
|
14
|
+
private buildPath;
|
|
15
|
+
}
|
|
16
|
+
export declare class MemoryStorage implements IStorage {
|
|
17
|
+
/**
|
|
18
|
+
* 范围: user / pipeline / runtime / task
|
|
19
|
+
*/
|
|
20
|
+
scope: any;
|
|
21
|
+
namespace: any;
|
|
22
|
+
context: {
|
|
23
|
+
[scope: string]: {
|
|
24
|
+
[key: string]: any;
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
get(scope: string, namespace: string, version: string, key: string): Promise<string | null>;
|
|
28
|
+
set(scope: string, namespace: string, version: string, key: string, value: string): Promise<void>;
|
|
29
|
+
remove(scope: string, namespace?: string, version?: string, key?: string): Promise<void>;
|
|
30
|
+
}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* [x]-col的配置
|
|
3
|
+
*/
|
|
4
|
+
export type ColProps = {
|
|
5
|
+
span?: number;
|
|
6
|
+
[props: string]: any;
|
|
7
|
+
};
|
|
8
|
+
export type FormItemProps = {
|
|
9
|
+
/**
|
|
10
|
+
* 字段label
|
|
11
|
+
*/
|
|
12
|
+
title?: string;
|
|
13
|
+
/**
|
|
14
|
+
* 表单字段组件配置
|
|
15
|
+
*/
|
|
16
|
+
component?: ComponentProps;
|
|
17
|
+
/**
|
|
18
|
+
* 表单字段 [a|el|n]-col的配置
|
|
19
|
+
* 一般用来配置跨列:{span:24} 占满一行
|
|
20
|
+
*/
|
|
21
|
+
col?: ColProps;
|
|
22
|
+
/**
|
|
23
|
+
* 默认值
|
|
24
|
+
*/
|
|
25
|
+
value?: any;
|
|
26
|
+
/**
|
|
27
|
+
* 帮助提示配置
|
|
28
|
+
*/
|
|
29
|
+
helper?: string | FormItemHelperProps;
|
|
30
|
+
/**
|
|
31
|
+
* 排序号
|
|
32
|
+
*/
|
|
33
|
+
order?: number;
|
|
34
|
+
/**
|
|
35
|
+
* 是否显示此字段
|
|
36
|
+
*/
|
|
37
|
+
show?: boolean;
|
|
38
|
+
/**
|
|
39
|
+
* 是否是空白占位栏
|
|
40
|
+
*/
|
|
41
|
+
blank?: boolean;
|
|
42
|
+
[key: string]: any;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* 表单字段帮助说明配置
|
|
46
|
+
*/
|
|
47
|
+
export type FormItemHelperProps = {
|
|
48
|
+
/**
|
|
49
|
+
* 自定义渲染帮助说明
|
|
50
|
+
* @param scope
|
|
51
|
+
*/
|
|
52
|
+
render?: (scope: any) => any;
|
|
53
|
+
/**
|
|
54
|
+
* 帮助文本
|
|
55
|
+
*/
|
|
56
|
+
text?: string;
|
|
57
|
+
/**
|
|
58
|
+
* 帮助说明所在的位置,[ undefined | label]
|
|
59
|
+
*/
|
|
60
|
+
position?: string;
|
|
61
|
+
/**
|
|
62
|
+
* [a|el|n]-tooltip配置
|
|
63
|
+
*/
|
|
64
|
+
tooltip?: object;
|
|
65
|
+
[key: string]: any;
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* 组件配置
|
|
69
|
+
*/
|
|
70
|
+
export type ComponentProps = {
|
|
71
|
+
/**
|
|
72
|
+
* 组件的名称
|
|
73
|
+
*/
|
|
74
|
+
name?: string | object;
|
|
75
|
+
/**
|
|
76
|
+
* vmodel绑定的目标属性名
|
|
77
|
+
*/
|
|
78
|
+
vModel?: string;
|
|
79
|
+
/**
|
|
80
|
+
* 当原始组件名的参数被以上属性名占用时,可以配置在这里
|
|
81
|
+
* 例如:原始组件有一个叫name的属性,你想要配置它,则可以按如下配置
|
|
82
|
+
* ```
|
|
83
|
+
* component:{
|
|
84
|
+
* name:"组件的名称"
|
|
85
|
+
* props:{
|
|
86
|
+
* name:"组件的name属性" <-----------
|
|
87
|
+
* }
|
|
88
|
+
* }
|
|
89
|
+
* ```
|
|
90
|
+
*/
|
|
91
|
+
props?: {
|
|
92
|
+
[key: string]: any;
|
|
93
|
+
};
|
|
94
|
+
/**
|
|
95
|
+
* 组件事件监听
|
|
96
|
+
*/
|
|
97
|
+
on?: {
|
|
98
|
+
[key: string]: (context?: any) => void;
|
|
99
|
+
};
|
|
100
|
+
/**
|
|
101
|
+
* 组件其他参数
|
|
102
|
+
* 事件:onXxx:(event)=>void 组件原始事件监听
|
|
103
|
+
* on.onXxx:(context)=>void 组件事件监听(对原始事件包装)
|
|
104
|
+
* 样式:style、class等
|
|
105
|
+
*/
|
|
106
|
+
[key: string]: any;
|
|
107
|
+
};
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
export declare enum RunStrategy {
|
|
2
|
+
AlwaysRun = 0,
|
|
3
|
+
SkipWhenSucceed = 1
|
|
4
|
+
}
|
|
5
|
+
export declare enum ConcurrencyStrategy {
|
|
6
|
+
Serial = 0,
|
|
7
|
+
Parallel = 1
|
|
8
|
+
}
|
|
9
|
+
export declare enum NextStrategy {
|
|
10
|
+
AllSuccess = 0,
|
|
11
|
+
OneSuccess = 1
|
|
12
|
+
}
|
|
13
|
+
export declare enum HandlerType {
|
|
14
|
+
ClearFollowStatus = 0,
|
|
15
|
+
SendEmail = 1
|
|
16
|
+
}
|
|
17
|
+
export type EventHandler = {
|
|
18
|
+
type: HandlerType;
|
|
19
|
+
params: {
|
|
20
|
+
[key: string]: any;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
export type RunnableStrategy = {
|
|
24
|
+
runStrategy?: RunStrategy;
|
|
25
|
+
onSuccess?: EventHandler[];
|
|
26
|
+
onError?: EventHandler[];
|
|
27
|
+
};
|
|
28
|
+
export type Step = Runnable & {
|
|
29
|
+
type: string;
|
|
30
|
+
input: {
|
|
31
|
+
[key: string]: any;
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
export type Task = Runnable & {
|
|
35
|
+
steps: Step[];
|
|
36
|
+
};
|
|
37
|
+
export type Stage = Runnable & {
|
|
38
|
+
tasks: Task[];
|
|
39
|
+
concurrency: ConcurrencyStrategy;
|
|
40
|
+
next: NextStrategy;
|
|
41
|
+
};
|
|
42
|
+
export type Trigger = {
|
|
43
|
+
id: string;
|
|
44
|
+
title: string;
|
|
45
|
+
cron: string;
|
|
46
|
+
type: string;
|
|
47
|
+
};
|
|
48
|
+
export type FileItem = {
|
|
49
|
+
id: string;
|
|
50
|
+
filename: string;
|
|
51
|
+
path: string;
|
|
52
|
+
};
|
|
53
|
+
export type Runnable = {
|
|
54
|
+
id: string;
|
|
55
|
+
title: string;
|
|
56
|
+
strategy?: RunnableStrategy;
|
|
57
|
+
runnableType?: string;
|
|
58
|
+
status?: HistoryResult;
|
|
59
|
+
timeout?: number;
|
|
60
|
+
default?: {
|
|
61
|
+
[key: string]: any;
|
|
62
|
+
};
|
|
63
|
+
};
|
|
64
|
+
export type EmailOptions = {
|
|
65
|
+
receivers: string[];
|
|
66
|
+
};
|
|
67
|
+
export type NotificationWhen = "error" | "success" | "turnToSuccess" | "start";
|
|
68
|
+
export type NotificationType = "email" | "url";
|
|
69
|
+
export type Notification = {
|
|
70
|
+
type: NotificationType;
|
|
71
|
+
when: NotificationWhen[];
|
|
72
|
+
options: EmailOptions;
|
|
73
|
+
};
|
|
74
|
+
export type Pipeline = Runnable & {
|
|
75
|
+
version?: number;
|
|
76
|
+
userId: any;
|
|
77
|
+
stages: Stage[];
|
|
78
|
+
triggers: Trigger[];
|
|
79
|
+
notifications?: Notification[];
|
|
80
|
+
};
|
|
81
|
+
export type Context = {
|
|
82
|
+
[key: string]: any;
|
|
83
|
+
};
|
|
84
|
+
export type Log = {
|
|
85
|
+
title: string;
|
|
86
|
+
time: number;
|
|
87
|
+
level: string;
|
|
88
|
+
text: string;
|
|
89
|
+
};
|
|
90
|
+
export declare enum ResultType {
|
|
91
|
+
start = "start",
|
|
92
|
+
success = "success",
|
|
93
|
+
error = "error",
|
|
94
|
+
canceled = "canceled",
|
|
95
|
+
skip = "skip",
|
|
96
|
+
none = "none"
|
|
97
|
+
}
|
|
98
|
+
export type HistoryResultGroup = {
|
|
99
|
+
[key: string]: {
|
|
100
|
+
runnable: Runnable;
|
|
101
|
+
res: HistoryResult;
|
|
102
|
+
};
|
|
103
|
+
};
|
|
104
|
+
export type HistoryResult = {
|
|
105
|
+
input: any;
|
|
106
|
+
output: any;
|
|
107
|
+
files?: FileItem[];
|
|
108
|
+
/**
|
|
109
|
+
* 任务状态
|
|
110
|
+
*/
|
|
111
|
+
status: ResultType;
|
|
112
|
+
startTime: number;
|
|
113
|
+
endTime?: number;
|
|
114
|
+
/**
|
|
115
|
+
* 处理结果
|
|
116
|
+
*/
|
|
117
|
+
result?: ResultType;
|
|
118
|
+
message?: string;
|
|
119
|
+
};
|
|
120
|
+
export type RunnableMap = {
|
|
121
|
+
[id: string]: Runnable;
|
|
122
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
declare function attachProperty(target: any, propertyKey: string | symbol): void;
|
|
2
|
+
declare function getClassProperties(target: any): any;
|
|
3
|
+
declare function target(target: any, propertyKey?: string | symbol): any;
|
|
4
|
+
declare function inject(define: any, instance: any, context: any, preHandler?: (item: any, key: string, instance: any, context: any) => void): void;
|
|
5
|
+
export declare const Decorator: {
|
|
6
|
+
target: typeof target;
|
|
7
|
+
attachProperty: typeof attachProperty;
|
|
8
|
+
getClassProperties: typeof getClassProperties;
|
|
9
|
+
inject: typeof inject;
|
|
10
|
+
};
|
|
11
|
+
export {};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import "util";
|
|
2
|
+
export * from "./core";
|
|
3
|
+
export * from "./d.ts";
|
|
4
|
+
export * from "./access";
|
|
5
|
+
export * from "./registry";
|
|
6
|
+
export * from "./plugin";
|
|
7
|
+
export * from "./utils";
|
|
8
|
+
export * from "./context";
|
|
9
|
+
export * from "./decorator";
|
|
10
|
+
export * from "./service";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { PipelineConfiguration } from "./configuration";
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/// <reference types="node" />
|
|
2
|
+
import { Registrable } from "../registry";
|
|
3
|
+
import { FileItem, FormItemProps, Pipeline, Runnable, Step } from "../d.ts";
|
|
4
|
+
import { FileStore } from "../core/file-store";
|
|
5
|
+
import { Logger } from "log4js";
|
|
6
|
+
import { IAccessService } from "../access";
|
|
7
|
+
import { IEmailService } from "../service";
|
|
8
|
+
import { IContext } from "../core";
|
|
9
|
+
import { AxiosInstance } from "axios";
|
|
10
|
+
export declare enum ContextScope {
|
|
11
|
+
global = 0,
|
|
12
|
+
pipeline = 1,
|
|
13
|
+
runtime = 2
|
|
14
|
+
}
|
|
15
|
+
export type TaskOutputDefine = {
|
|
16
|
+
title: string;
|
|
17
|
+
value?: any;
|
|
18
|
+
};
|
|
19
|
+
export type TaskInputDefine = FormItemProps;
|
|
20
|
+
export type PluginDefine = Registrable & {
|
|
21
|
+
default?: any;
|
|
22
|
+
input?: {
|
|
23
|
+
[key: string]: TaskInputDefine;
|
|
24
|
+
};
|
|
25
|
+
output?: {
|
|
26
|
+
[key: string]: TaskOutputDefine;
|
|
27
|
+
};
|
|
28
|
+
autowire?: {
|
|
29
|
+
[key: string]: any;
|
|
30
|
+
};
|
|
31
|
+
reference?: {
|
|
32
|
+
src: string;
|
|
33
|
+
dest: string;
|
|
34
|
+
type: "computed";
|
|
35
|
+
}[];
|
|
36
|
+
};
|
|
37
|
+
export type ITaskPlugin = {
|
|
38
|
+
onInstance(): Promise<void>;
|
|
39
|
+
execute(): Promise<void>;
|
|
40
|
+
[key: string]: any;
|
|
41
|
+
};
|
|
42
|
+
export type TaskResult = {
|
|
43
|
+
clearLastStatus?: boolean;
|
|
44
|
+
files?: FileItem[];
|
|
45
|
+
};
|
|
46
|
+
export type TaskInstanceContext = {
|
|
47
|
+
pipeline: Pipeline;
|
|
48
|
+
step: Step;
|
|
49
|
+
logger: Logger;
|
|
50
|
+
accessService: IAccessService;
|
|
51
|
+
emailService: IEmailService;
|
|
52
|
+
pipelineContext: IContext;
|
|
53
|
+
userContext: IContext;
|
|
54
|
+
http: AxiosInstance;
|
|
55
|
+
fileStore: FileStore;
|
|
56
|
+
lastStatus?: Runnable;
|
|
57
|
+
};
|
|
58
|
+
export declare abstract class AbstractTaskPlugin implements ITaskPlugin {
|
|
59
|
+
_result: TaskResult;
|
|
60
|
+
ctx: TaskInstanceContext;
|
|
61
|
+
clearLastStatus(): void;
|
|
62
|
+
getFiles(): FileItem[] | undefined;
|
|
63
|
+
setCtx(ctx: TaskInstanceContext): void;
|
|
64
|
+
randomFileId(): string;
|
|
65
|
+
linkFile(file: FileItem): void;
|
|
66
|
+
saveFile(filename: string, file: Buffer): void;
|
|
67
|
+
get pipeline(): Pipeline;
|
|
68
|
+
get step(): Step;
|
|
69
|
+
onInstance(): Promise<void>;
|
|
70
|
+
abstract execute(): Promise<void>;
|
|
71
|
+
}
|
|
72
|
+
export type OutputVO = {
|
|
73
|
+
key: string;
|
|
74
|
+
title: string;
|
|
75
|
+
value: any;
|
|
76
|
+
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { PluginDefine, TaskInputDefine, TaskOutputDefine } from "./api";
|
|
2
|
+
import "reflect-metadata";
|
|
3
|
+
export declare const PLUGIN_CLASS_KEY = "pipeline:plugin";
|
|
4
|
+
export declare function IsTaskPlugin(define: PluginDefine): ClassDecorator;
|
|
5
|
+
export declare const PLUGIN_INPUT_KEY = "pipeline:plugin:input";
|
|
6
|
+
export declare function TaskInput(input?: TaskInputDefine): PropertyDecorator;
|
|
7
|
+
export declare const PLUGIN_OUTPUT_KEY = "pipeline:plugin:output";
|
|
8
|
+
export declare function TaskOutput(output?: TaskOutputDefine): PropertyDecorator;
|
|
9
|
+
export declare const PLUGIN_DOWNLOAD_KEY = "pipeline:plugin:download";
|
|
10
|
+
export declare function TaskDownload(output?: TaskOutputDefine): PropertyDecorator;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./registry";
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export type Registrable = {
|
|
2
|
+
name: string;
|
|
3
|
+
title: string;
|
|
4
|
+
desc?: string;
|
|
5
|
+
};
|
|
6
|
+
export type RegistryItem<T> = {
|
|
7
|
+
define: Registrable;
|
|
8
|
+
target: T;
|
|
9
|
+
};
|
|
10
|
+
export declare class Registry<T> {
|
|
11
|
+
type: string;
|
|
12
|
+
storage: {
|
|
13
|
+
[key: string]: RegistryItem<T>;
|
|
14
|
+
};
|
|
15
|
+
constructor(type: string);
|
|
16
|
+
register(key: string, value: RegistryItem<T>): void;
|
|
17
|
+
get(name: string): RegistryItem<T>;
|
|
18
|
+
getStorage(): {
|
|
19
|
+
[key: string]: RegistryItem<T>;
|
|
20
|
+
};
|
|
21
|
+
getDefineList(): {
|
|
22
|
+
key: string;
|
|
23
|
+
name: string;
|
|
24
|
+
title: string;
|
|
25
|
+
desc?: string | undefined;
|
|
26
|
+
}[];
|
|
27
|
+
getDefine(key: string): Registrable | undefined;
|
|
28
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./email";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function TimeoutPromise(callback: () => Promise<void>, ms?: number): Promise<unknown>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export default function (timeout: number): Promise<unknown>;
|
package/dist/decorator/utils.js
CHANGED
|
@@ -40,4 +40,4 @@ export const Decorator = {
|
|
|
40
40
|
getClassProperties,
|
|
41
41
|
inject,
|
|
42
42
|
};
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGVjb3JhdG9yL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sQ0FBQyxNQUFNLFdBQVcsQ0FBQztBQUUxQixNQUFNLFdBQVcsR0FBUSxFQUFFLENBQUM7QUFDNUIsU0FBUyxjQUFjLENBQUMsTUFBVyxFQUFFLFdBQTRCO0lBQy9ELElBQUksS0FBSyxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNoQyxJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUU7UUFDakIsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUNYLFdBQVcsQ0FBQyxNQUFNLENBQUMsR0FBRyxLQUFLLENBQUM7S0FDN0I7SUFDRCxLQUFLLENBQUMsV0FBVyxDQUFDLEdBQUcsSUFBSSxDQUFDO0FBQzVCLENBQUM7QUFFRCxTQUFTLGtCQUFrQixDQUFDLE1BQVc7SUFDckMsTUFBTTtJQUNOLE1BQU0sTUFBTSxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDN0MsTUFBTSxTQUFTLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUM1QyxNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzFDLE9BQU8sQ0FBQyxDQUFDLEtBQUssQ0FBQyxFQUFFLEVBQUUsU0FBUyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3pDLENBQUM7QUFFRCxTQUFTLE1BQU0sQ0FBQyxNQUFXLEVBQUUsV0FBNkI7SUFDeEQsSUFBSSxPQUFPLE1BQU0sS0FBSyxRQUFRLElBQUksTUFBTSxDQUFDLFdBQVcsRUFBRTtRQUNwRCxNQUFNLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQztLQUM3QjtJQUNELElBQUksV0FBVyxJQUFJLElBQUksRUFBRTtRQUN2QixjQUFjLENBQUMsTUFBTSxFQUFFLFdBQVcsQ0FBQyxDQUFDO0tBQ3JDO0lBQ0QsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQztBQUVELFNBQVMsTUFBTSxDQUFDLE1BQVcsRUFBRSxRQUFhLEVBQUUsT0FBWSxFQUFFLFVBQTBFO0lBQ2xJLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsSUFBUyxFQUFFLEdBQVEsRUFBRSxFQUFFO1FBQ3hDLElBQUksVUFBVSxFQUFFO1lBQ2QsVUFBVSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1NBQzFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksU0FBUyxFQUFFO1lBQzdCLFFBQVEsQ0FBQyxHQUFHLENBQUMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDOUI7SUFDSCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFDRCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUc7SUFDdkIsTUFBTTtJQUNOLGNBQWM7SUFDZCxrQkFBa0I7SUFDbEIsTUFBTTtDQUNQLENBQUMifQ==
|
package/dist/plugin/api.d.ts
CHANGED
|
@@ -7,6 +7,7 @@ import { IAccessService } from "../access/index.js";
|
|
|
7
7
|
import { IEmailService } from "../service/index.js";
|
|
8
8
|
import { IContext } from "../core/index.js";
|
|
9
9
|
import { AxiosInstance } from "axios";
|
|
10
|
+
import { ILogger } from "../utils/index.js";
|
|
10
11
|
export declare enum ContextScope {
|
|
11
12
|
global = 0,
|
|
12
13
|
pipeline = 1,
|
|
@@ -56,10 +57,13 @@ export type TaskInstanceContext = {
|
|
|
56
57
|
http: AxiosInstance;
|
|
57
58
|
fileStore: FileStore;
|
|
58
59
|
lastStatus?: Runnable;
|
|
60
|
+
signal: AbortSignal;
|
|
59
61
|
};
|
|
60
62
|
export declare abstract class AbstractTaskPlugin implements ITaskPlugin {
|
|
61
63
|
_result: TaskResult;
|
|
62
64
|
ctx: TaskInstanceContext;
|
|
65
|
+
logger: ILogger;
|
|
66
|
+
accessService: IAccessService;
|
|
63
67
|
clearLastStatus(): void;
|
|
64
68
|
getFiles(): FileItem[] | undefined;
|
|
65
69
|
setCtx(ctx: TaskInstanceContext): void;
|
package/dist/plugin/api.js
CHANGED
|
@@ -8,6 +8,8 @@ export var ContextScope;
|
|
|
8
8
|
export class AbstractTaskPlugin {
|
|
9
9
|
_result = { clearLastStatus: false, files: [], pipelineVars: {} };
|
|
10
10
|
ctx;
|
|
11
|
+
logger;
|
|
12
|
+
accessService;
|
|
11
13
|
clearLastStatus() {
|
|
12
14
|
this._result.clearLastStatus = true;
|
|
13
15
|
}
|
|
@@ -16,6 +18,8 @@ export class AbstractTaskPlugin {
|
|
|
16
18
|
}
|
|
17
19
|
setCtx(ctx) {
|
|
18
20
|
this.ctx = ctx;
|
|
21
|
+
this.logger = ctx.logger;
|
|
22
|
+
this.accessService = ctx.accessService;
|
|
19
23
|
}
|
|
20
24
|
randomFileId() {
|
|
21
25
|
return Math.random().toString(36).substring(2, 9);
|
|
@@ -45,4 +49,4 @@ export class AbstractTaskPlugin {
|
|
|
45
49
|
return;
|
|
46
50
|
}
|
|
47
51
|
}
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
52
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3BsdWdpbi9hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUUEsT0FBTyxFQUFXLE1BQU0sRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXBELE1BQU0sQ0FBTixJQUFZLFlBSVg7QUFKRCxXQUFZLFlBQVk7SUFDdEIsbURBQU0sQ0FBQTtJQUNOLHVEQUFRLENBQUE7SUFDUixxREFBTyxDQUFBO0FBQ1QsQ0FBQyxFQUpXLFlBQVksS0FBWixZQUFZLFFBSXZCO0FBdURELE1BQU0sT0FBZ0Isa0JBQWtCO0lBQ3RDLE9BQU8sR0FBZSxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxZQUFZLEVBQUUsRUFBRSxFQUFFLENBQUM7SUFDOUUsR0FBRyxDQUF1QjtJQUMxQixNQUFNLENBQVc7SUFDakIsYUFBYSxDQUFrQjtJQUUvQixlQUFlO1FBQ2IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztJQUM1QixDQUFDO0lBRUQsTUFBTSxDQUFDLEdBQXdCO1FBQzdCLElBQUksQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDO1FBQ2YsSUFBSSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxhQUFhLEdBQUcsR0FBRyxDQUFDLGFBQWEsQ0FBQztJQUN6QyxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFDRCxRQUFRLENBQUMsUUFBZ0IsRUFBRSxJQUFZO1FBQ3JDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDOUQsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDO1lBQ3ZCLEVBQUUsRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3ZCLFFBQVE7WUFDUixJQUFJLEVBQUUsUUFBUTtTQUNmLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssSUFBSSxJQUFJLEVBQUU7WUFDOUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1NBQ3pCO1FBQ0QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDekUsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUM7SUFDM0IsQ0FBQztJQUVELElBQUksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUM7SUFDdkIsQ0FBQztJQUVELEtBQUssQ0FBQyxVQUFVO1FBQ2QsT0FBTztJQUNULENBQUM7Q0FHRiJ9
|
package/dist/plugin/decorator.js
CHANGED
|
@@ -71,4 +71,4 @@ export function TaskDownload(output) {
|
|
|
71
71
|
Reflect.defineMetadata(PLUGIN_DOWNLOAD_KEY, output, target, propertyKey);
|
|
72
72
|
};
|
|
73
73
|
}
|
|
74
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb3JhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3BsdWdpbi9kZWNvcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxDQUFDLE1BQU0sV0FBVyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNyRCxPQUFPLGtCQUFrQixDQUFDO0FBQzFCLGFBQWE7QUFDYixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxpQkFBaUIsQ0FBQztBQUVsRCxNQUFNLFVBQVUsWUFBWSxDQUFDLE1BQW9CO0lBQy9DLE9BQU8sQ0FBQyxNQUFXLEVBQUUsRUFBRTtRQUNyQixNQUFNLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUVsQyxNQUFNLE1BQU0sR0FBUSxFQUFFLENBQUM7UUFDdkIsTUFBTSxTQUFTLEdBQVEsRUFBRSxDQUFDO1FBQzFCLE1BQU0sT0FBTyxHQUFRLEVBQUUsQ0FBQztRQUN4QixNQUFNLFVBQVUsR0FBRyxTQUFTLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDeEQsS0FBSyxNQUFNLFFBQVEsSUFBSSxVQUFVLEVBQUU7WUFDakMsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxnQkFBZ0IsRUFBRSxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDdEUsSUFBSSxLQUFLLEVBQUU7Z0JBQ1QsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEtBQUssQ0FBQzthQUMxQjtZQUVELE1BQU0sUUFBUSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQztZQUNyRSxJQUFJLFFBQVEsRUFBRTtnQkFD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
|
package/dist/plugin/registry.js
CHANGED
|
@@ -13,4 +13,4 @@ const onRegister = ({ key, value }) => {
|
|
|
13
13
|
}
|
|
14
14
|
};
|
|
15
15
|
export const pluginRegistry = new Registry("plugin", onRegister);
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0cnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGx1Z2luL3JlZ2lzdHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFlBQVksQ0FBQztBQUUxQyxNQUFNLFVBQVUsR0FBRyxDQUFDLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBeUMsRUFBRSxFQUFFO0lBQzNFLE1BQU0sS0FBSyxHQUFHLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBZSxDQUFDO0lBQzdDLElBQUksS0FBSyxFQUFFO1FBQ1QsSUFBSSxZQUFZLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ3RDLGFBQWE7WUFDYixZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDaEQ7YUFBTTtZQUNMLFlBQVksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDL0M7S0FDRjtBQUNILENBQUMsQ0FBQztBQUNGLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxJQUFJLFFBQVEsQ0FBcUIsUUFBUSxFQUFFLFVBQVUsQ0FBQyxDQUFDIn0=
|
|
@@ -34,4 +34,4 @@ EchoPlugin = __decorate([
|
|
|
34
34
|
})
|
|
35
35
|
], EchoPlugin);
|
|
36
36
|
export { EchoPlugin };
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNoby1wbHVnaW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcGx1Z2luL3Rlc3QvZWNoby1wbHVnaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQ0EsT0FBTyxFQUFFLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQU8xRCxJQUFhLFVBQVUsR0FBdkIsTUFBYSxVQUFVO0lBT3JCLElBQUksQ0FBVTtJQUVkLFVBQVU7UUFDUixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELEtBQUssQ0FBQyxPQUFPO1FBQ1gsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7Q0FDRixDQUFBO0FBVEM7SUFOQyxTQUFTLENBQUM7UUFDVCxLQUFLLEVBQUUsTUFBTTtRQUNiLFNBQVMsRUFBRTtZQUNULElBQUksRUFBRSxNQUFNO1NBQ2I7S0FDRixDQUFDOzt3Q0FDWTtBQVBILFVBQVU7SUFMdEIsWUFBWSxDQUFDO1FBQ1osSUFBSSxFQUFFLFlBQVk7UUFDbEIsS0FBSyxFQUFFLE1BQU07UUFDYixJQUFJLEVBQUUsTUFBTTtLQUNiLENBQUM7R0FDVyxVQUFVLENBZ0J0QjtTQWhCWSxVQUFVIn0=
|