@decaf-ts/core 0.8.7 → 0.8.9
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/README.md +1 -1
- package/dist/core.cjs +1 -1
- package/dist/core.cjs.map +1 -1
- package/dist/core.js +1 -1
- package/dist/core.js.map +1 -1
- package/lib/esm/identity/decorators.js +1 -1
- package/lib/esm/identity/decorators.js.map +1 -1
- package/lib/esm/index.d.ts +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/esm/tasks/CleanUpTask.d.ts +15 -0
- package/lib/esm/tasks/CleanUpTask.js +71 -0
- package/lib/esm/tasks/CleanUpTask.js.map +1 -0
- package/lib/esm/tasks/index.d.ts +1 -0
- package/lib/esm/tasks/index.js +1 -0
- package/lib/esm/tasks/index.js.map +1 -1
- package/lib/esm/tasks/models/TaskIOSerializer.d.ts +27 -0
- package/lib/esm/tasks/models/TaskIOSerializer.js +67 -0
- package/lib/esm/tasks/models/TaskIOSerializer.js.map +1 -0
- package/lib/esm/tasks/models/TaskModel.js +3 -2
- package/lib/esm/tasks/models/TaskModel.js.map +1 -1
- package/lib/esm/tasks/models/index.d.ts +2 -1
- package/lib/esm/tasks/models/index.js +2 -1
- package/lib/esm/tasks/models/index.js.map +1 -1
- package/lib/identity/decorators.cjs +1 -1
- package/lib/identity/decorators.js.map +1 -1
- package/lib/index.cjs +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/tasks/CleanUpTask.cjs +74 -0
- package/lib/tasks/CleanUpTask.d.ts +15 -0
- package/lib/tasks/CleanUpTask.js.map +1 -0
- package/lib/tasks/index.cjs +1 -0
- package/lib/tasks/index.d.ts +1 -0
- package/lib/tasks/index.js.map +1 -1
- package/lib/tasks/models/TaskIOSerializer.cjs +71 -0
- package/lib/tasks/models/TaskIOSerializer.d.ts +27 -0
- package/lib/tasks/models/TaskIOSerializer.js.map +1 -0
- package/lib/tasks/models/TaskModel.cjs +3 -2
- package/lib/tasks/models/TaskModel.js.map +1 -1
- package/lib/tasks/models/index.cjs +2 -1
- package/lib/tasks/models/index.d.ts +2 -1
- package/lib/tasks/models/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -105,8 +105,8 @@ export function pkDec(options, groupsort) {
|
|
|
105
105
|
options.generated = true;
|
|
106
106
|
}
|
|
107
107
|
const decs = [
|
|
108
|
-
index([OrderDirection.ASC, OrderDirection.DSC]),
|
|
109
108
|
prop(),
|
|
109
|
+
index([OrderDirection.ASC, OrderDirection.DSC]),
|
|
110
110
|
required(),
|
|
111
111
|
readonly(),
|
|
112
112
|
propMetadata(Metadata.key(DBKeys.ID, attr), options),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../src/identity/decorators.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../../src/identity/decorators.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/index.d.ts
CHANGED
|
@@ -21,7 +21,7 @@ export * from "./persistence";
|
|
|
21
21
|
* @const VERSION
|
|
22
22
|
* @memberOf module:core
|
|
23
23
|
*/
|
|
24
|
-
export declare const VERSION = "0.8.
|
|
24
|
+
export declare const VERSION = "0.8.8";
|
|
25
25
|
/**
|
|
26
26
|
* @description Stores the current package version
|
|
27
27
|
* @summary A constant representing the version of the core package
|
package/lib/esm/index.js
CHANGED
|
@@ -31,7 +31,7 @@ export * from "./persistence/index.js";
|
|
|
31
31
|
* @const VERSION
|
|
32
32
|
* @memberOf module:core
|
|
33
33
|
*/
|
|
34
|
-
export const VERSION = "0.8.
|
|
34
|
+
export const VERSION = "0.8.8";
|
|
35
35
|
/**
|
|
36
36
|
* @description Stores the current package version
|
|
37
37
|
* @summary A constant representing the version of the core package
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { TaskHandler } from "./TaskHandler";
|
|
2
|
+
import { TaskContext } from "./TaskContext";
|
|
3
|
+
import { type Repo } from "../repository/Repository";
|
|
4
|
+
import { TaskModel } from "./models/TaskModel";
|
|
5
|
+
import { Condition } from "../query/Condition";
|
|
6
|
+
export type CleanUpTaskInput = {
|
|
7
|
+
successfulExpiry: Date;
|
|
8
|
+
failedExpiry: Date;
|
|
9
|
+
cancelledExpiry: Date;
|
|
10
|
+
} | Condition<TaskModel>;
|
|
11
|
+
export declare class CleanUpTask extends TaskHandler<CleanUpTaskInput, TaskModel[]> {
|
|
12
|
+
protected tasks: Repo<TaskModel>;
|
|
13
|
+
constructor();
|
|
14
|
+
run(input: CleanUpTaskInput, ctx: TaskContext): Promise<TaskModel[]>;
|
|
15
|
+
}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import { TaskHandler } from "./TaskHandler.js";
|
|
11
|
+
import { repository } from "./../repository/decorators.js";
|
|
12
|
+
import { TaskModel } from "./models/TaskModel.js";
|
|
13
|
+
import { task } from "./decorators.js";
|
|
14
|
+
import { Condition } from "./../query/Condition.js";
|
|
15
|
+
import { TaskStatus } from "./constants.js";
|
|
16
|
+
let CleanUpTask = class CleanUpTask extends TaskHandler {
|
|
17
|
+
constructor() {
|
|
18
|
+
super();
|
|
19
|
+
}
|
|
20
|
+
async run(input, ctx) {
|
|
21
|
+
const log = ctx.logger;
|
|
22
|
+
try {
|
|
23
|
+
let condition;
|
|
24
|
+
if (input instanceof Condition) {
|
|
25
|
+
condition = input;
|
|
26
|
+
log.info(`Starting task cleanup with custom condition`);
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
log.info(`Starting task cleanup with expiry dates`);
|
|
30
|
+
const successCondition = Condition.attr("status")
|
|
31
|
+
.eq(TaskStatus.SUCCEEDED)
|
|
32
|
+
.and(Condition.attr("updatedAt").lte(input.successfulExpiry));
|
|
33
|
+
const failedCondition = Condition.attr("status")
|
|
34
|
+
.eq(TaskStatus.FAILED)
|
|
35
|
+
.and(Condition.attr("updatedAt").lte(input.failedExpiry));
|
|
36
|
+
const cancelledCondition = Condition.attr("status")
|
|
37
|
+
.eq(TaskStatus.CANCELED)
|
|
38
|
+
.and(Condition.attr("updatedAt").lte(input.cancelledExpiry));
|
|
39
|
+
condition = successCondition.or(failedCondition).or(cancelledCondition);
|
|
40
|
+
}
|
|
41
|
+
log.info(`Querying tasks for cleanup`);
|
|
42
|
+
const tasksToDelete = await this.tasks
|
|
43
|
+
.select(["id"])
|
|
44
|
+
.where(condition)
|
|
45
|
+
.execute(ctx);
|
|
46
|
+
if (tasksToDelete.length === 0) {
|
|
47
|
+
log.info(`No tasks found for cleanup`);
|
|
48
|
+
return [];
|
|
49
|
+
}
|
|
50
|
+
log.info(`Found ${tasksToDelete.length} tasks to delete`);
|
|
51
|
+
const deleted = await this.tasks.deleteAll(tasksToDelete.map((t) => t.id), ctx);
|
|
52
|
+
log.info(`Successfully deleted ${deleted.length} tasks`);
|
|
53
|
+
log.debug(`deleted tasks:`, deleted);
|
|
54
|
+
return deleted;
|
|
55
|
+
}
|
|
56
|
+
catch (e) {
|
|
57
|
+
log.error(`Error during task cleanup`, e);
|
|
58
|
+
throw e;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
__decorate([
|
|
63
|
+
repository(TaskModel),
|
|
64
|
+
__metadata("design:type", Object)
|
|
65
|
+
], CleanUpTask.prototype, "tasks", void 0);
|
|
66
|
+
CleanUpTask = __decorate([
|
|
67
|
+
task("cleanup-task"),
|
|
68
|
+
__metadata("design:paramtypes", [])
|
|
69
|
+
], CleanUpTask);
|
|
70
|
+
export { CleanUpTask };
|
|
71
|
+
//# sourceMappingURL=CleanUpTask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CleanUpTask.js","sourceRoot":"","sources":["../../../src/tasks/CleanUpTask.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,yBAAsB;AAG5C,OAAO,EAAE,UAAU,EAAE,sCAAiC;AACtD,OAAO,EAAE,SAAS,EAAE,8BAA2B;AAC/C,OAAO,EAAE,IAAI,EAAE,wBAAqB;AACpC,OAAO,EAAE,SAAS,EAAE,gCAA2B;AAC/C,OAAO,EAAE,UAAU,EAAE,uBAAoB;AAWlC,IAAM,WAAW,GAAjB,MAAM,WAAY,SAAQ,WAA0C;IAIzE;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,KAAuB,EAAE,GAAgB;QACjD,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC;QAEvB,IAAI,CAAC;YACH,IAAI,SAA+B,CAAC;YAEpC,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;gBAC/B,SAAS,GAAG,KAAK,CAAC;gBAClB,GAAG,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;gBAEpD,MAAM,gBAAgB,GAAG,SAAS,CAAC,IAAI,CAAY,QAAQ,CAAC;qBACzD,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC;qBACxB,GAAG,CACF,SAAS,CAAC,IAAI,CAAY,WAAW,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,CACnE,CAAC;gBAEJ,MAAM,eAAe,GAAG,SAAS,CAAC,IAAI,CAAY,QAAQ,CAAC;qBACxD,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;qBACrB,GAAG,CAAC,SAAS,CAAC,IAAI,CAAY,WAAW,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;gBAEvE,MAAM,kBAAkB,GAAG,SAAS,CAAC,IAAI,CAAY,QAAQ,CAAC;qBAC3D,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;qBACvB,GAAG,CACF,SAAS,CAAC,IAAI,CAAY,WAAW,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,CAClE,CAAC;gBAEJ,SAAS,GAAG,gBAAgB,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC;YAC1E,CAAC;YAED,GAAG,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;YACvC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK;iBACnC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;iBACd,KAAK,CAAC,SAAS,CAAC;iBAChB,OAAO,CAAC,GAAG,CAAC,CAAC;YAEhB,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/B,GAAG,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;gBACvC,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,GAAG,CAAC,IAAI,CAAC,SAAS,aAAa,CAAC,MAAM,kBAAkB,CAAC,CAAC;YAE1D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CACxC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAC9B,GAAG,CACJ,CAAC;YAEF,GAAG,CAAC,IAAI,CAAC,wBAAwB,OAAO,CAAC,MAAM,QAAQ,CAAC,CAAC;YACzD,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,OAAc,CAAC,CAAC;YAC5C,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YACpB,GAAG,CAAC,KAAK,CAAC,2BAA2B,EAAE,CAAU,CAAC,CAAC;YACnD,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;CACF,CAAA;AA/DW;IADT,UAAU,CAAC,SAAS,CAAC;;0CACY;AAFvB,WAAW;IADvB,IAAI,CAAC,cAAc,CAAC;;GACR,WAAW,CAiEvB"}
|
package/lib/esm/tasks/index.d.ts
CHANGED
package/lib/esm/tasks/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tasks/index.ts"],"names":[],"mappings":"AAAA,kCAAyB;AACzB,6BAA0B;AAC1B,+BAA4B;AAC5B,gCAA6B;AAC7B,6BAA0B;AAC1B,iCAA8B;AAC9B,gCAA6B;AAC7B,kCAA+B;AAC/B,iCAA8B;AAC9B,yCAAsC;AACtC,iCAA8B;AAC9B,iCAA8B;AAC9B,2BAAwB;AACxB,2BAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tasks/index.ts"],"names":[],"mappings":"AAAA,kCAAyB;AACzB,6BAA0B;AAC1B,iCAA8B;AAC9B,+BAA4B;AAC5B,gCAA6B;AAC7B,6BAA0B;AAC1B,iCAA8B;AAC9B,gCAA6B;AAC7B,kCAA+B;AAC/B,iCAA8B;AAC9B,yCAAsC;AACtC,iCAA8B;AAC9B,iCAA8B;AAC9B,2BAAwB;AACxB,2BAAwB"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { JSONSerializer, Model } from "@decaf-ts/decorator-validation";
|
|
2
|
+
export declare class TaskIOSerializer<M extends Model> extends JSONSerializer<M> {
|
|
3
|
+
constructor();
|
|
4
|
+
/**
|
|
5
|
+
* @summary prepares the model for serialization
|
|
6
|
+
* @description returns a shallow copy of the object, containing an enumerable {@link ModelKeys#ANCHOR} property
|
|
7
|
+
* so the object can be recognized upon deserialization
|
|
8
|
+
*
|
|
9
|
+
* @param {T} model
|
|
10
|
+
* @protected
|
|
11
|
+
*/
|
|
12
|
+
protected preSerialize(model: M, ...args: any[]): Record<string, any>;
|
|
13
|
+
/**
|
|
14
|
+
* @summary Rebuilds a model from a serialization
|
|
15
|
+
* @param {string} str
|
|
16
|
+
*
|
|
17
|
+
* @throws {Error} If it fails to parse the string, or to build the model
|
|
18
|
+
*/
|
|
19
|
+
deserialize(str: string, ...args: any[]): M;
|
|
20
|
+
/**
|
|
21
|
+
* @summary Serializes a model
|
|
22
|
+
* @param {T} model
|
|
23
|
+
*
|
|
24
|
+
* @throws {Error} if fails to serialize
|
|
25
|
+
*/
|
|
26
|
+
serialize(model: M, ...args: any[]): string;
|
|
27
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { JSONSerializer, Model, ModelKeys, } from "@decaf-ts/decorator-validation";
|
|
2
|
+
import { Metadata } from "@decaf-ts/decoration";
|
|
3
|
+
import { Condition } from "./../../query/Condition.js";
|
|
4
|
+
export class TaskIOSerializer extends JSONSerializer {
|
|
5
|
+
constructor() {
|
|
6
|
+
super();
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* @summary prepares the model for serialization
|
|
10
|
+
* @description returns a shallow copy of the object, containing an enumerable {@link ModelKeys#ANCHOR} property
|
|
11
|
+
* so the object can be recognized upon deserialization
|
|
12
|
+
*
|
|
13
|
+
* @param {T} model
|
|
14
|
+
* @protected
|
|
15
|
+
*/
|
|
16
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
17
|
+
preSerialize(model, ...args) {
|
|
18
|
+
if (model === null || typeof model !== "object") {
|
|
19
|
+
return model;
|
|
20
|
+
}
|
|
21
|
+
const toSerialize = Object.assign({}, model);
|
|
22
|
+
if (model instanceof Condition) {
|
|
23
|
+
toSerialize[ModelKeys.ANCHOR] = "??condition";
|
|
24
|
+
return toSerialize;
|
|
25
|
+
}
|
|
26
|
+
if (Model.isModel(model)) {
|
|
27
|
+
let metadata;
|
|
28
|
+
try {
|
|
29
|
+
metadata = Metadata.modelName(model.constructor);
|
|
30
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
31
|
+
}
|
|
32
|
+
catch (error) {
|
|
33
|
+
metadata = undefined;
|
|
34
|
+
}
|
|
35
|
+
if (metadata)
|
|
36
|
+
toSerialize[ModelKeys.ANCHOR] = metadata;
|
|
37
|
+
}
|
|
38
|
+
return toSerialize;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* @summary Rebuilds a model from a serialization
|
|
42
|
+
* @param {string} str
|
|
43
|
+
*
|
|
44
|
+
* @throws {Error} If it fails to parse the string, or to build the model
|
|
45
|
+
*/
|
|
46
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
47
|
+
deserialize(str, ...args) {
|
|
48
|
+
const deserialization = JSON.parse(str);
|
|
49
|
+
const className = deserialization[ModelKeys.ANCHOR];
|
|
50
|
+
if (!className)
|
|
51
|
+
return deserialization;
|
|
52
|
+
if (className === "??condition")
|
|
53
|
+
return Condition.from(deserialization);
|
|
54
|
+
return Model.build(deserialization, className);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* @summary Serializes a model
|
|
58
|
+
* @param {T} model
|
|
59
|
+
*
|
|
60
|
+
* @throws {Error} if fails to serialize
|
|
61
|
+
*/
|
|
62
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
63
|
+
serialize(model, ...args) {
|
|
64
|
+
return JSON.stringify(this.preSerialize(model));
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=TaskIOSerializer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TaskIOSerializer.js","sourceRoot":"","sources":["../../../../src/tasks/models/TaskIOSerializer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,KAAK,EACL,SAAS,GACV,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAe,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,mCAA8B;AAElD,MAAM,OAAO,gBAAkC,SAAQ,cAAiB;IACtE;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAED;;;;;;;OAOG;IACH,6DAA6D;IAC1C,YAAY,CAAC,KAAQ,EAAE,GAAG,IAAW;QACtD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAChD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,WAAW,GAAwB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAClE,IAAI,KAAK,YAAY,SAAS,EAAE,CAAC;YAC/B,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC;YAC9C,OAAO,WAAW,CAAC;QACrB,CAAC;QACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,IAAI,QAAQ,CAAC;YACb,IAAI,CAAC;gBACH,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,WAA0B,CAAC,CAAC;gBAChE,6DAA6D;YAC/D,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,QAAQ,GAAG,SAAS,CAAC;YACvB,CAAC;YACD,IAAI,QAAQ;gBAAE,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC;QACzD,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,6DAA6D;IACpD,WAAW,CAAC,GAAW,EAAE,GAAG,IAAW;QAC9C,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,CAAC,SAAS;YAAE,OAAO,eAAoB,CAAC;QAC5C,IAAI,SAAS,KAAK,aAAa;YAC7B,OAAO,SAAS,CAAC,IAAI,CAAC,eAAe,CAAiB,CAAC;QACzD,OAAO,KAAK,CAAC,KAAK,CAAC,eAAe,EAAE,SAAS,CAAiB,CAAC;IACjE,CAAC;IAED;;;;;OAKG;IACH,6DAA6D;IACpD,SAAS,CAAC,KAAQ,EAAE,GAAG,IAAW;QACzC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IAClD,CAAC;CACF"}
|
|
@@ -15,6 +15,7 @@ import { TaskBackoffModel } from "./TaskBackoffModel.js";
|
|
|
15
15
|
import { description, prop } from "@decaf-ts/decoration";
|
|
16
16
|
import { serialize } from "@decaf-ts/db-decorators";
|
|
17
17
|
import { column, createdBy, table, createdAt, updatedAt, updatedBy, } from "./../../model/decorators.js";
|
|
18
|
+
import { TaskIOSerializer } from "./TaskIOSerializer.js";
|
|
18
19
|
let TaskModel = class TaskModel extends Model {
|
|
19
20
|
constructor(arg) {
|
|
20
21
|
super(arg);
|
|
@@ -51,13 +52,13 @@ __decorate([
|
|
|
51
52
|
], TaskModel.prototype, "status", void 0);
|
|
52
53
|
__decorate([
|
|
53
54
|
prop(),
|
|
54
|
-
serialize(),
|
|
55
|
+
serialize(TaskIOSerializer),
|
|
55
56
|
description("Holds task input"),
|
|
56
57
|
__metadata("design:type", Object)
|
|
57
58
|
], TaskModel.prototype, "input", void 0);
|
|
58
59
|
__decorate([
|
|
59
60
|
prop(),
|
|
60
|
-
serialize(),
|
|
61
|
+
serialize(TaskIOSerializer),
|
|
61
62
|
description("Holds the task output when successfully completed"),
|
|
62
63
|
__metadata("design:type", Object)
|
|
63
64
|
], TaskModel.prototype, "output", void 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskModel.js","sourceRoot":"","sources":["../../../../src/tasks/models/TaskModel.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EACL,IAAI,EACJ,GAAG,EACH,KAAK,EACL,KAAK,EAEL,MAAM,EACN,QAAQ,EACR,IAAI,GACL,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,EAAE,EAAE,uCAAkC;AAC/C,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,0BAAqB;AACpD,OAAO,EAAE,cAAc,EAAE,4BAAyB;AAClD,OAAO,EAAE,gBAAgB,EAAE,8BAA2B;AAGtD,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EACL,MAAM,EACN,SAAS,EACT,KAAK,EACL,SAAS,EACT,SAAS,EACT,SAAS,GACV,oCAA+B;
|
|
1
|
+
{"version":3,"file":"TaskModel.js","sourceRoot":"","sources":["../../../../src/tasks/models/TaskModel.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from "./TaskBackoffModel";
|
|
2
2
|
export * from "./TaskErrorModel";
|
|
3
|
-
export * from "./
|
|
3
|
+
export * from "./TaskEventModel";
|
|
4
|
+
export * from "./TaskIOSerializer";
|
|
4
5
|
export * from "./TaskLogEntryModel";
|
|
5
6
|
export * from "./TaskModel";
|
|
6
7
|
export * from "./TaskStepResultModel";
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from "./TaskBackoffModel.js";
|
|
2
2
|
export * from "./TaskErrorModel.js";
|
|
3
|
-
export * from "./
|
|
3
|
+
export * from "./TaskEventModel.js";
|
|
4
|
+
export * from "./TaskIOSerializer.js";
|
|
4
5
|
export * from "./TaskLogEntryModel.js";
|
|
5
6
|
export * from "./TaskModel.js";
|
|
6
7
|
export * from "./TaskStepResultModel.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/tasks/models/index.ts"],"names":[],"mappings":"AAAA,sCAAmC;AACnC,oCAAiC;AACjC,oCAAiC;AACjC,uCAAoC;AACpC,+BAA4B;AAC5B,yCAAsC;AACtC,uCAAoC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/tasks/models/index.ts"],"names":[],"mappings":"AAAA,sCAAmC;AACnC,oCAAiC;AACjC,oCAAiC;AACjC,sCAAmC;AACnC,uCAAoC;AACpC,+BAA4B;AAC5B,yCAAsC;AACtC,uCAAoC"}
|
|
@@ -110,8 +110,8 @@ function pkDec(options, groupsort) {
|
|
|
110
110
|
options.generated = true;
|
|
111
111
|
}
|
|
112
112
|
const decs = [
|
|
113
|
-
(0, decorators_1.index)([constants_1.OrderDirection.ASC, constants_1.OrderDirection.DSC]),
|
|
114
113
|
(0, decoration_1.prop)(),
|
|
114
|
+
(0, decorators_1.index)([constants_1.OrderDirection.ASC, constants_1.OrderDirection.DSC]),
|
|
115
115
|
(0, decorator_validation_1.required)(),
|
|
116
116
|
(0, db_decorators_1.readonly)(),
|
|
117
117
|
(0, decoration_1.propMetadata)(decoration_1.Metadata.key(db_decorators_1.DBKeys.ID, attr), options),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/identity/decorators.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../src/identity/decorators.ts"],"names":[],"mappings":"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"}
|
package/lib/index.cjs
CHANGED
|
@@ -48,7 +48,7 @@ __exportStar(require("./persistence/index.cjs"), exports);
|
|
|
48
48
|
* @const VERSION
|
|
49
49
|
* @memberOf module:core
|
|
50
50
|
*/
|
|
51
|
-
exports.VERSION = "0.8.
|
|
51
|
+
exports.VERSION = "0.8.8";
|
|
52
52
|
/**
|
|
53
53
|
* @description Stores the current package version
|
|
54
54
|
* @summary A constant representing the version of the core package
|
package/lib/index.d.ts
CHANGED
|
@@ -21,7 +21,7 @@ export * from "./persistence";
|
|
|
21
21
|
* @const VERSION
|
|
22
22
|
* @memberOf module:core
|
|
23
23
|
*/
|
|
24
|
-
export declare const VERSION = "0.8.
|
|
24
|
+
export declare const VERSION = "0.8.8";
|
|
25
25
|
/**
|
|
26
26
|
* @description Stores the current package version
|
|
27
27
|
* @summary A constant representing the version of the core package
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
+
};
|
|
8
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.CleanUpTask = void 0;
|
|
13
|
+
const TaskHandler_1 = require("./TaskHandler.cjs");
|
|
14
|
+
const decorators_1 = require("./../repository/decorators.cjs");
|
|
15
|
+
const TaskModel_1 = require("./models/TaskModel.cjs");
|
|
16
|
+
const decorators_2 = require("./decorators.cjs");
|
|
17
|
+
const Condition_1 = require("./../query/Condition.cjs");
|
|
18
|
+
const constants_1 = require("./constants.cjs");
|
|
19
|
+
let CleanUpTask = class CleanUpTask extends TaskHandler_1.TaskHandler {
|
|
20
|
+
constructor() {
|
|
21
|
+
super();
|
|
22
|
+
}
|
|
23
|
+
async run(input, ctx) {
|
|
24
|
+
const log = ctx.logger;
|
|
25
|
+
try {
|
|
26
|
+
let condition;
|
|
27
|
+
if (input instanceof Condition_1.Condition) {
|
|
28
|
+
condition = input;
|
|
29
|
+
log.info(`Starting task cleanup with custom condition`);
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
log.info(`Starting task cleanup with expiry dates`);
|
|
33
|
+
const successCondition = Condition_1.Condition.attr("status")
|
|
34
|
+
.eq(constants_1.TaskStatus.SUCCEEDED)
|
|
35
|
+
.and(Condition_1.Condition.attr("updatedAt").lte(input.successfulExpiry));
|
|
36
|
+
const failedCondition = Condition_1.Condition.attr("status")
|
|
37
|
+
.eq(constants_1.TaskStatus.FAILED)
|
|
38
|
+
.and(Condition_1.Condition.attr("updatedAt").lte(input.failedExpiry));
|
|
39
|
+
const cancelledCondition = Condition_1.Condition.attr("status")
|
|
40
|
+
.eq(constants_1.TaskStatus.CANCELED)
|
|
41
|
+
.and(Condition_1.Condition.attr("updatedAt").lte(input.cancelledExpiry));
|
|
42
|
+
condition = successCondition.or(failedCondition).or(cancelledCondition);
|
|
43
|
+
}
|
|
44
|
+
log.info(`Querying tasks for cleanup`);
|
|
45
|
+
const tasksToDelete = await this.tasks
|
|
46
|
+
.select(["id"])
|
|
47
|
+
.where(condition)
|
|
48
|
+
.execute(ctx);
|
|
49
|
+
if (tasksToDelete.length === 0) {
|
|
50
|
+
log.info(`No tasks found for cleanup`);
|
|
51
|
+
return [];
|
|
52
|
+
}
|
|
53
|
+
log.info(`Found ${tasksToDelete.length} tasks to delete`);
|
|
54
|
+
const deleted = await this.tasks.deleteAll(tasksToDelete.map((t) => t.id), ctx);
|
|
55
|
+
log.info(`Successfully deleted ${deleted.length} tasks`);
|
|
56
|
+
log.debug(`deleted tasks:`, deleted);
|
|
57
|
+
return deleted;
|
|
58
|
+
}
|
|
59
|
+
catch (e) {
|
|
60
|
+
log.error(`Error during task cleanup`, e);
|
|
61
|
+
throw e;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
exports.CleanUpTask = CleanUpTask;
|
|
66
|
+
__decorate([
|
|
67
|
+
(0, decorators_1.repository)(TaskModel_1.TaskModel),
|
|
68
|
+
__metadata("design:type", Object)
|
|
69
|
+
], CleanUpTask.prototype, "tasks", void 0);
|
|
70
|
+
exports.CleanUpTask = CleanUpTask = __decorate([
|
|
71
|
+
(0, decorators_2.task)("cleanup-task"),
|
|
72
|
+
__metadata("design:paramtypes", [])
|
|
73
|
+
], CleanUpTask);
|
|
74
|
+
//# sourceMappingURL=CleanUpTask.js.map
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { TaskHandler } from "./TaskHandler";
|
|
2
|
+
import { TaskContext } from "./TaskContext";
|
|
3
|
+
import { type Repo } from "../repository/Repository";
|
|
4
|
+
import { TaskModel } from "./models/TaskModel";
|
|
5
|
+
import { Condition } from "../query/Condition";
|
|
6
|
+
export type CleanUpTaskInput = {
|
|
7
|
+
successfulExpiry: Date;
|
|
8
|
+
failedExpiry: Date;
|
|
9
|
+
cancelledExpiry: Date;
|
|
10
|
+
} | Condition<TaskModel>;
|
|
11
|
+
export declare class CleanUpTask extends TaskHandler<CleanUpTaskInput, TaskModel[]> {
|
|
12
|
+
protected tasks: Repo<TaskModel>;
|
|
13
|
+
constructor();
|
|
14
|
+
run(input: CleanUpTaskInput, ctx: TaskContext): Promise<TaskModel[]>;
|
|
15
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CleanUpTask.js","sourceRoot":"","sources":["../../src/tasks/CleanUpTask.ts"],"names":[],"mappings":"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"}
|
package/lib/tasks/index.cjs
CHANGED
|
@@ -16,6 +16,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
17
|
__exportStar(require("./models/index.cjs"), exports);
|
|
18
18
|
__exportStar(require("./builder.cjs"), exports);
|
|
19
|
+
__exportStar(require("./CleanUpTask.cjs"), exports);
|
|
19
20
|
__exportStar(require("./constants.cjs"), exports);
|
|
20
21
|
__exportStar(require("./decorators.cjs"), exports);
|
|
21
22
|
__exportStar(require("./logging.cjs"), exports);
|
package/lib/tasks/index.d.ts
CHANGED
package/lib/tasks/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tasks/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAyB;AACzB,gDAA0B;AAC1B,kDAA4B;AAC5B,mDAA6B;AAC7B,gDAA0B;AAC1B,oDAA8B;AAC9B,mDAA6B;AAC7B,qDAA+B;AAC/B,oDAA8B;AAC9B,4DAAsC;AACtC,oDAA8B;AAC9B,oDAA8B;AAC9B,8CAAwB;AACxB,8CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tasks/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,qDAAyB;AACzB,gDAA0B;AAC1B,oDAA8B;AAC9B,kDAA4B;AAC5B,mDAA6B;AAC7B,gDAA0B;AAC1B,oDAA8B;AAC9B,mDAA6B;AAC7B,qDAA+B;AAC/B,oDAA8B;AAC9B,4DAAsC;AACtC,oDAA8B;AAC9B,oDAA8B;AAC9B,8CAAwB;AACxB,8CAAwB"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TaskIOSerializer = void 0;
|
|
4
|
+
const decorator_validation_1 = require("@decaf-ts/decorator-validation");
|
|
5
|
+
const decoration_1 = require("@decaf-ts/decoration");
|
|
6
|
+
const Condition_1 = require("./../../query/Condition.cjs");
|
|
7
|
+
class TaskIOSerializer extends decorator_validation_1.JSONSerializer {
|
|
8
|
+
constructor() {
|
|
9
|
+
super();
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* @summary prepares the model for serialization
|
|
13
|
+
* @description returns a shallow copy of the object, containing an enumerable {@link ModelKeys#ANCHOR} property
|
|
14
|
+
* so the object can be recognized upon deserialization
|
|
15
|
+
*
|
|
16
|
+
* @param {T} model
|
|
17
|
+
* @protected
|
|
18
|
+
*/
|
|
19
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
20
|
+
preSerialize(model, ...args) {
|
|
21
|
+
if (model === null || typeof model !== "object") {
|
|
22
|
+
return model;
|
|
23
|
+
}
|
|
24
|
+
const toSerialize = Object.assign({}, model);
|
|
25
|
+
if (model instanceof Condition_1.Condition) {
|
|
26
|
+
toSerialize[decorator_validation_1.ModelKeys.ANCHOR] = "??condition";
|
|
27
|
+
return toSerialize;
|
|
28
|
+
}
|
|
29
|
+
if (decorator_validation_1.Model.isModel(model)) {
|
|
30
|
+
let metadata;
|
|
31
|
+
try {
|
|
32
|
+
metadata = decoration_1.Metadata.modelName(model.constructor);
|
|
33
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
34
|
+
}
|
|
35
|
+
catch (error) {
|
|
36
|
+
metadata = undefined;
|
|
37
|
+
}
|
|
38
|
+
if (metadata)
|
|
39
|
+
toSerialize[decorator_validation_1.ModelKeys.ANCHOR] = metadata;
|
|
40
|
+
}
|
|
41
|
+
return toSerialize;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* @summary Rebuilds a model from a serialization
|
|
45
|
+
* @param {string} str
|
|
46
|
+
*
|
|
47
|
+
* @throws {Error} If it fails to parse the string, or to build the model
|
|
48
|
+
*/
|
|
49
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
50
|
+
deserialize(str, ...args) {
|
|
51
|
+
const deserialization = JSON.parse(str);
|
|
52
|
+
const className = deserialization[decorator_validation_1.ModelKeys.ANCHOR];
|
|
53
|
+
if (!className)
|
|
54
|
+
return deserialization;
|
|
55
|
+
if (className === "??condition")
|
|
56
|
+
return Condition_1.Condition.from(deserialization);
|
|
57
|
+
return decorator_validation_1.Model.build(deserialization, className);
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* @summary Serializes a model
|
|
61
|
+
* @param {T} model
|
|
62
|
+
*
|
|
63
|
+
* @throws {Error} if fails to serialize
|
|
64
|
+
*/
|
|
65
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
66
|
+
serialize(model, ...args) {
|
|
67
|
+
return JSON.stringify(this.preSerialize(model));
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
exports.TaskIOSerializer = TaskIOSerializer;
|
|
71
|
+
//# sourceMappingURL=TaskIOSerializer.js.map
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { JSONSerializer, Model } from "@decaf-ts/decorator-validation";
|
|
2
|
+
export declare class TaskIOSerializer<M extends Model> extends JSONSerializer<M> {
|
|
3
|
+
constructor();
|
|
4
|
+
/**
|
|
5
|
+
* @summary prepares the model for serialization
|
|
6
|
+
* @description returns a shallow copy of the object, containing an enumerable {@link ModelKeys#ANCHOR} property
|
|
7
|
+
* so the object can be recognized upon deserialization
|
|
8
|
+
*
|
|
9
|
+
* @param {T} model
|
|
10
|
+
* @protected
|
|
11
|
+
*/
|
|
12
|
+
protected preSerialize(model: M, ...args: any[]): Record<string, any>;
|
|
13
|
+
/**
|
|
14
|
+
* @summary Rebuilds a model from a serialization
|
|
15
|
+
* @param {string} str
|
|
16
|
+
*
|
|
17
|
+
* @throws {Error} If it fails to parse the string, or to build the model
|
|
18
|
+
*/
|
|
19
|
+
deserialize(str: string, ...args: any[]): M;
|
|
20
|
+
/**
|
|
21
|
+
* @summary Serializes a model
|
|
22
|
+
* @param {T} model
|
|
23
|
+
*
|
|
24
|
+
* @throws {Error} if fails to serialize
|
|
25
|
+
*/
|
|
26
|
+
serialize(model: M, ...args: any[]): string;
|
|
27
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TaskIOSerializer.js","sourceRoot":"","sources":["../../../src/tasks/models/TaskIOSerializer.ts"],"names":[],"mappings":";;;AAAA,yEAIwC;AACxC,qDAA6D;AAC7D,2DAAkD;AAElD,MAAa,gBAAkC,SAAQ,qCAAiB;IACtE;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAED;;;;;;;OAOG;IACH,6DAA6D;IAC1C,YAAY,CAAC,KAAQ,EAAE,GAAG,IAAW;QACtD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAChD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,WAAW,GAAwB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAClE,IAAI,KAAK,YAAY,qBAAS,EAAE,CAAC;YAC/B,WAAW,CAAC,gCAAS,CAAC,MAAM,CAAC,GAAG,aAAa,CAAC;YAC9C,OAAO,WAAW,CAAC;QACrB,CAAC;QACD,IAAI,4BAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,IAAI,QAAQ,CAAC;YACb,IAAI,CAAC;gBACH,QAAQ,GAAG,qBAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,WAA0B,CAAC,CAAC;gBAChE,6DAA6D;YAC/D,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,QAAQ,GAAG,SAAS,CAAC;YACvB,CAAC;YACD,IAAI,QAAQ;gBAAE,WAAW,CAAC,gCAAS,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC;QACzD,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,6DAA6D;IACpD,WAAW,CAAC,GAAW,EAAE,GAAG,IAAW;QAC9C,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,SAAS,GAAG,eAAe,CAAC,gCAAS,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,CAAC,SAAS;YAAE,OAAO,eAAoB,CAAC;QAC5C,IAAI,SAAS,KAAK,aAAa;YAC7B,OAAO,qBAAS,CAAC,IAAI,CAAC,eAAe,CAAiB,CAAC;QACzD,OAAO,4BAAK,CAAC,KAAK,CAAC,eAAe,EAAE,SAAS,CAAiB,CAAC;IACjE,CAAC;IAED;;;;;OAKG;IACH,6DAA6D;IACpD,SAAS,CAAC,KAAQ,EAAE,GAAG,IAAW;QACzC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;IAClD,CAAC;CACF;AA9DD,4CA8DC"}
|