@eggjs/tegg-lifecycle 4.0.0-beta.1 → 4.0.0-beta.11

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 CHANGED
@@ -1,5 +1,17 @@
1
1
  # `@eggjs/tegg-lifecycle`
2
2
 
3
+ [![NPM version][npm-image]][npm-url]
4
+ [![Known Vulnerabilities][snyk-image]][snyk-url]
5
+ [![npm download][download-image]][download-url]
6
+ [![Node.js Version](https://img.shields.io/node/v/@eggjs/tegg-lifecycle.svg?style=flat)](https://nodejs.org/en/download/)
7
+
8
+ [npm-image]: https://img.shields.io/npm/v/@eggjs/tegg-lifecycle.svg?style=flat-square
9
+ [npm-url]: https://npmjs.org/package/@eggjs/tegg-lifecycle
10
+ [snyk-image]: https://snyk.io/test/npm/@eggjs/tegg-lifecycle/badge.svg?style=flat-square
11
+ [snyk-url]: https://snyk.io/test/npm/@eggjs/tegg-lifecycle
12
+ [download-image]: https://img.shields.io/npm/dm/@eggjs/tegg-lifecycle.svg?style=flat-square
13
+ [download-url]: https://npmjs.org/package/@eggjs/tegg-lifecycle
14
+
3
15
  # Usage
4
16
 
5
17
  This is an internal tegg library, you probably shouldn't use it directly.
@@ -0,0 +1,33 @@
1
+ export class IdenticalUtil {
2
+ static objIndex = 0;
3
+ static protoIndex = 0;
4
+ static ctxIndex = 0;
5
+ static createLoadUnitId(loadUnitName) {
6
+ // LOAD_UNIT:xxx
7
+ return `LOAD_UNIT:${loadUnitName}`;
8
+ }
9
+ static createProtoId(loadUnitId, name) {
10
+ // LOAD_UNIT:xxx:PROTO:CONTEXT:xxx
11
+ return `${loadUnitId}:PROTO:${this.protoIndex++}:${String(name)}`;
12
+ }
13
+ static createLoadUnitInstanceId(loadUnitId) {
14
+ // LOAD_UNIT:xxx:INSTANCE
15
+ return `${loadUnitId}:INSTANCE`;
16
+ }
17
+ static createContextId(traceId) {
18
+ // CONTEXT:0
19
+ if (traceId) {
20
+ return `CONTEXT:${traceId}:${this.ctxIndex++}`;
21
+ }
22
+ return `CONTEXT:${this.ctxIndex++}`;
23
+ }
24
+ static createObjectId(protoId, ctxId) {
25
+ if (ctxId) {
26
+ // LOAD_UNIT:xxx:PROTO:CONTEXT:xxx:INSTANCE:CONTEXT:0
27
+ return `${protoId}:INSTANCE:${ctxId}`;
28
+ }
29
+ // LOAD_UNIT:xxx:PROTO:CONTEXT:xxx:INSTANCE:0
30
+ return `${protoId}:INSTANCE:${this.objIndex++}`;
31
+ }
32
+ }
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSWRlbnRpY2FsT2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0lkZW50aWNhbE9iamVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxNQUFNLE9BQU8sYUFBYTtJQUNoQixNQUFNLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztJQUNwQixNQUFNLENBQUMsVUFBVSxHQUFHLENBQUMsQ0FBQztJQUN0QixNQUFNLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztJQUU1QixNQUFNLENBQUMsZ0JBQWdCLENBQUMsWUFBb0I7UUFDMUMsZ0JBQWdCO1FBQ2hCLE9BQU8sYUFBYSxZQUFZLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQsTUFBTSxDQUFDLGFBQWEsQ0FBQyxVQUFjLEVBQUUsSUFBaUI7UUFDcEQsa0NBQWtDO1FBQ2xDLE9BQU8sR0FBRyxVQUFVLFVBQVUsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ3BFLENBQUM7SUFFRCxNQUFNLENBQUMsd0JBQXdCLENBQUMsVUFBYztRQUM1Qyx5QkFBeUI7UUFDekIsT0FBTyxHQUFHLFVBQVUsV0FBVyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxNQUFNLENBQUMsZUFBZSxDQUFDLE9BQWdCO1FBQ3JDLFlBQVk7UUFDWixJQUFJLE9BQU8sRUFBRSxDQUFDO1lBQ1osT0FBTyxXQUFXLE9BQU8sSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztRQUNqRCxDQUFDO1FBQ0QsT0FBTyxXQUFXLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLE9BQVcsRUFBRSxLQUFVO1FBQzNDLElBQUksS0FBSyxFQUFFLENBQUM7WUFDVixxREFBcUQ7WUFDckQsT0FBTyxHQUFHLE9BQU8sYUFBYSxLQUFLLEVBQUUsQ0FBQztRQUN4QyxDQUFDO1FBQ0QsNkNBQTZDO1FBQzdDLE9BQU8sR0FBRyxPQUFPLGFBQWEsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7SUFDbEQsQ0FBQyJ9
@@ -16,6 +16,6 @@ export declare class LifecycleUtil<T extends LifecycleContext, R extends Lifecyc
16
16
  static callPostCreate<T extends LifecycleContext, R extends LifecycleObject<T>>(lifecycle: LifecycleHook<T, R> | undefined, ctx: T, obj: R): Promise<void>;
17
17
  static callPreDestroy<T extends LifecycleContext, R extends LifecycleObject<T>>(lifecycle: LifecycleHook<T, R> | undefined, ctx: T, obj: R): Promise<void>;
18
18
  static setLifecycleHook(method: string, hookName: LifecycleHookName, clazz: EggProtoImplClass): void;
19
- getLifecycleHook(hookName: LifecycleHookName, proto: EggPrototype): keyof import("@eggjs/tegg-types").EggObjectLifecycle | undefined;
20
- static getStaticLifecycleHook(hookName: LifecycleHookName, clazz: EggProtoImplClass): string | undefined;
19
+ getLifecycleHook(hookName: LifecycleHookName, proto: EggPrototype): keyof import("@eggjs/tegg-types").EggObjectLifecycle;
20
+ static getStaticLifecycleHook(hookName: LifecycleHookName, clazz: EggProtoImplClass): string;
21
21
  }
@@ -0,0 +1,81 @@
1
+ import { MetadataUtil } from '@eggjs/core-decorator';
2
+ export class LifecycleUtil {
3
+ lifecycleSet = new Set();
4
+ objLifecycleSet = new Map();
5
+ registerLifecycle(lifecycle) {
6
+ this.lifecycleSet.add(lifecycle);
7
+ }
8
+ deleteLifecycle(lifecycle) {
9
+ this.lifecycleSet.delete(lifecycle);
10
+ }
11
+ getLifecycleList() {
12
+ return Array.from(this.lifecycleSet);
13
+ }
14
+ registerObjectLifecycle(obj, lifecycle) {
15
+ if (!this.objLifecycleSet.has(obj.id)) {
16
+ this.objLifecycleSet.set(obj.id, new Set());
17
+ }
18
+ this.objLifecycleSet.get(obj.id).add(lifecycle);
19
+ }
20
+ deleteObjectLifecycle(obj, lifecycle) {
21
+ this.objLifecycleSet.get(obj.id)?.delete(lifecycle);
22
+ }
23
+ clearObjectLifecycle(obj) {
24
+ this.objLifecycleSet.delete(obj.id);
25
+ }
26
+ getObjectLifecycleList(obj) {
27
+ if (this.objLifecycleSet.has(obj.id)) {
28
+ return Array.from(this.objLifecycleSet.get(obj.id));
29
+ }
30
+ return [];
31
+ }
32
+ async objectPreCreate(ctx, obj) {
33
+ const globalLifecycleList = this.getLifecycleList();
34
+ const objLifecycleList = this.getObjectLifecycleList(obj);
35
+ await Promise.all(globalLifecycleList.map(lifecycle => LifecycleUtil.callPreCreate(lifecycle, ctx, obj)));
36
+ await Promise.all(objLifecycleList.map(lifecycle => LifecycleUtil.callPreCreate(lifecycle, ctx, obj)));
37
+ }
38
+ async objectPostCreate(ctx, obj) {
39
+ const lifecycleList = this.getLifecycleList();
40
+ const objLifecycleList = this.getObjectLifecycleList(obj);
41
+ await Promise.all(lifecycleList.map(lifecycle => LifecycleUtil.callPostCreate(lifecycle, ctx, obj)));
42
+ await Promise.all(objLifecycleList.map(lifecycle => LifecycleUtil.callPostCreate(lifecycle, ctx, obj)));
43
+ }
44
+ async objectPreDestroy(ctx, obj) {
45
+ const lifecycleList = this.getLifecycleList();
46
+ const objLifecycleList = this.getObjectLifecycleList(obj);
47
+ await Promise.all(lifecycleList.map(lifecycle => LifecycleUtil.callPreDestroy(lifecycle, ctx, obj)));
48
+ await Promise.all(objLifecycleList.map(lifecycle => LifecycleUtil.callPreDestroy(lifecycle, ctx, obj)));
49
+ }
50
+ static async callPreCreate(lifecycle, ctx, obj) {
51
+ if (!lifecycle || !lifecycle.preCreate) {
52
+ return;
53
+ }
54
+ await lifecycle.preCreate(ctx, obj);
55
+ }
56
+ static async callPostCreate(lifecycle, ctx, obj) {
57
+ if (!lifecycle || !lifecycle.postCreate) {
58
+ return;
59
+ }
60
+ await lifecycle.postCreate(ctx, obj);
61
+ }
62
+ static async callPreDestroy(lifecycle, ctx, obj) {
63
+ if (!lifecycle || !lifecycle.preDestroy) {
64
+ return;
65
+ }
66
+ await lifecycle.preDestroy(ctx, obj);
67
+ }
68
+ static setLifecycleHook(method, hookName, clazz) {
69
+ const LIFECYCLE_HOOK = Symbol.for(`EggPrototype#Lifecycle${hookName}`);
70
+ MetadataUtil.defineMetaData(LIFECYCLE_HOOK, method, clazz);
71
+ }
72
+ getLifecycleHook(hookName, proto) {
73
+ const LIFECYCLE_HOOK = Symbol.for(`EggPrototype#Lifecycle${hookName}`);
74
+ return proto.getMetaData(LIFECYCLE_HOOK);
75
+ }
76
+ static getStaticLifecycleHook(hookName, clazz) {
77
+ const LIFECYCLE_HOOK = Symbol.for(`EggPrototype#Lifecycle${hookName}`);
78
+ return MetadataUtil.getMetaData(LIFECYCLE_HOOK, clazz);
79
+ }
80
+ }
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGlmeWN5Y2xlVXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9MaWZ5Y3ljbGVVdGlsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQVVyRCxNQUFNLE9BQU8sYUFBYTtJQUVoQixZQUFZLEdBQTZCLElBQUksR0FBRyxFQUFFLENBQUM7SUFDbkQsZUFBZSxHQUEwQyxJQUFJLEdBQUcsRUFBRSxDQUFDO0lBRTNFLGlCQUFpQixDQUFDLFNBQThCO1FBQzlDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxlQUFlLENBQUMsU0FBOEI7UUFDNUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELHVCQUF1QixDQUFDLEdBQU0sRUFBRSxTQUE4QjtRQUM1RCxJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7WUFDdEMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDOUMsQ0FBQztRQUNELElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUUsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVELHFCQUFxQixDQUFDLEdBQU0sRUFBRSxTQUE4QjtRQUMxRCxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxHQUFNO1FBQ3pCLElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsc0JBQXNCLENBQUMsR0FBTTtRQUMzQixJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1lBQ3JDLE9BQU8sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFFLENBQUMsQ0FBQztRQUN2RCxDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBRUQsS0FBSyxDQUFDLGVBQWUsQ0FBQyxHQUFNLEVBQUUsR0FBTTtRQUNsQyxNQUFNLG1CQUFtQixHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3BELE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzFELE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3pHLENBQUM7SUFFRCxLQUFLLENBQUMsZ0JBQWdCLENBQUMsR0FBTSxFQUFFLEdBQU07UUFDbkMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDOUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUQsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFHLENBQUM7SUFFRCxLQUFLLENBQUMsZ0JBQWdCLENBQUMsR0FBTSxFQUFFLEdBQU07UUFDbkMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDOUMsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDMUQsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3JHLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzFHLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBMkQsU0FBMEMsRUFBRSxHQUFNLEVBQUUsR0FBTTtRQUM3SSxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3ZDLE9BQU87UUFDVCxDQUFDO1FBQ0QsTUFBTSxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQTJELFNBQTBDLEVBQUUsR0FBTSxFQUFFLEdBQU07UUFDOUksSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUN4QyxPQUFPO1FBQ1QsQ0FBQztRQUNELE1BQU0sU0FBUyxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUEyRCxTQUEwQyxFQUFFLEdBQU0sRUFBRSxHQUFNO1FBQzlJLElBQUksQ0FBQyxTQUFTLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDeEMsT0FBTztRQUNULENBQUM7UUFDRCxNQUFNLFNBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBYyxFQUFFLFFBQTJCLEVBQUUsS0FBd0I7UUFDM0YsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUN2RSxZQUFZLENBQUMsY0FBYyxDQUFDLGNBQWMsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELGdCQUFnQixDQUFDLFFBQTJCLEVBQUUsS0FBbUI7UUFDL0QsTUFBTSxjQUFjLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyx5QkFBeUIsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUN2RSxPQUFPLEtBQUssQ0FBQyxXQUFXLENBQW9CLGNBQWMsQ0FBQyxDQUFDO0lBQzlELENBQUM7SUFFRCxNQUFNLENBQUMsc0JBQXNCLENBQUMsUUFBMkIsRUFBRSxLQUF3QjtRQUNqRixNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLHlCQUF5QixRQUFRLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZFLE9BQU8sWUFBWSxDQUFDLFdBQVcsQ0FBUyxjQUFjLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDakUsQ0FBQztDQUNGIn0=
@@ -0,0 +1,27 @@
1
+ import { LifecycleUtil } from "../LifycycleUtil.js";
2
+ function createLifecycle(hookName) {
3
+ return () => {
4
+ return function (target, methodName) {
5
+ const clazz = target.constructor;
6
+ LifecycleUtil.setLifecycleHook(methodName, hookName, clazz);
7
+ };
8
+ };
9
+ }
10
+ function createStaticLifecycle(hookName) {
11
+ return () => {
12
+ return function (target, methodName) {
13
+ if (typeof target !== 'function') {
14
+ throw new Error(`${hookName} must be a static function`);
15
+ }
16
+ LifecycleUtil.setLifecycleHook(methodName, hookName, target);
17
+ };
18
+ };
19
+ }
20
+ export const LifecyclePostConstruct = createLifecycle('postConstruct');
21
+ export const LifecyclePreInject = createLifecycle('preInject');
22
+ export const LifecyclePostInject = createLifecycle('postInject');
23
+ export const LifecycleInit = createLifecycle('init');
24
+ export const LifecyclePreDestroy = createLifecycle('preDestroy');
25
+ export const LifecycleDestroy = createLifecycle('destroy');
26
+ export const LifecyclePreLoad = createStaticLifecycle('preLoad');
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZGVjb3JhdG9yL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVwRCxTQUFTLGVBQWUsQ0FBQyxRQUEyQjtJQUNsRCxPQUFPLEdBQUcsRUFBRTtRQUNWLE9BQU8sVUFBUyxNQUFjLEVBQUUsVUFBa0I7WUFDaEQsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLFdBQWdDLENBQUM7WUFDdEQsYUFBYSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDOUQsQ0FBQyxDQUFDO0lBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUVELFNBQVMscUJBQXFCLENBQUMsUUFBMkI7SUFDeEQsT0FBTyxHQUFHLEVBQUU7UUFDVixPQUFPLFVBQVMsTUFBeUIsRUFBRSxVQUFrQjtZQUMzRCxJQUFJLE9BQU8sTUFBTSxLQUFLLFVBQVUsRUFBRSxDQUFDO2dCQUNqQyxNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsUUFBUSw0QkFBNEIsQ0FBQyxDQUFDO1lBQzNELENBQUM7WUFDRCxhQUFhLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUMvRCxDQUFDLENBQUM7SUFDSixDQUFDLENBQUM7QUFDSixDQUFDO0FBR0QsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsZUFBZSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0FBQ3ZFLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQztBQUMvRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDakUsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUNyRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxlQUFlLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDakUsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUcsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQzNELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLHFCQUFxQixDQUFDLFNBQVMsQ0FBQyxDQUFDIn0=
@@ -0,0 +1,4 @@
1
+ export * from '@eggjs/tegg-types/lifecycle';
2
+ export * from './LifycycleUtil.ts';
3
+ export * from './IdenticalObject.ts';
4
+ export * from './decorator/index.ts';
package/dist/index.js ADDED
@@ -0,0 +1,5 @@
1
+ export * from '@eggjs/tegg-types/lifecycle';
2
+ export * from "./LifycycleUtil.js";
3
+ export * from "./IdenticalObject.js";
4
+ export * from "./decorator/index.js";
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyw2QkFBNkIsQ0FBQztBQUU1QyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyxzQkFBc0IsQ0FBQyJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eggjs/tegg-lifecycle",
3
- "version": "4.0.0-beta.1",
3
+ "version": "4.0.0-beta.11",
4
4
  "description": "tegg lifecycle definition",
5
5
  "keywords": [
6
6
  "egg",
@@ -10,24 +10,15 @@
10
10
  ],
11
11
  "type": "module",
12
12
  "exports": {
13
- ".": {
14
- "types": "./src/index.d.ts",
15
- "default": "./src/index.js"
16
- }
13
+ ".": "./dist/index.js",
14
+ "./package.json": "./package.json"
17
15
  },
18
16
  "files": [
19
- "src/**/*.js",
20
- "src/**/*.d.ts"
17
+ "dist"
21
18
  ],
22
- "scripts": {
23
- "clean": "tsc -b --clean",
24
- "tsc": "npm run clean && tsc -p ./tsconfig.json",
25
- "tsc:pub": "npm run tsc",
26
- "prepublishOnly": "npm run tsc"
27
- },
28
19
  "author": "killagu <killa123@126.com>",
29
20
  "license": "MIT",
30
- "homepage": "https://github.com/eggjs/tegg",
21
+ "homepage": "https://github.com/eggjs/tegg/tree/next/core/lifecycle",
31
22
  "bugs": {
32
23
  "url": "https://github.com/eggjs/tegg/issues"
33
24
  },
@@ -37,19 +28,27 @@
37
28
  "directory": "core/lifecycle"
38
29
  },
