@quadnix/octo 0.0.17 → 0.0.18
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 +4 -2
- package/dist/app.type.d.ts +14 -16
- package/dist/app.type.js.map +1 -1
- package/dist/decorators/action.decorator.js +29 -15
- package/dist/decorators/action.decorator.js.map +1 -1
- package/dist/decorators/anchor.decorator.js +5 -1
- package/dist/decorators/anchor.decorator.js.map +1 -1
- package/dist/decorators/container.d.ts +1 -1
- package/dist/decorators/enable-hook.decorator.d.ts +3 -0
- package/dist/decorators/enable-hook.decorator.js +13 -0
- package/dist/decorators/enable-hook.decorator.js.map +1 -0
- package/dist/decorators/factory.decorator.d.ts +1 -1
- package/dist/decorators/model.decorator.js +5 -1
- package/dist/decorators/model.decorator.js.map +1 -1
- package/dist/decorators/module.decorator.d.ts +36 -1
- package/dist/decorators/module.decorator.js +15 -5
- package/dist/decorators/module.decorator.js.map +1 -1
- package/dist/decorators/overlay.decorator.js +5 -1
- package/dist/decorators/overlay.decorator.js.map +1 -1
- package/dist/decorators/resource.decorator.js +5 -1
- package/dist/decorators/resource.decorator.js.map +1 -1
- package/dist/decorators/test-container.d.ts +13 -2
- package/dist/decorators/test-container.js +18 -3
- package/dist/decorators/test-container.js.map +1 -1
- package/dist/functions/dependency/{dependency.model.d.ts → dependency.d.ts} +2 -3
- package/dist/functions/dependency/{dependency.model.js → dependency.js} +1 -17
- package/dist/functions/dependency/dependency.js.map +1 -0
- package/dist/functions/diff/diff-metadata.d.ts +20 -0
- package/dist/functions/diff/{diff-metadata.model.js → diff-metadata.js} +2 -6
- package/dist/functions/diff/diff-metadata.js.map +1 -0
- package/dist/functions/diff/{diff.model.d.ts → diff.d.ts} +2 -2
- package/dist/functions/diff/{diff.model.js → diff.js} +16 -2
- package/dist/functions/diff/diff.js.map +1 -0
- package/dist/functions/diff/diff.utility.d.ts +3 -2
- package/dist/functions/diff/diff.utility.js +30 -5
- package/dist/functions/diff/diff.utility.js.map +1 -1
- package/dist/functions/hook/commit.hook.d.ts +11 -0
- package/dist/functions/hook/commit.hook.js +39 -0
- package/dist/functions/hook/commit.hook.js.map +1 -0
- package/dist/functions/hook/hook.interface.d.ts +8 -0
- package/dist/functions/hook/hook.interface.js +2 -0
- package/dist/functions/hook/hook.interface.js.map +1 -0
- package/dist/functions/hook/model-action.hook.d.ts +12 -0
- package/dist/functions/hook/model-action.hook.js +70 -0
- package/dist/functions/hook/model-action.hook.js.map +1 -0
- package/dist/functions/hook/resource-action.hook.d.ts +12 -0
- package/dist/functions/hook/resource-action.hook.js +49 -0
- package/dist/functions/hook/resource-action.hook.js.map +1 -0
- package/dist/index.d.ts +29 -28
- package/dist/index.js +9 -8
- package/dist/index.js.map +1 -1
- package/dist/main.d.ts +31 -0
- package/dist/main.js +111 -0
- package/dist/main.js.map +1 -0
- package/dist/models/app/app.interface.d.ts +1 -1
- package/dist/models/app/app.model.d.ts +5 -5
- package/dist/models/app/app.model.js +4 -11
- package/dist/models/app/app.model.js.map +1 -1
- package/dist/models/deployment/deployment.interface.d.ts +1 -1
- package/dist/models/deployment/deployment.model.d.ts +5 -3
- package/dist/models/deployment/deployment.model.js +5 -2
- package/dist/models/deployment/deployment.model.js.map +1 -1
- package/dist/models/environment/environment.interface.d.ts +1 -1
- package/dist/models/environment/environment.model.d.ts +5 -5
- package/dist/models/environment/environment.model.js +3 -3
- package/dist/models/environment/environment.model.js.map +1 -1
- package/dist/models/execution/execution.interface.d.ts +2 -2
- package/dist/models/execution/execution.model.d.ts +8 -9
- package/dist/models/execution/execution.model.js +53 -21
- package/dist/models/execution/execution.model.js.map +1 -1
- package/dist/models/image/image.interface.d.ts +1 -1
- package/dist/models/image/image.model.d.ts +5 -3
- package/dist/models/image/image.model.js +5 -6
- package/dist/models/image/image.model.js.map +1 -1
- package/dist/models/model-action.interface.d.ts +9 -0
- package/dist/models/model-action.interface.js +2 -0
- package/dist/models/model-action.interface.js.map +1 -0
- package/dist/models/model.abstract.d.ts +40 -14
- package/dist/models/model.abstract.js +167 -57
- package/dist/models/model.abstract.js.map +1 -1
- package/dist/models/model.interface.d.ts +4 -3
- package/dist/models/pipeline/pipeline.interface.d.ts +1 -1
- package/dist/models/pipeline/pipeline.model.d.ts +5 -5
- package/dist/models/pipeline/pipeline.model.js +4 -4
- package/dist/models/pipeline/pipeline.model.js.map +1 -1
- package/dist/models/region/region.interface.d.ts +1 -1
- package/dist/models/region/region.model.d.ts +7 -3
- package/dist/models/region/region.model.js +14 -1
- package/dist/models/region/region.model.js.map +1 -1
- package/dist/models/server/server.interface.d.ts +1 -3
- package/dist/models/server/server.model.d.ts +6 -6
- package/dist/models/server/server.model.js +7 -10
- package/dist/models/server/server.model.js.map +1 -1
- package/dist/models/service/service.interface.d.ts +1 -1
- package/dist/models/service/service.model.d.ts +4 -2
- package/dist/models/service/service.model.js +4 -1
- package/dist/models/service/service.model.js.map +1 -1
- package/dist/models/subnet/subnet.interface.d.ts +8 -0
- package/dist/models/subnet/subnet.interface.js +2 -0
- package/dist/models/subnet/subnet.interface.js.map +1 -0
- package/dist/models/subnet/subnet.model.d.ts +25 -0
- package/dist/models/subnet/subnet.model.js +98 -0
- package/dist/models/subnet/subnet.model.js.map +1 -0
- package/dist/modules/module.container.d.ts +25 -0
- package/dist/modules/module.container.js +122 -0
- package/dist/modules/module.container.js.map +1 -0
- package/dist/modules/module.interface.d.ts +3 -0
- package/dist/modules/module.interface.js.map +1 -0
- package/dist/modules/test-module.container.d.ts +28 -0
- package/dist/modules/test-module.container.js +67 -0
- package/dist/modules/test-module.container.js.map +1 -0
- package/dist/overlays/anchor.abstract.d.ts +4 -4
- package/dist/overlays/anchor.abstract.js +8 -11
- package/dist/overlays/anchor.abstract.js.map +1 -1
- package/dist/overlays/anchor.interface.d.ts +5 -2
- package/dist/overlays/overlay-data.repository.d.ts +7 -7
- package/dist/overlays/overlay-data.repository.js +19 -7
- package/dist/overlays/overlay-data.repository.js.map +1 -1
- package/dist/overlays/overlay.abstract.d.ts +15 -8
- package/dist/overlays/overlay.abstract.js +78 -12
- package/dist/overlays/overlay.abstract.js.map +1 -1
- package/dist/overlays/overlay.interface.d.ts +1 -1
- package/dist/overlays/overlay.service.d.ts +10 -6
- package/dist/overlays/overlay.service.js +19 -13
- package/dist/overlays/overlay.service.js.map +1 -1
- package/dist/resources/resource-action.interface.d.ts +2 -1
- package/dist/resources/resource-data.repository.d.ts +8 -8
- package/dist/resources/resource-data.repository.js +52 -34
- package/dist/resources/resource-data.repository.js.map +1 -1
- package/dist/resources/resource.abstract.d.ts +15 -12
- package/dist/resources/resource.abstract.js +34 -34
- package/dist/resources/resource.abstract.js.map +1 -1
- package/dist/resources/shared-resource.abstract.d.ts +1 -1
- package/dist/resources/shared-resource.abstract.js.map +1 -1
- package/dist/services/capture/capture.service.d.ts +13 -0
- package/dist/services/capture/capture.service.js +30 -0
- package/dist/services/capture/capture.service.js.map +1 -0
- package/dist/services/input/input.service.d.ts +13 -0
- package/dist/services/input/input.service.js +45 -0
- package/dist/services/input/input.service.js.map +1 -0
- package/dist/services/serialization/model/model-serialization.service.d.ts +9 -5
- package/dist/services/serialization/model/model-serialization.service.js +65 -44
- package/dist/services/serialization/model/model-serialization.service.js.map +1 -1
- package/dist/services/serialization/resource/resource-serialization.service.d.ts +8 -3
- package/dist/services/serialization/resource/resource-serialization.service.js +29 -11
- package/dist/services/serialization/resource/resource-serialization.service.js.map +1 -1
- package/dist/services/state-management/local.state-provider.d.ts +1 -1
- package/dist/services/state-management/local.state-provider.js +9 -1
- package/dist/services/state-management/local.state-provider.js.map +1 -1
- package/dist/services/state-management/state-management.service.d.ts +16 -1
- package/dist/services/state-management/state-management.service.js +52 -1
- package/dist/services/state-management/state-management.service.js.map +1 -1
- package/dist/services/state-management/test.state-provider.d.ts +7 -0
- package/dist/services/state-management/test.state-provider.js +13 -0
- package/dist/services/state-management/test.state-provider.js.map +1 -0
- package/dist/services/transaction/transaction.service.d.ts +18 -11
- package/dist/services/transaction/transaction.service.js +57 -40
- package/dist/services/transaction/transaction.service.js.map +1 -1
- package/dist/utilities/array/array.utility.d.ts +3 -0
- package/dist/utilities/array/array.utility.js +24 -0
- package/dist/utilities/array/array.utility.js.map +1 -0
- package/dist/utilities/cidr/cidr.utility.d.ts +7 -0
- package/dist/utilities/cidr/cidr.utility.js +48 -0
- package/dist/utilities/cidr/cidr.utility.js.map +1 -0
- package/dist/utilities/object/object.utility.d.ts +3 -0
- package/dist/utilities/object/object.utility.js +9 -0
- package/dist/utilities/object/object.utility.js.map +1 -0
- package/package.json +2 -1
- package/dist/functions/dependency/dependency.model.js.map +0 -1
- package/dist/functions/diff/diff-metadata.model.d.ts +0 -20
- package/dist/functions/diff/diff-metadata.model.js.map +0 -1
- package/dist/functions/diff/diff.model.js.map +0 -1
- package/dist/functions/module/module.abstract.d.ts +0 -12
- package/dist/functions/module/module.abstract.js +0 -39
- package/dist/functions/module/module.abstract.js.map +0 -1
- package/dist/functions/module/module.interface.d.ts +0 -4
- package/dist/functions/module/module.interface.js.map +0 -1
- package/dist/models/action.interface.d.ts +0 -9
- package/dist/models/action.interface.js +0 -2
- package/dist/models/action.interface.js.map +0 -1
- package/dist/models/support/support.interface.d.ts +0 -5
- package/dist/models/support/support.interface.js +0 -2
- package/dist/models/support/support.interface.js.map +0 -1
- package/dist/models/support/support.model.d.ts +0 -14
- package/dist/models/support/support.model.js +0 -52
- package/dist/models/support/support.model.js.map +0 -1
- /package/dist/{functions/module → modules}/module.interface.js +0 -0
|
@@ -1,16 +1,23 @@
|
|
|
1
|
-
import { ModelType, UnknownModel, UnknownOverlay } from '../app.type.js';
|
|
1
|
+
import { ModelType, type UnknownModel, type UnknownOverlay } from '../app.type.js';
|
|
2
|
+
import { Diff } from '../functions/diff/diff.js';
|
|
2
3
|
import { AModel } from '../models/model.abstract.js';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { IOverlay } from './overlay.interface.js';
|
|
4
|
+
import { type AAnchor } from './anchor.abstract.js';
|
|
5
|
+
import type { IOverlay } from './overlay.interface.js';
|
|
6
6
|
export declare abstract class AOverlay<T> extends AModel<IOverlay, T> {
|
|
7
|
-
abstract readonly MODEL_NAME: string;
|
|
8
|
-
readonly MODEL_TYPE: ModelType;
|
|
9
7
|
readonly overlayId: IOverlay['overlayId'];
|
|
10
8
|
readonly properties: IOverlay['properties'];
|
|
9
|
+
abstract readonly MODEL_NAME: string;
|
|
10
|
+
readonly MODEL_TYPE: ModelType;
|
|
11
11
|
protected constructor(overlayId: IOverlay['overlayId'], properties: IOverlay['properties'], anchors: AAnchor[]);
|
|
12
|
-
|
|
13
|
-
|
|
12
|
+
addAnchor(anchor: AAnchor): void;
|
|
13
|
+
diff(previous: T): Promise<Diff[]>;
|
|
14
|
+
diffAnchors(previous: T): Promise<Diff[]>;
|
|
15
|
+
diffProperties(previous: T): Promise<Diff[]>;
|
|
16
|
+
getAnchor(anchorId: string, parent: UnknownModel): AAnchor | undefined;
|
|
17
|
+
getAnchorIndex(anchorId: string, parent: UnknownModel): number;
|
|
18
|
+
remove(ignoreDirectRelationships?: boolean): void;
|
|
19
|
+
removeAnchor(anchor: AAnchor): void;
|
|
20
|
+
setContext(): string;
|
|
14
21
|
synth(): IOverlay;
|
|
15
22
|
static unSynth(deserializationClass: any, overlay: IOverlay, deReferenceContext: (context: string) => Promise<UnknownModel>): Promise<UnknownOverlay>;
|
|
16
23
|
}
|
|
@@ -1,31 +1,97 @@
|
|
|
1
1
|
import { ModelType } from '../app.type.js';
|
|
2
|
+
import { Diff, DiffAction } from '../functions/diff/diff.js';
|
|
3
|
+
import { DiffUtility } from '../functions/diff/diff.utility.js';
|
|
2
4
|
import { AModel } from '../models/model.abstract.js';
|
|
3
5
|
export class AOverlay extends AModel {
|
|
4
|
-
MODEL_TYPE = ModelType.OVERLAY;
|
|
5
6
|
overlayId;
|
|
6
|
-
properties
|
|
7
|
+
properties;
|
|
8
|
+
MODEL_TYPE = ModelType.OVERLAY;
|
|
7
9
|
constructor(overlayId, properties, anchors) {
|
|
8
10
|
super();
|
|
9
11
|
this.overlayId = overlayId;
|
|
10
|
-
|
|
11
|
-
this.properties[key] = properties[key];
|
|
12
|
-
}
|
|
12
|
+
this.properties = properties;
|
|
13
13
|
for (const anchor of anchors) {
|
|
14
|
-
this.
|
|
15
|
-
|
|
14
|
+
this.addAnchor(anchor);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
addAnchor(anchor) {
|
|
18
|
+
try {
|
|
19
|
+
super.addAnchor(anchor);
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
if (error.message !== 'Anchor already exists!') {
|
|
23
|
+
throw error;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
const { thisToThatDependency, thatToThisDependency } = this.addRelationship(anchor.getParent());
|
|
27
|
+
thisToThatDependency.addBehavior('overlayId', DiffAction.ADD, 'MODEL_NAME', DiffAction.ADD);
|
|
28
|
+
thisToThatDependency.addBehavior('overlayId', DiffAction.ADD, 'MODEL_NAME', DiffAction.UPDATE);
|
|
29
|
+
thatToThisDependency.addBehavior('MODEL_NAME', DiffAction.DELETE, 'overlayId', DiffAction.DELETE);
|
|
30
|
+
}
|
|
31
|
+
async diff(previous) {
|
|
32
|
+
const diffs = [];
|
|
33
|
+
const propertyDiffs = await this.diffProperties(previous);
|
|
34
|
+
diffs.push(...propertyDiffs);
|
|
35
|
+
const anchorDiffs = await this.diffAnchors(previous);
|
|
36
|
+
diffs.push(...anchorDiffs);
|
|
37
|
+
return diffs;
|
|
38
|
+
}
|
|
39
|
+
async diffAnchors(previous) {
|
|
40
|
+
const diffs = [];
|
|
41
|
+
const previousAnchors = previous.getAnchors();
|
|
42
|
+
for (const previousAnchor of previousAnchors) {
|
|
43
|
+
const currentAnchor = this.getAnchor(previousAnchor.anchorId, previousAnchor.getParent());
|
|
44
|
+
if (!currentAnchor) {
|
|
45
|
+
diffs.push(new Diff(this, DiffAction.DELETE, 'anchor', previousAnchor));
|
|
46
|
+
}
|
|
47
|
+
else if (!DiffUtility.isObjectDeepEquals(previousAnchor.properties, currentAnchor.properties)) {
|
|
48
|
+
diffs.push(new Diff(this, DiffAction.UPDATE, 'anchor', currentAnchor));
|
|
49
|
+
}
|
|
16
50
|
}
|
|
51
|
+
const currentAnchors = this.getAnchors();
|
|
52
|
+
for (const currentAnchor of currentAnchors) {
|
|
53
|
+
const previousAnchor = previous.getAnchor(currentAnchor.anchorId, currentAnchor.getParent());
|
|
54
|
+
if (!previousAnchor) {
|
|
55
|
+
diffs.push(new Diff(this, DiffAction.ADD, 'anchor', currentAnchor));
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return diffs;
|
|
59
|
+
}
|
|
60
|
+
async diffProperties(previous) {
|
|
61
|
+
return DiffUtility.diffObject(previous, this, 'properties');
|
|
17
62
|
}
|
|
18
|
-
|
|
19
|
-
return
|
|
63
|
+
getAnchor(anchorId, parent) {
|
|
64
|
+
return super.getAnchor(anchorId, parent);
|
|
65
|
+
}
|
|
66
|
+
getAnchorIndex(anchorId, parent) {
|
|
67
|
+
return super.getAnchorIndex(anchorId, parent);
|
|
68
|
+
}
|
|
69
|
+
remove(ignoreDirectRelationships = false) {
|
|
70
|
+
this.removeAllAnchors();
|
|
71
|
+
super.remove(ignoreDirectRelationships);
|
|
72
|
+
}
|
|
73
|
+
removeAnchor(anchor) {
|
|
74
|
+
const overlayParentDependencyIndex = this.getDependencies().findIndex((d) => d.to.getContext() === anchor.getParent().getContext());
|
|
75
|
+
if (overlayParentDependencyIndex > -1) {
|
|
76
|
+
this.removeDependency(overlayParentDependencyIndex);
|
|
77
|
+
}
|
|
78
|
+
const parentOverlayDependencyIndex = anchor
|
|
79
|
+
.getParent()
|
|
80
|
+
.getDependencies()
|
|
81
|
+
.findIndex((d) => d.to.getContext() === this.getContext());
|
|
82
|
+
if (parentOverlayDependencyIndex > -1) {
|
|
83
|
+
anchor.getParent().removeDependency(parentOverlayDependencyIndex);
|
|
84
|
+
}
|
|
85
|
+
super.removeAnchor(anchor);
|
|
20
86
|
}
|
|
21
|
-
|
|
87
|
+
setContext() {
|
|
22
88
|
return `${this.MODEL_NAME}=${this.overlayId}`;
|
|
23
89
|
}
|
|
24
90
|
synth() {
|
|
25
91
|
return {
|
|
26
|
-
anchors: this.
|
|
92
|
+
anchors: this.getAnchors().map((a) => a.synth()),
|
|
27
93
|
overlayId: this.overlayId,
|
|
28
|
-
properties:
|
|
94
|
+
properties: JSON.parse(JSON.stringify(this.properties)),
|
|
29
95
|
};
|
|
30
96
|
}
|
|
31
97
|
static async unSynth(deserializationClass, overlay, deReferenceContext) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay.abstract.js","sourceRoot":"","sources":["../../src/overlays/overlay.abstract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"overlay.abstract.js","sourceRoot":"","sources":["../../src/overlays/overlay.abstract.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
|
-
import { UnknownOverlay } from '../app.type.js';
|
|
1
|
+
import type { UnknownModel, UnknownOverlay } from '../app.type.js';
|
|
2
|
+
import { OverlayDataRepository } from './overlay-data.repository.js';
|
|
2
3
|
export declare class OverlayService {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
private readonly overlayDataRepository;
|
|
5
|
+
constructor(overlayDataRepository: OverlayDataRepository);
|
|
6
|
+
addOverlay(overlay: UnknownOverlay): void;
|
|
7
|
+
getOverlaysByAnchor(anchorId: string, parent: UnknownModel, excludeOverlayIds?: string[]): UnknownOverlay[];
|
|
8
|
+
getOverlayById(overlayId: string): UnknownOverlay | undefined;
|
|
9
|
+
getOverlaysByProperties(filters?: {
|
|
6
10
|
key: string;
|
|
7
11
|
value: any;
|
|
8
|
-
}[]):
|
|
9
|
-
removeOverlay(overlay: UnknownOverlay):
|
|
12
|
+
}[]): UnknownOverlay[];
|
|
13
|
+
removeOverlay(overlay: UnknownOverlay): void;
|
|
10
14
|
}
|
|
11
15
|
export declare class OverlayServiceFactory {
|
|
12
16
|
private static instance;
|
|
@@ -8,28 +8,34 @@ import { Container } from '../decorators/container.js';
|
|
|
8
8
|
import { Factory } from '../decorators/factory.decorator.js';
|
|
9
9
|
import { OverlayDataRepository } from './overlay-data.repository.js';
|
|
10
10
|
export class OverlayService {
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
overlayDataRepository
|
|
11
|
+
overlayDataRepository;
|
|
12
|
+
constructor(overlayDataRepository) {
|
|
13
|
+
this.overlayDataRepository = overlayDataRepository;
|
|
14
14
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
return overlayDataRepository.getById(overlayId);
|
|
15
|
+
addOverlay(overlay) {
|
|
16
|
+
this.overlayDataRepository.add(overlay);
|
|
18
17
|
}
|
|
19
|
-
|
|
20
|
-
const
|
|
21
|
-
return
|
|
18
|
+
getOverlaysByAnchor(anchorId, parent, excludeOverlayIds = []) {
|
|
19
|
+
const overlays = this.getOverlaysByProperties();
|
|
20
|
+
return overlays.filter((o) => !excludeOverlayIds.includes(o.overlayId) && o.getAnchor(anchorId, parent));
|
|
22
21
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
getOverlayById(overlayId) {
|
|
23
|
+
return this.overlayDataRepository.getById(overlayId);
|
|
24
|
+
}
|
|
25
|
+
getOverlaysByProperties(filters = []) {
|
|
26
|
+
return this.overlayDataRepository.getByProperties(filters);
|
|
27
|
+
}
|
|
28
|
+
removeOverlay(overlay) {
|
|
29
|
+
overlay.remove();
|
|
30
|
+
this.overlayDataRepository.remove(overlay);
|
|
26
31
|
}
|
|
27
32
|
}
|
|
28
33
|
let OverlayServiceFactory = class OverlayServiceFactory {
|
|
29
34
|
static instance;
|
|
30
35
|
static async create() {
|
|
36
|
+
const overlayDataRepository = await Container.get(OverlayDataRepository);
|
|
31
37
|
if (!this.instance) {
|
|
32
|
-
this.instance = new OverlayService();
|
|
38
|
+
this.instance = new OverlayService(overlayDataRepository);
|
|
33
39
|
}
|
|
34
40
|
return this.instance;
|
|
35
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"overlay.service.js","sourceRoot":"","sources":["../../src/overlays/overlay.service.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,MAAM,OAAO,cAAc;
|
|
1
|
+
{"version":3,"file":"overlay.service.js","sourceRoot":"","sources":["../../src/overlays/overlay.service.ts"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,oCAAoC,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,MAAM,OAAO,cAAc;IACI;IAA7B,YAA6B,qBAA4C;QAA5C,0BAAqB,GAArB,qBAAqB,CAAuB;IAAG,CAAC;IAE7E,UAAU,CAAC,OAAuB;QAChC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;IAED,mBAAmB,CAAC,QAAgB,EAAE,MAAoB,EAAE,oBAA8B,EAAE;QAC1F,MAAM,QAAQ,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAChD,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC;IAC3G,CAAC;IAED,cAAc,CAAC,SAAiB;QAC9B,OAAO,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACvD,CAAC;IAED,uBAAuB,CAAC,UAAyC,EAAE;QACjE,OAAO,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IAC7D,CAAC;IAED,aAAa,CAAC,OAAuB;QACnC,OAAO,CAAC,MAAM,EAAE,CAAC;QACjB,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;CACF;AAGM,IAAM,qBAAqB,GAA3B,MAAM,qBAAqB;IACxB,MAAM,CAAC,QAAQ,CAAiB;IAExC,MAAM,CAAC,KAAK,CAAC,MAAM;QACjB,MAAM,qBAAqB,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACzE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,cAAc,CAAC,qBAAqB,CAAC,CAAC;QAC5D,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;CACF,CAAA;AAVY,qBAAqB;IADjC,OAAO,CAAiB,cAAc,CAAC;GAC3B,qBAAqB,CAUjC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import { Diff } from '../functions/diff/diff.
|
|
1
|
+
import type { Diff } from '../functions/diff/diff.js';
|
|
2
2
|
export interface IResourceAction {
|
|
3
3
|
readonly ACTION_NAME: string;
|
|
4
4
|
filter(diff: Diff): boolean;
|
|
5
5
|
handle(diff: Diff): Promise<void>;
|
|
6
|
+
mock(capture?: object, diff?: Diff): Promise<void>;
|
|
6
7
|
}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { UnknownResource } from '../app.type.js';
|
|
2
|
-
import { Diff } from '../functions/diff/diff.
|
|
3
|
-
import { IResource } from './resource.interface.js';
|
|
1
|
+
import { type UnknownResource } from '../app.type.js';
|
|
2
|
+
import { Diff } from '../functions/diff/diff.js';
|
|
3
|
+
import type { IResource } from './resource.interface.js';
|
|
4
4
|
export declare class ResourceDataRepository {
|
|
5
|
-
private
|
|
6
|
-
private
|
|
7
|
-
constructor(
|
|
8
|
-
private _diffResources;
|
|
5
|
+
private oldResources;
|
|
6
|
+
private newResources;
|
|
7
|
+
constructor(oldResources?: UnknownResource[], newResources?: UnknownResource[]);
|
|
9
8
|
add(resource: UnknownResource): void;
|
|
10
9
|
diff(): Promise<Diff[]>;
|
|
11
10
|
getById(resourceId: IResource['resourceId']): UnknownResource | undefined;
|
|
@@ -13,8 +12,9 @@ export declare class ResourceDataRepository {
|
|
|
13
12
|
key: string;
|
|
14
13
|
value: any;
|
|
15
14
|
}[]): UnknownResource[];
|
|
15
|
+
remove(resource: UnknownResource): void;
|
|
16
16
|
}
|
|
17
17
|
export declare class ResourceDataRepositoryFactory {
|
|
18
18
|
private static instance;
|
|
19
|
-
static create(forceNew: boolean,
|
|
19
|
+
static create(forceNew: boolean, oldResources: UnknownResource[], newResources: UnknownResource[]): Promise<ResourceDataRepository>;
|
|
20
20
|
}
|
|
@@ -6,40 +6,15 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { ModelType } from '../app.type.js';
|
|
8
8
|
import { Factory } from '../decorators/factory.decorator.js';
|
|
9
|
-
import { Diff, DiffAction } from '../functions/diff/diff.
|
|
9
|
+
import { Diff, DiffAction } from '../functions/diff/diff.js';
|
|
10
10
|
export class ResourceDataRepository {
|
|
11
|
-
newResources;
|
|
12
11
|
oldResources;
|
|
13
|
-
|
|
14
|
-
|
|
12
|
+
newResources;
|
|
13
|
+
constructor(oldResources = [], newResources = []) {
|
|
15
14
|
this.oldResources = oldResources;
|
|
15
|
+
this.newResources = newResources;
|
|
16
16
|
Object.freeze(this.oldResources);
|
|
17
17
|
}
|
|
18
|
-
async _diffResources(newResources, oldResources) {
|
|
19
|
-
const diffs = [];
|
|
20
|
-
for (const oldResourceId in oldResources) {
|
|
21
|
-
if (!newResources[oldResourceId]) {
|
|
22
|
-
diffs.push(new Diff(oldResources[oldResourceId], DiffAction.DELETE, 'resourceId', oldResourceId));
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
const rDiff = await newResources[oldResourceId].diff(oldResources[oldResourceId]);
|
|
26
|
-
diffs.push(...rDiff);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
for (const newResourceId in newResources) {
|
|
30
|
-
if (!oldResources[newResourceId]) {
|
|
31
|
-
const newResource = newResources[newResourceId];
|
|
32
|
-
if (newResource.MODEL_TYPE === 'shared-resource' || newResource.getSharedResource() !== undefined) {
|
|
33
|
-
const rDiff = await newResource.diff();
|
|
34
|
-
diffs.push(...rDiff);
|
|
35
|
-
}
|
|
36
|
-
else {
|
|
37
|
-
diffs.push(new Diff(newResource, DiffAction.ADD, 'resourceId', newResource.resourceId));
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
return diffs;
|
|
42
|
-
}
|
|
43
18
|
add(resource) {
|
|
44
19
|
if (resource.MODEL_TYPE !== ModelType.RESOURCE && resource.MODEL_TYPE !== ModelType.SHARED_RESOURCE) {
|
|
45
20
|
throw new Error('Adding non-resource model!');
|
|
@@ -53,9 +28,36 @@ export class ResourceDataRepository {
|
|
|
53
28
|
}
|
|
54
29
|
}
|
|
55
30
|
async diff() {
|
|
56
|
-
const newResources = this.newResources.reduce((accumulator, current) => ({ ...accumulator, [current.resourceId]: current }), {});
|
|
57
31
|
const oldResources = this.oldResources.reduce((accumulator, current) => ({ ...accumulator, [current.resourceId]: current }), {});
|
|
58
|
-
|
|
32
|
+
const newResources = this.newResources.reduce((accumulator, current) => ({ ...accumulator, [current.resourceId]: current }), {});
|
|
33
|
+
const diffs = [];
|
|
34
|
+
for (const oldResourceId of Object.keys(oldResources)) {
|
|
35
|
+
if (!newResources[oldResourceId] || newResources[oldResourceId].isMarkedDeleted()) {
|
|
36
|
+
diffs.push(new Diff(oldResources[oldResourceId], DiffAction.DELETE, 'resourceId', oldResourceId));
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
const rDiff = await newResources[oldResourceId].diff(oldResources[oldResourceId]);
|
|
40
|
+
diffs.push(...rDiff);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
for (const newResourceId of Object.keys(newResources)) {
|
|
44
|
+
if (oldResources[newResourceId]) {
|
|
45
|
+
continue;
|
|
46
|
+
}
|
|
47
|
+
const newResource = newResources[newResourceId];
|
|
48
|
+
if (newResource.MODEL_TYPE === 'shared-resource') {
|
|
49
|
+
continue;
|
|
50
|
+
}
|
|
51
|
+
const sharedResource = newResource.getSharedResource();
|
|
52
|
+
if (sharedResource !== undefined) {
|
|
53
|
+
const rDiff = await newResource.diff(sharedResource);
|
|
54
|
+
diffs.push(...rDiff);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
diffs.push(new Diff(newResource, DiffAction.ADD, 'resourceId', newResource.resourceId));
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return diffs;
|
|
59
61
|
}
|
|
60
62
|
getById(resourceId) {
|
|
61
63
|
return this.newResources.find((r) => r.resourceId === resourceId);
|
|
@@ -63,12 +65,28 @@ export class ResourceDataRepository {
|
|
|
63
65
|
getByProperties(filters = []) {
|
|
64
66
|
return this.newResources.filter((r) => filters.every((c) => r.properties[c.key] === c.value));
|
|
65
67
|
}
|
|
68
|
+
remove(resource) {
|
|
69
|
+
if (resource.MODEL_TYPE !== ModelType.RESOURCE && resource.MODEL_TYPE !== ModelType.SHARED_RESOURCE) {
|
|
70
|
+
throw new Error('Removing non-resource model!');
|
|
71
|
+
}
|
|
72
|
+
if (!resource.isMarkedDeleted()) {
|
|
73
|
+
resource.remove();
|
|
74
|
+
}
|
|
75
|
+
const rIndex = this.newResources.findIndex((r) => r.resourceId === resource.resourceId);
|
|
76
|
+
if (rIndex > -1) {
|
|
77
|
+
this.newResources.splice(rIndex, 1);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
66
80
|
}
|
|
67
81
|
let ResourceDataRepositoryFactory = class ResourceDataRepositoryFactory {
|
|
68
82
|
static instance;
|
|
69
|
-
static async create(forceNew,
|
|
70
|
-
if (
|
|
71
|
-
this.instance = new ResourceDataRepository(
|
|
83
|
+
static async create(forceNew, oldResources, newResources) {
|
|
84
|
+
if (!this.instance) {
|
|
85
|
+
this.instance = new ResourceDataRepository(oldResources, newResources);
|
|
86
|
+
}
|
|
87
|
+
if (forceNew) {
|
|
88
|
+
const newInstance = new ResourceDataRepository(oldResources, newResources);
|
|
89
|
+
Object.keys(this.instance).forEach((key) => (this.instance[key] = newInstance[key]));
|
|
72
90
|
}
|
|
73
91
|
return this.instance;
|
|
74
92
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-data.repository.js","sourceRoot":"","sources":["../../src/resources/resource-data.repository.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"resource-data.repository.js","sourceRoot":"","sources":["../../src/resources/resource-data.repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,22 +1,25 @@
|
|
|
1
|
-
import { ModelType, UnknownResource } from '../app.type.js';
|
|
2
|
-
import {
|
|
1
|
+
import { ModelType, type UnknownResource } from '../app.type.js';
|
|
2
|
+
import { type Dependency } from '../functions/dependency/dependency.js';
|
|
3
|
+
import { Diff } from '../functions/diff/diff.js';
|
|
3
4
|
import { AModel } from '../models/model.abstract.js';
|
|
4
|
-
import { IResource } from './resource.interface.js';
|
|
5
|
-
import { ASharedResource } from './shared-resource.abstract.js';
|
|
5
|
+
import type { IResource } from './resource.interface.js';
|
|
6
|
+
import type { ASharedResource } from './shared-resource.abstract.js';
|
|
6
7
|
export declare abstract class AResource<T> extends AModel<IResource, T> {
|
|
8
|
+
readonly resourceId: IResource['resourceId'];
|
|
9
|
+
readonly properties: IResource['properties'];
|
|
7
10
|
abstract readonly MODEL_NAME: string;
|
|
8
11
|
readonly MODEL_TYPE: ModelType;
|
|
9
|
-
private _deleteMarker;
|
|
10
|
-
readonly properties: IResource['properties'];
|
|
11
|
-
readonly resourceId: IResource['resourceId'];
|
|
12
12
|
readonly response: IResource['response'];
|
|
13
13
|
protected constructor(resourceId: IResource['resourceId'], properties: IResource['properties'], parents: UnknownResource[]);
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
addAnchor(): void;
|
|
15
|
+
addRelationship(): {
|
|
16
|
+
thatToThisDependency: Dependency;
|
|
17
|
+
thisToThatDependency: Dependency;
|
|
18
|
+
};
|
|
19
|
+
diff(previous: T | ASharedResource<T>): Promise<Diff[]>;
|
|
20
|
+
diffProperties(previous: T | ASharedResource<T>): Promise<Diff[]>;
|
|
16
21
|
getSharedResource(): ASharedResource<T> | undefined;
|
|
17
|
-
|
|
18
|
-
markDeleted(): void;
|
|
19
|
-
remove(): void;
|
|
22
|
+
setContext(): string;
|
|
20
23
|
synth(): IResource;
|
|
21
24
|
static unSynth(deserializationClass: any, resource: IResource, parentResourceIds: string[], deReferenceResource: (resourceId: string) => Promise<UnknownResource>): Promise<UnknownResource>;
|
|
22
25
|
}
|
|
@@ -1,71 +1,71 @@
|
|
|
1
1
|
import { ModelType } from '../app.type.js';
|
|
2
|
-
import { Diff, DiffAction } from '../functions/diff/diff.
|
|
2
|
+
import { Diff, DiffAction } from '../functions/diff/diff.js';
|
|
3
3
|
import { DiffUtility } from '../functions/diff/diff.utility.js';
|
|
4
4
|
import { AModel } from '../models/model.abstract.js';
|
|
5
5
|
export class AResource extends AModel {
|
|
6
|
-
MODEL_TYPE = ModelType.RESOURCE;
|
|
7
|
-
_deleteMarker = false;
|
|
8
|
-
properties = {};
|
|
9
6
|
resourceId;
|
|
7
|
+
properties;
|
|
8
|
+
MODEL_TYPE = ModelType.RESOURCE;
|
|
10
9
|
response = {};
|
|
11
10
|
constructor(resourceId, properties, parents) {
|
|
12
11
|
super();
|
|
13
12
|
this.resourceId = resourceId;
|
|
14
|
-
|
|
15
|
-
this.properties[key] = properties[key];
|
|
16
|
-
}
|
|
13
|
+
this.properties = properties;
|
|
17
14
|
for (const parent of parents) {
|
|
18
15
|
parent.addChild('resourceId', this, 'resourceId');
|
|
19
16
|
}
|
|
20
17
|
}
|
|
18
|
+
addAnchor() {
|
|
19
|
+
throw new Error('Anchors are not supported in resources!');
|
|
20
|
+
}
|
|
21
|
+
addRelationship() {
|
|
22
|
+
throw new Error('Relationships are not supported in resources!');
|
|
23
|
+
}
|
|
21
24
|
async diff(previous) {
|
|
22
25
|
const diffs = [];
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
+
const propertyDiffs = await this.diffProperties(previous);
|
|
27
|
+
diffs.push(...propertyDiffs);
|
|
28
|
+
const previousParents = Object.values(previous.getParents())
|
|
29
|
+
.flat()
|
|
30
|
+
.map((d) => d.to);
|
|
31
|
+
const currentParents = Object.values(this.getParents())
|
|
32
|
+
.flat()
|
|
33
|
+
.map((d) => d.to);
|
|
34
|
+
const deletedParents = previousParents.filter((p) => currentParents.findIndex((c) => c.getContext() === p.getContext()) === -1);
|
|
35
|
+
for (const parent of deletedParents) {
|
|
36
|
+
diffs.push(new Diff(this, DiffAction.DELETE, 'parent', parent));
|
|
26
37
|
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
diffs.push(new Diff(this, DiffAction.ADD, 'resourceId', this.resourceId));
|
|
38
|
+
const newParents = currentParents.filter((c) => previousParents.findIndex((p) => p.getContext() === c.getContext()) === -1);
|
|
39
|
+
for (const parent of newParents) {
|
|
40
|
+
diffs.push(new Diff(this, DiffAction.ADD, 'parent', parent));
|
|
34
41
|
}
|
|
35
42
|
return diffs;
|
|
36
43
|
}
|
|
37
|
-
|
|
38
|
-
return
|
|
44
|
+
async diffProperties(previous) {
|
|
45
|
+
return DiffUtility.diffObject(previous, this, 'properties');
|
|
39
46
|
}
|
|
40
47
|
getSharedResource() {
|
|
41
48
|
const sameModelDependencies = this.getChildren(this.MODEL_NAME)[this.MODEL_NAME];
|
|
42
49
|
const sharedResourceDependency = sameModelDependencies?.find((d) => d.to.MODEL_TYPE === ModelType.SHARED_RESOURCE);
|
|
43
50
|
return sharedResourceDependency?.to;
|
|
44
51
|
}
|
|
45
|
-
|
|
46
|
-
return this.
|
|
47
|
-
}
|
|
48
|
-
markDeleted() {
|
|
49
|
-
super.remove();
|
|
50
|
-
this._deleteMarker = true;
|
|
51
|
-
}
|
|
52
|
-
remove() {
|
|
53
|
-
throw new Error('Cannot use remove() on resources! Use a delete marker instead');
|
|
52
|
+
setContext() {
|
|
53
|
+
return `${this.MODEL_NAME}=${this.resourceId}`;
|
|
54
54
|
}
|
|
55
55
|
synth() {
|
|
56
56
|
return {
|
|
57
|
-
properties:
|
|
57
|
+
properties: JSON.parse(JSON.stringify(this.properties)),
|
|
58
58
|
resourceId: this.resourceId,
|
|
59
|
-
response:
|
|
59
|
+
response: JSON.parse(JSON.stringify(this.response)),
|
|
60
60
|
};
|
|
61
61
|
}
|
|
62
62
|
static async unSynth(deserializationClass, resource, parentResourceIds, deReferenceResource) {
|
|
63
63
|
const parents = await Promise.all(parentResourceIds.map((p) => deReferenceResource(p)));
|
|
64
|
-
const
|
|
65
|
-
for (const key
|
|
66
|
-
|
|
64
|
+
const newResource = new deserializationClass(resource.resourceId, resource.properties, parents);
|
|
65
|
+
for (const key of Object.keys(resource.response)) {
|
|
66
|
+
newResource.response[key] = resource.response[key];
|
|
67
67
|
}
|
|
68
|
-
return
|
|
68
|
+
return newResource;
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
71
|
//# sourceMappingURL=resource.abstract.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource.abstract.js","sourceRoot":"","sources":["../../src/resources/resource.abstract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"resource.abstract.js","sourceRoot":"","sources":["../../src/resources/resource.abstract.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ModelType } from '../app.type.js';
|
|
2
|
-
import { Diff } from '../functions/diff/diff.
|
|
2
|
+
import type { Diff } from '../functions/diff/diff.js';
|
|
3
3
|
import { AResource } from './resource.abstract.js';
|
|
4
4
|
export declare abstract class ASharedResource<T> extends AResource<T> {
|
|
5
5
|
readonly MODEL_TYPE: ModelType;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared-resource.abstract.js","sourceRoot":"","sources":["../../src/resources/shared-resource.abstract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,MAAM,OAAgB,eAAmB,SAAQ,SAAY;IACzC,UAAU,GAAc,SAAS,CAAC,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"shared-resource.abstract.js","sourceRoot":"","sources":["../../src/resources/shared-resource.abstract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,MAAM,OAAgB,eAAmB,SAAQ,SAAY;IACzC,UAAU,GAAc,SAAS,CAAC,eAAe,CAAC;IAE3D,KAAK,CAAC,IAAI;QACjB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,qBAAqB,CAAC,OAAgE;QACpF,MAAM,OAAO,GAAmB,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7D,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,CAAC,CAAC,EAAkB,CAAC;YACtC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEQ,iBAAiB;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,sBAA0C;QAC9C,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACpE,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC,sBAAsB,CAAC,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAEvF,KAAK,MAAM,GAAG,IAAI,sBAAsB,CAAC,UAAU,EAAE,CAAC;YACpD,IAAI,sBAAsB,CAAC,UAAU,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;gBACvF,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,sBAAsB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,sBAAsB,CAAC,QAAQ,EAAE,CAAC;YAClD,IAAI,sBAAsB,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACnF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,sBAAsB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;QAED,MAAM,yCAAyC,GAAG,oBAAoB;aACnE,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;aACjE,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACtB,KAAK,MAAM,MAAM,IAAI,yCAAyC,EAAE,CAAC;YAC/D,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;QACpD,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|