39
30
  "engines": {
40
- "node": ">=20.0.0"
31
+ "node": ">=22.18.0"
41
32
  },
42
33
  "publishConfig": {
43
34
  "access": "public"
44
35
  },
45
36
  "dependencies": {
46
- "@eggjs/core-decorator": "^4.0.0-beta.1",
47
- "@eggjs/tegg-types": "^4.0.0-beta.1"
37
+ "@eggjs/core-decorator": "4.0.0-beta.11",
38
+ "@eggjs/tegg-types": "4.0.0-beta.11"
48
39
  },
49
40
  "devDependencies": {
50
- "@types/node": "22",
51
- "ts-node": "10",
52
- "typescript": "5"
53
- },
54
- "gitHead": "79a22905272d6de7fe06152231dff65d213d9166"
55
- }
41
+ "@types/node": "^22.10.5",
42
+ "typescript": "^5.9.3",
43
+ "tsdown": "^0.15.6",
44
+ "unplugin-unused": "^0.5.3"
45
+ },
46
+ "main": "./dist/index.js",
47
+ "module": "./dist/index.js",
48
+ "types": "./dist/index.d.ts",
49
+ "scripts": {
50
+ "clean": "rimraf dist *.tsbuildinfo",
51
+ "build": "tsdown && npm run clean && tsc -p tsconfig.build.json",
52
+ "typecheck": "tsc --noEmit"
53
+ }
54
+ }
@@ -1,33 +0,0 @@
1
- export class IdenticalUtil {
2
- static objIndex = 0;
3
- static protoIndex = 0;
4
- static ctxIndex = 0;
5
- static createLoadUnitId(loadUnitName) {
6
- // LOAD_UNIT:xxx
7
- return `LOAD_UNIT:${loadUnitName}`;
8
- }
9
- static createProtoId(loadUnitId, name) {
10
- // LOAD_UNIT:xxx:PROTO:CONTEXT:xxx
11
- return `${loadUnitId}:PROTO:${this.protoIndex++}:${String(name)}`;
12
- }
13
- static createLoadUnitInstanceId(loadUnitId) {
14
- // LOAD_UNIT:xxx:INSTANCE
15
- return `${loadUnitId}:INSTANCE`;
16
- }
17
- static createContextId(traceId) {
18
- // CONTEXT:0
19
- if (traceId) {
20
- return `CONTEXT:${traceId}:${this.ctxIndex++}`;
21
- }
22
- return `CONTEXT:${this.ctxIndex++}`;
23
- }
24
- static createObjectId(protoId, ctxId) {
25
- if (ctxId) {
26
- // LOAD_UNIT:xxx:PROTO:CONTEXT:xxx:INSTANCE:CONTEXT:0
27
- return `${protoId}:INSTANCE:${ctxId}`;
28
- }
29
- // LOAD_UNIT:xxx:PROTO:CONTEXT:xxx:INSTANCE:0
30
- return `${protoId}:INSTANCE:${this.objIndex++}`;
31
- }
32
- }
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSWRlbnRpY2FsT2JqZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiSWRlbnRpY2FsT2JqZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sT0FBTyxhQUFhO0lBQ2hCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBQ3BCLE1BQU0sQ0FBQyxVQUFVLEdBQUcsQ0FBQyxDQUFDO0lBQ3RCLE1BQU0sQ0FBQyxRQUFRLEdBQUcsQ0FBQyxDQUFDO0lBRTVCLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFvQjtRQUMxQyxnQkFBZ0I7UUFDaEIsT0FBTyxhQUFhLFlBQVksRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFRCxNQUFNLENBQUMsYUFBYSxDQUFDLFVBQWMsRUFBRSxJQUFpQjtRQUNwRCxrQ0FBa0M7UUFDbEMsT0FBTyxHQUFHLFVBQVUsVUFBVSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7SUFDcEUsQ0FBQztJQUVELE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxVQUFjO1FBQzVDLHlCQUF5QjtRQUN6QixPQUFPLEdBQUcsVUFBVSxXQUFXLENBQUM7SUFDbEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxlQUFlLENBQUMsT0FBZ0I7UUFDckMsWUFBWTtRQUNaLElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixPQUFPLFdBQVcsT0FBTyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO1FBQ2pELENBQUM7UUFDRCxPQUFPLFdBQVcsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsT0FBVyxFQUFFLEtBQVU7UUFDM0MsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUNWLHFEQUFxRDtZQUNyRCxPQUFPLEdBQUcsT0FBTyxhQUFhLEtBQUssRUFBRSxDQUFDO1FBQ3hDLENBQUM7UUFDRCw2Q0FBNkM7UUFDN0MsT0FBTyxHQUFHLE9BQU8sYUFBYSxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztJQUNsRCxDQUFDIn0=
@@ -1,81 +0,0 @@
1
- import { MetadataUtil } from '@eggjs/core-decorator';
2
- export class LifecycleUtil {
3
- lifecycleSet = new Set();
4
- objLifecycleSet = new Map();
5
- registerLifecycle(lifecycle) {
6
- this.lifecycleSet.add(lifecycle);
7
- }
8
- deleteLifecycle(lifecycle) {
9
- this.lifecycleSet.delete(lifecycle);
10
- }
11
- getLifecycleList() {
12
- return Array.from(this.lifecycleSet);
13
- }
14
- registerObjectLifecycle(obj, lifecycle) {
15
- if (!this.objLifecycleSet.has(obj.id)) {
16
- this.objLifecycleSet.set(obj.id, new Set());
17
- }
18
- this.objLifecycleSet.get(obj.id).add(lifecycle);
19
- }
20
- deleteObjectLifecycle(obj, lifecycle) {
21
- this.objLifecycleSet.get(obj.id)?.delete(lifecycle);
22
- }
23
- clearObjectLifecycle(obj) {
24
- this.objLifecycleSet.delete(obj.id);
25
- }
26
- getObjectLifecycleList(obj) {
27
- if (this.objLifecycleSet.has(obj.id)) {
28
- return Array.from(this.objLifecycleSet.get(obj.id));
29
- }
30
- return [];
31
- }
32
- async objectPreCreate(ctx, obj) {
33
- const globalLifecycleList = this.getLifecycleList();
34
- const objLifecycleList = this.getObjectLifecycleList(obj);
35
- await Promise.all(globalLifecycleList.map(lifecycle => LifecycleUtil.callPreCreate(lifecycle, ctx, obj)));
36
- await Promise.all(objLifecycleList.map(lifecycle => LifecycleUtil.callPreCreate(lifecycle, ctx, obj)));
37
- }
38
- async objectPostCreate(ctx, obj) {
39
- const lifecycleList = this.getLifecycleList();
40
- const objLifecycleList = this.getObjectLifecycleList(obj);
41
- await Promise.all(lifecycleList.map(lifecycle => LifecycleUtil.callPostCreate(lifecycle, ctx, obj)));
42
- await Promise.all(objLifecycleList.map(lifecycle => LifecycleUtil.callPostCreate(lifecycle, ctx, obj)));
43
- }
44
- async objectPreDestroy(ctx, obj) {
45
- const lifecycleList = this.getLifecycleList();
46
- const objLifecycleList = this.getObjectLifecycleList(obj);
47
- await Promise.all(lifecycleList.map(lifecycle => LifecycleUtil.callPreDestroy(lifecycle, ctx, obj)));
48
- await Promise.all(objLifecycleList.map(lifecycle => LifecycleUtil.callPreDestroy(lifecycle, ctx, obj)));
49
- }
50
- static async callPreCreate(lifecycle, ctx, obj) {
51
- if (!lifecycle || !lifecycle.preCreate) {
52
- return;
53
- }
54
- await lifecycle.preCreate(ctx, obj);
55
- }
56
- static async callPostCreate(lifecycle, ctx, obj) {
57
- if (!lifecycle || !lifecycle.postCreate) {
58
- return;
59
- }
60
- await lifecycle.postCreate(ctx, obj);
61
- }
62
- static async callPreDestroy(lifecycle, ctx, obj) {
63
- if (!lifecycle || !lifecycle.preDestroy) {
64
- return;
65
- }
66
- await lifecycle.preDestroy(ctx, obj);
67
- }
68
- static setLifecycleHook(method, hookName, clazz) {
69
- const LIFECYCLE_HOOK = Symbol.for(`EggPrototype#Lifecycle${hookName}`);
70
- MetadataUtil.defineMetaData(LIFECYCLE_HOOK, method, clazz);
71
- }
72
- getLifecycleHook(hookName, proto) {
73
- const LIFECYCLE_HOOK = Symbol.for(`EggPrototype#Lifecycle${hookName}`);
74
- return proto.getMetaData(LIFECYCLE_HOOK);
75
- }
76
- static getStaticLifecycleHook(hookName, clazz) {
77
- const LIFECYCLE_HOOK = Symbol.for(`EggPrototype#Lifecycle${hookName}`);
78
- return MetadataUtil.getMetaData(LIFECYCLE_HOOK, clazz);
79
- }
80
- }
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGlmeWN5Y2xlVXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIkxpZnljeWNsZVV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBVXJELE1BQU0sT0FBTyxhQUFhO0lBRWhCLFlBQVksR0FBNkIsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQUNuRCxlQUFlLEdBQTBDLElBQUksR0FBRyxFQUFFLENBQUM7SUFFM0UsaUJBQWlCLENBQUMsU0FBOEI7UUFDOUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELGVBQWUsQ0FBQyxTQUE4QjtRQUM1QyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsZ0JBQWdCO1FBQ2QsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsdUJBQXVCLENBQUMsR0FBTSxFQUFFLFNBQThCO1FBQzVELElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztZQUN0QyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLElBQUksR0FBRyxFQUFFLENBQUMsQ0FBQztRQUM5QyxDQUFDO1FBQ0QsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBRSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQscUJBQXFCLENBQUMsR0FBTSxFQUFFLFNBQThCO1FBQzFELElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxNQUFNLENBQUMsU0FBUyxD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
@@ -1,27 +0,0 @@
1
- import { LifecycleUtil } from '../LifycycleUtil.js';
2
- function createLifecycle(hookName) {
3
- return () => {
4
- return function (target, methodName) {
5
- const clazz = target.constructor;
6
- LifecycleUtil.setLifecycleHook(methodName, hookName, clazz);
7
- };
8
- };
9
- }
10
- function createStaticLifecycle(hookName) {
11
- return () => {
12
- return function (target, methodName) {
13
- if (typeof target !== 'function') {
14
- throw new Error(`${hookName} must be a static function`);
15
- }
16
- LifecycleUtil.setLifecycleHook(methodName, hookName, target);
17
- };
18
- };
19
- }
20
- export const LifecyclePostConstruct = createLifecycle('postConstruct');
21
- export const LifecyclePreInject = createLifecycle('preInject');
22
- export const LifecyclePostInject = createLifecycle('postInject');
23
- export const LifecycleInit = createLifecycle('init');
24
- export const LifecyclePreDestroy = createLifecycle('preDestroy');
25
- export const LifecycleDestroy = createLifecycle('destroy');
26
- export const LifecyclePreLoad = createStaticLifecycle('preLoad');
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFcEQsU0FBUyxlQUFlLENBQUMsUUFBMkI7SUFDbEQsT0FBTyxHQUFHLEVBQUU7UUFDVixPQUFPLFVBQVMsTUFBYyxFQUFFLFVBQWtCO1lBQ2hELE1BQU0sS0FBSyxHQUFHLE1BQU0sQ0FBQyxXQUFnQyxDQUFDO1lBQ3RELGFBQWEsQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzlELENBQUMsQ0FBQztJQUNKLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLHFCQUFxQixDQUFDLFFBQTJCO0lBQ3hELE9BQU8sR0FBRyxFQUFFO1FBQ1YsT0FBTyxVQUFTLE1BQXlCLEVBQUUsVUFBa0I7WUFDM0QsSUFBSSxPQUFPLE1BQU0sS0FBSyxVQUFVLEVBQUUsQ0FBQztnQkFDakMsTUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLFFBQVEsNEJBQTRCLENBQUMsQ0FBQztZQUMzRCxDQUFDO1lBQ0QsYUFBYSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDL0QsQ0FBQyxDQUFDO0lBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQztBQUdELE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLGVBQWUsQ0FBQyxlQUFlLENBQUMsQ0FBQztBQUN2RSxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxlQUFlLENBQUMsV0FBVyxDQUFDLENBQUM7QUFDL0QsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsZUFBZSxDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQ2pFLE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxlQUFlLENBQUMsTUFBTSxDQUFDLENBQUM7QUFDckQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsZUFBZSxDQUFDLFlBQVksQ0FBQyxDQUFDO0FBQ2pFLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztBQUMzRCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxxQkFBcUIsQ0FBQyxTQUFTLENBQUMsQ0FBQyJ9
package/src/index.d.ts DELETED
@@ -1,4 +0,0 @@
1
- export * from '@eggjs/tegg-types/lifecycle';
2
- export * from './LifycycleUtil.js';
3
- export * from './IdenticalObject.js';
4
- export * from './decorator/index.js';
package/src/index.js DELETED
@@ -1,5 +0,0 @@
1
- export * from '@eggjs/tegg-types/lifecycle';
2
- export * from './LifycycleUtil.js';
3
- export * from './IdenticalObject.js';
4
- export * from './decorator/index.js';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLHNCQUFzQixDQUFDIn0=
File without changes
File without changes