@smarterplan/ngx-smarterplan-core 1.2.39 → 1.2.45
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 +24 -24
- package/esm2020/lib/components/csv-export/csv-export.component.mjs +59 -59
- package/esm2020/lib/components/loader/loader.component.mjs +23 -23
- package/esm2020/lib/components/menu-bar/avatar/avatar.component.mjs +80 -80
- package/esm2020/lib/components/menu-bar/menu-bar.component.mjs +99 -99
- package/esm2020/lib/components/menu-bar/navigation-bar/navigation-bar.component.mjs +384 -384
- package/esm2020/lib/components/menu-bar/range-date-picker/range-date-picker.component.mjs +147 -147
- package/esm2020/lib/components/modal-switch-visit/modal-switch-visit.component.mjs +40 -40
- package/esm2020/lib/components/search-bar/search-bar.component.mjs +63 -63
- package/esm2020/lib/components/support-modal/support-modal.component.mjs +66 -66
- package/esm2020/lib/config.mjs +4 -4
- package/esm2020/lib/helpers.service.mjs +470 -470
- package/esm2020/lib/matterport-extensions/hsl-loader/HlsLoader.mjs +69 -69
- package/esm2020/lib/matterport-extensions/nest-thermostat/CanvasImage.mjs +51 -51
- package/esm2020/lib/matterport-extensions/nest-thermostat/CanvasRenderer.mjs +61 -61
- package/esm2020/lib/matterport-extensions/nest-thermostat/NestThermostat.mjs +158 -158
- package/esm2020/lib/matterport-extensions/nest-thermostat/PlaneRenderer.mjs +85 -85
- package/esm2020/lib/matterport-extensions/scene-component/SceneComponent.mjs +128 -128
- package/esm2020/lib/matterport-extensions/security-camera/SecurityCamera.mjs +249 -249
- package/esm2020/lib/matterport-extensions/tv-player/TvPlayer.mjs +98 -98
- package/esm2020/lib/matterport-extensions/video-renderer/VideoRenderer.mjs +64 -64
- package/esm2020/lib/matterport-extensions/view-frustum-mesh/ViewFrustumMesh.mjs +221 -221
- package/esm2020/lib/mattertagData.mjs +165 -165
- package/esm2020/lib/ngx-smarterplan-core.module.mjs +122 -122
- package/esm2020/lib/ngx-smarterplan-core.service.mjs +14 -14
- package/esm2020/lib/pipes/duration-to-string.pipe.mjs +66 -66
- package/esm2020/lib/pipes/format-date-number-to-digits.pipe.mjs +30 -30
- package/esm2020/lib/pipes/hashtag-from-id.pipe.mjs +26 -26
- package/esm2020/lib/pipes/safe-url.pipe.mjs +20 -20
- package/esm2020/lib/pipes/time-date-to-local-string.pipe.mjs +104 -104
- package/esm2020/lib/pipes/username-from-id.pipe.mjs +29 -29
- package/esm2020/lib/services/amplify-cache.service.mjs +72 -72
- package/esm2020/lib/services/base-tab.service.mjs +24 -24
- package/esm2020/lib/services/baseVisibility.service.mjs +18 -18
- package/esm2020/lib/services/content.service.mjs +135 -135
- package/esm2020/lib/services/filter.service.mjs +599 -599
- package/esm2020/lib/services/intervention.service.mjs +236 -236
- package/esm2020/lib/services/locale.service.mjs +45 -45
- package/esm2020/lib/services/matterport-import.service.mjs +340 -340
- package/esm2020/lib/services/matterport.service.mjs +1587 -1587
- package/esm2020/lib/services/models/affectation.service.mjs +60 -60
- package/esm2020/lib/services/models/base-object.service.mjs +70 -70
- package/esm2020/lib/services/models/capture.service.mjs +34 -34
- package/esm2020/lib/services/models/comment.service.mjs +98 -98
- package/esm2020/lib/services/models/domain.service.mjs +78 -78
- package/esm2020/lib/services/models/equipment.service.mjs +683 -683
- package/esm2020/lib/services/models/event.service.mjs +128 -128
- package/esm2020/lib/services/models/feature.service.mjs +380 -364
- package/esm2020/lib/services/models/hashtag.service.mjs +38 -38
- package/esm2020/lib/services/models/layer.service.mjs +33 -33
- package/esm2020/lib/services/models/measurement.service.mjs +199 -199
- package/esm2020/lib/services/models/mission.service.mjs +206 -206
- package/esm2020/lib/services/models/navigation.service.mjs +92 -92
- package/esm2020/lib/services/models/node.service.mjs +31 -31
- package/esm2020/lib/services/models/object3D.service.mjs +364 -364
- package/esm2020/lib/services/models/operation.service.mjs +59 -59
- package/esm2020/lib/services/models/organisation.service.mjs +73 -73
- package/esm2020/lib/services/models/plan.service.mjs +799 -799
- package/esm2020/lib/services/models/poi.service.mjs +103 -103
- package/esm2020/lib/services/models/profile.service.mjs +58 -58
- package/esm2020/lib/services/models/property.service.mjs +44 -44
- package/esm2020/lib/services/models/space.service.mjs +204 -204
- package/esm2020/lib/services/models/template.service.mjs +41 -41
- package/esm2020/lib/services/models/ticket.service.mjs +526 -526
- package/esm2020/lib/services/models/visit.service.mjs +130 -130
- package/esm2020/lib/services/models/zone.service.mjs +225 -225
- package/esm2020/lib/services/navigator.service.mjs +212 -212
- package/esm2020/lib/services/s3.service.mjs +137 -137
- package/esm2020/lib/services/search.service.mjs +124 -124
- package/esm2020/lib/services/support.service.mjs +42 -42
- package/esm2020/lib/services/tag.service.mjs +111 -111
- package/esm2020/lib/services/user.service.mjs +501 -501
- package/esm2020/lib/services/validators.service.mjs +50 -50
- package/esm2020/lib/services/viewer.service.mjs +389 -389
- package/esm2020/lib/services/zone-drawer.service.mjs +76 -76
- package/esm2020/lib/services/zoneChange.service.mjs +30 -30
- package/esm2020/lib/types.service.mjs +311 -310
- package/esm2020/lib/validators/email.directive.mjs +7 -7
- package/esm2020/lib/validators/no-empty.directive.mjs +12 -12
- package/esm2020/lib/validators/number.directive.mjs +12 -12
- package/esm2020/lib/validators/text.directive.mjs +12 -12
- package/esm2020/public-api.mjs +72 -72
- package/esm2020/smarterplan-ngx-smarterplan-core.mjs +4 -4
- package/fesm2015/smarterplan-ngx-smarterplan-core.mjs +13009 -12992
- package/fesm2015/smarterplan-ngx-smarterplan-core.mjs.map +1 -1
- package/fesm2020/smarterplan-ngx-smarterplan-core.mjs +12258 -12241
- package/fesm2020/smarterplan-ngx-smarterplan-core.mjs.map +1 -1
- package/lib/components/csv-export/csv-export.component.d.ts +18 -18
- package/lib/components/loader/loader.component.d.ts +10 -10
- package/lib/components/menu-bar/avatar/avatar.component.d.ts +21 -21
- package/lib/components/menu-bar/menu-bar.component.d.ts +38 -38
- package/lib/components/menu-bar/navigation-bar/navigation-bar.component.d.ts +73 -73
- package/lib/components/menu-bar/range-date-picker/range-date-picker.component.d.ts +35 -35
- package/lib/components/modal-switch-visit/modal-switch-visit.component.d.ts +22 -22
- package/lib/components/search-bar/search-bar.component.d.ts +16 -16
- package/lib/components/support-modal/support-modal.component.d.ts +26 -26
- package/lib/config.d.ts +22 -22
- package/lib/helpers.service.d.ts +79 -79
- package/lib/matterport-extensions/hsl-loader/HlsLoader.d.ts +26 -26
- package/lib/matterport-extensions/nest-thermostat/CanvasImage.d.ts +31 -31
- package/lib/matterport-extensions/nest-thermostat/CanvasRenderer.d.ts +37 -37
- package/lib/matterport-extensions/nest-thermostat/NestThermostat.d.ts +42 -42
- package/lib/matterport-extensions/nest-thermostat/PlaneRenderer.d.ts +46 -46
- package/lib/matterport-extensions/scene-component/SceneComponent.d.ts +388 -388
- package/lib/matterport-extensions/security-camera/SecurityCamera.d.ts +47 -47
- package/lib/matterport-extensions/tv-player/TvPlayer.d.ts +26 -26
- package/lib/matterport-extensions/video-renderer/VideoRenderer.d.ts +26 -26
- package/lib/matterport-extensions/view-frustum-mesh/ViewFrustumMesh.d.ts +43 -43
- package/lib/mattertagData.d.ts +70 -70
- package/lib/ngx-smarterplan-core.module.d.ts +29 -29
- package/lib/ngx-smarterplan-core.service.d.ts +6 -6
- package/lib/pipes/duration-to-string.pipe.d.ts +12 -12
- package/lib/pipes/format-date-number-to-digits.pipe.d.ts +10 -10
- package/lib/pipes/hashtag-from-id.pipe.d.ts +10 -10
- package/lib/pipes/safe-url.pipe.d.ts +10 -10
- package/lib/pipes/time-date-to-local-string.pipe.d.ts +16 -16
- package/lib/pipes/username-from-id.pipe.d.ts +11 -11
- package/lib/services/amplify-cache.service.d.ts +37 -37
- package/lib/services/base-tab.service.d.ts +10 -10
- package/lib/services/baseVisibility.service.d.ts +9 -9
- package/lib/services/content.service.d.ts +28 -28
- package/lib/services/filter.service.d.ts +60 -60
- package/lib/services/intervention.service.d.ts +25 -25
- package/lib/services/locale.service.d.ts +23 -23
- package/lib/services/matterport-import.service.d.ts +53 -53
- package/lib/services/matterport.service.d.ts +336 -336
- package/lib/services/models/affectation.service.d.ts +14 -14
- package/lib/services/models/base-object.service.d.ts +20 -20
- package/lib/services/models/capture.service.d.ts +13 -13
- package/lib/services/models/comment.service.d.ts +26 -26
- package/lib/services/models/domain.service.d.ts +19 -19
- package/lib/services/models/equipment.service.d.ts +93 -93
- package/lib/services/models/event.service.d.ts +43 -43
- package/lib/services/models/feature.service.d.ts +75 -74
- package/lib/services/models/hashtag.service.d.ts +13 -13
- package/lib/services/models/layer.service.d.ts +11 -11
- package/lib/services/models/measurement.service.d.ts +51 -51
- package/lib/services/models/mission.service.d.ts +39 -39
- package/lib/services/models/navigation.service.d.ts +29 -29
- package/lib/services/models/node.service.d.ts +12 -12
- package/lib/services/models/object3D.service.d.ts +57 -57
- package/lib/services/models/operation.service.d.ts +15 -15
- package/lib/services/models/organisation.service.d.ts +19 -19
- package/lib/services/models/plan.service.d.ts +133 -133
- package/lib/services/models/poi.service.d.ts +25 -25
- package/lib/services/models/profile.service.d.ts +16 -16
- package/lib/services/models/property.service.d.ts +13 -13
- package/lib/services/models/space.service.d.ts +46 -46
- package/lib/services/models/template.service.d.ts +15 -15
- package/lib/services/models/ticket.service.d.ts +93 -93
- package/lib/services/models/visit.service.d.ts +24 -24
- package/lib/services/models/zone.service.d.ts +50 -50
- package/lib/services/navigator.service.d.ts +61 -61
- package/lib/services/s3.service.d.ts +14 -14
- package/lib/services/search.service.d.ts +20 -20
- package/lib/services/support.service.d.ts +17 -17
- package/lib/services/tag.service.d.ts +29 -29
- package/lib/services/user.service.d.ts +118 -118
- package/lib/services/validators.service.d.ts +18 -18
- package/lib/services/viewer.service.d.ts +110 -110
- package/lib/services/zone-drawer.service.d.ts +7 -7
- package/lib/services/zoneChange.service.d.ts +17 -17
- package/lib/types.service.d.ts +842 -840
- package/lib/validators/email.directive.d.ts +2 -2
- package/lib/validators/no-empty.directive.d.ts +2 -2
- package/lib/validators/number.directive.d.ts +2 -2
- package/lib/validators/text.directive.d.ts +2 -2
- package/package.json +1 -1
- package/public-api.d.ts +64 -64
- package/smarterplan-ngx-smarterplan-core.d.ts +5 -5
|
@@ -1,59 +1,59 @@
|
|
|
1
|
-
import { Inject, Injectable } from "@angular/core";
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class OperationService {
|
|
4
|
-
constructor(apiInjected) {
|
|
5
|
-
this.API = apiInjected;
|
|
6
|
-
}
|
|
7
|
-
async getOperationsByTicketID(id) {
|
|
8
|
-
return this.API.__proto__.OperationsByTicket(id).then((res) => res.items);
|
|
9
|
-
}
|
|
10
|
-
async getOperationsByEquipmentID(id) {
|
|
11
|
-
return this.API.__proto__.OperationsByEquipment(id).then((res) => res.items);
|
|
12
|
-
}
|
|
13
|
-
async getTicketsByEquipmentID(id) {
|
|
14
|
-
const operations = await this.getOperationsByEquipmentID(id);
|
|
15
|
-
const tickets = operations.map((operation) => operation.ticket);
|
|
16
|
-
return tickets;
|
|
17
|
-
}
|
|
18
|
-
async deleteOperationsForEquipment(equipID) {
|
|
19
|
-
const deleted = [];
|
|
20
|
-
await this.getOperationsByEquipmentID(equipID)
|
|
21
|
-
.then(async (operations) => {
|
|
22
|
-
if (operations.length > 0) {
|
|
23
|
-
await Promise.all(operations.map(async (op) => {
|
|
24
|
-
const deletedOp = await this.API.__proto__.DeleteOperation({ id: op.id });
|
|
25
|
-
deleted.push(deletedOp);
|
|
26
|
-
}));
|
|
27
|
-
}
|
|
28
|
-
});
|
|
29
|
-
return deleted;
|
|
30
|
-
}
|
|
31
|
-
async deleteOperationsForTicket(ticketID) {
|
|
32
|
-
await this.getOperationsByTicketID(ticketID)
|
|
33
|
-
.then(async (operations) => {
|
|
34
|
-
if (operations.length > 0) {
|
|
35
|
-
await Promise.all(operations.map(async (op) => {
|
|
36
|
-
await this.API.__proto__.DeleteOperation({ id: op.id });
|
|
37
|
-
}));
|
|
38
|
-
}
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
async deleteOperation(operationID) {
|
|
42
|
-
return this.API.__proto__.DeleteOperation({ id: operationID });
|
|
43
|
-
}
|
|
44
|
-
async createOperation(operation) {
|
|
45
|
-
return this.API.__proto__.CreateOperation(operation);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
OperationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: OperationService, deps: [{ token: 'currentAPIService' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
49
|
-
OperationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: OperationService, providedIn: "root" });
|
|
50
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: OperationService, decorators: [{
|
|
51
|
-
type: Injectable,
|
|
52
|
-
args: [{
|
|
53
|
-
providedIn: "root",
|
|
54
|
-
}]
|
|
55
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
56
|
-
type: Inject,
|
|
57
|
-
args: ['currentAPIService']
|
|
58
|
-
}] }]; } });
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
import { Inject, Injectable } from "@angular/core";
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class OperationService {
|
|
4
|
+
constructor(apiInjected) {
|
|
5
|
+
this.API = apiInjected;
|
|
6
|
+
}
|
|
7
|
+
async getOperationsByTicketID(id) {
|
|
8
|
+
return this.API.__proto__.OperationsByTicket(id).then((res) => res.items);
|
|
9
|
+
}
|
|
10
|
+
async getOperationsByEquipmentID(id) {
|
|
11
|
+
return this.API.__proto__.OperationsByEquipment(id).then((res) => res.items);
|
|
12
|
+
}
|
|
13
|
+
async getTicketsByEquipmentID(id) {
|
|
14
|
+
const operations = await this.getOperationsByEquipmentID(id);
|
|
15
|
+
const tickets = operations.map((operation) => operation.ticket);
|
|
16
|
+
return tickets;
|
|
17
|
+
}
|
|
18
|
+
async deleteOperationsForEquipment(equipID) {
|
|
19
|
+
const deleted = [];
|
|
20
|
+
await this.getOperationsByEquipmentID(equipID)
|
|
21
|
+
.then(async (operations) => {
|
|
22
|
+
if (operations.length > 0) {
|
|
23
|
+
await Promise.all(operations.map(async (op) => {
|
|
24
|
+
const deletedOp = await this.API.__proto__.DeleteOperation({ id: op.id });
|
|
25
|
+
deleted.push(deletedOp);
|
|
26
|
+
}));
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
return deleted;
|
|
30
|
+
}
|
|
31
|
+
async deleteOperationsForTicket(ticketID) {
|
|
32
|
+
await this.getOperationsByTicketID(ticketID)
|
|
33
|
+
.then(async (operations) => {
|
|
34
|
+
if (operations.length > 0) {
|
|
35
|
+
await Promise.all(operations.map(async (op) => {
|
|
36
|
+
await this.API.__proto__.DeleteOperation({ id: op.id });
|
|
37
|
+
}));
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
async deleteOperation(operationID) {
|
|
42
|
+
return this.API.__proto__.DeleteOperation({ id: operationID });
|
|
43
|
+
}
|
|
44
|
+
async createOperation(operation) {
|
|
45
|
+
return this.API.__proto__.CreateOperation(operation);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
OperationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: OperationService, deps: [{ token: 'currentAPIService' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
49
|
+
OperationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: OperationService, providedIn: "root" });
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: OperationService, decorators: [{
|
|
51
|
+
type: Injectable,
|
|
52
|
+
args: [{
|
|
53
|
+
providedIn: "root",
|
|
54
|
+
}]
|
|
55
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
56
|
+
type: Inject,
|
|
57
|
+
args: ['currentAPIService']
|
|
58
|
+
}] }]; } });
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnRlcnBsYW4tY29yZS9zcmMvbGliL3NlcnZpY2VzL21vZGVscy9vcGVyYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNbkQsTUFBTSxPQUFPLGdCQUFnQjtJQUd6QixZQUF5QyxXQUFnQjtRQUNyRCxJQUFJLENBQUMsR0FBRyxHQUFHLFdBQVcsQ0FBQztJQUMzQixDQUFDO0lBRUQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLEVBQVU7UUFDcEMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsS0FBSyxDQUFDLDBCQUEwQixDQUFDLEVBQVU7UUFDdkMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBRUQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLEVBQVU7UUFDcEMsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsMEJBQTBCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDN0QsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hFLE9BQU8sT0FBTyxDQUFDO0lBQ25CLENBQUM7SUFFRCxLQUFLLENBQUMsNEJBQTRCLENBQUMsT0FBZTtRQUM5QyxNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDbkIsTUFBTSxJQUFJLENBQUMsMEJBQTBCLENBQUMsT0FBTyxDQUFDO2FBQ3pDLElBQUksQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLEVBQUU7WUFDdkIsSUFBSSxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDdkIsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUNiLFVBQVUsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFO29CQUN4QixNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztvQkFDMUUsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQTtnQkFDM0IsQ0FBQyxDQUFDLENBQ0wsQ0FBQzthQUNMO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDUCxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDO0lBRUQsS0FBSyxDQUFDLHlCQUF5QixDQUFDLFFBQWdCO1FBQzVDLE1BQU0sSUFBSSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQzthQUMzQyxJQUFJLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFO1lBQ3ZCLElBQUksVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ3ZCLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDYixVQUFVLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRTtvQkFDeEIsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQzVELENBQUMsQ0FBQyxDQUNMLENBQUM7YUFDTDtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELEtBQUssQ0FBQyxlQUFlLENBQUMsV0FBbUI7UUFDckMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsS0FBSyxDQUFDLGVBQWUsQ0FBQyxTQUFvQjtRQUN0QyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN6RCxDQUFDOzs2R0F4RFEsZ0JBQWdCLGtCQUdMLG1CQUFtQjtpSEFIOUIsZ0JBQWdCLGNBRmIsTUFBTTsyRkFFVCxnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzswQkFJZ0IsTUFBTTsyQkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgT3BlcmF0aW9uLCBUaWNrZXQgfSBmcm9tIFwiLi4vLi4vdHlwZXMuc2VydmljZVwiO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogXCJyb290XCIsXG59KVxuZXhwb3J0IGNsYXNzIE9wZXJhdGlvblNlcnZpY2UgIHtcbiAgICBBUEk6IGFueTsgLy9BV1NcblxuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoJ2N1cnJlbnRBUElTZXJ2aWNlJykgYXBpSW5qZWN0ZWQ6IGFueSkge1xuICAgICAgICB0aGlzLkFQSSA9IGFwaUluamVjdGVkO1xuICAgIH1cblxuICAgIGFzeW5jIGdldE9wZXJhdGlvbnNCeVRpY2tldElEKGlkOiBzdHJpbmcpOiBQcm9taXNlPE9wZXJhdGlvbltdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLkFQSS5fX3Byb3RvX18uT3BlcmF0aW9uc0J5VGlja2V0KGlkKS50aGVuKChyZXMpID0+IHJlcy5pdGVtcyk7XG4gICAgfVxuXG4gICAgYXN5bmMgZ2V0T3BlcmF0aW9uc0J5RXF1aXBtZW50SUQoaWQ6IHN0cmluZyk6IFByb21pc2U8T3BlcmF0aW9uW10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5PcGVyYXRpb25zQnlFcXVpcG1lbnQoaWQpLnRoZW4oKHJlcykgPT4gcmVzLml0ZW1zKTtcbiAgICB9XG5cbiAgICBhc3luYyBnZXRUaWNrZXRzQnlFcXVpcG1lbnRJRChpZDogc3RyaW5nKTogUHJvbWlzZTxUaWNrZXRbXT4ge1xuICAgICAgICBjb25zdCBvcGVyYXRpb25zID0gYXdhaXQgdGhpcy5nZXRPcGVyYXRpb25zQnlFcXVpcG1lbnRJRChpZCk7XG4gICAgICAgIGNvbnN0IHRpY2tldHMgPSBvcGVyYXRpb25zLm1hcCgob3BlcmF0aW9uKSA9PiBvcGVyYXRpb24udGlja2V0KTtcbiAgICAgICAgcmV0dXJuIHRpY2tldHM7XG4gICAgfVxuXG4gICAgYXN5bmMgZGVsZXRlT3BlcmF0aW9uc0ZvckVxdWlwbWVudChlcXVpcElEOiBzdHJpbmcpOiBQcm9taXNlPE9wZXJhdGlvbltdPiB7XG4gICAgICAgIGNvbnN0IGRlbGV0ZWQgPSBbXTtcbiAgICAgICAgYXdhaXQgdGhpcy5nZXRPcGVyYXRpb25zQnlFcXVpcG1lbnRJRChlcXVpcElEKVxuICAgICAgICAgICAgLnRoZW4oYXN5bmMgKG9wZXJhdGlvbnMpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAob3BlcmF0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICAgICAgICAgICAgICAgICAgb3BlcmF0aW9ucy5tYXAoYXN5bmMgKG9wKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGVsZXRlZE9wID0gYXdhaXQgdGhpcy5BUEkuX19wcm90b19fLkRlbGV0ZU9wZXJhdGlvbih7IGlkOiBvcC5pZCB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxldGVkLnB1c2goZGVsZXRlZE9wKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBkZWxldGVkO1xuICAgIH1cblxuICAgIGFzeW5jIGRlbGV0ZU9wZXJhdGlvbnNGb3JUaWNrZXQodGlja2V0SUQ6IHN0cmluZykge1xuICAgICAgICBhd2FpdCB0aGlzLmdldE9wZXJhdGlvbnNCeVRpY2tldElEKHRpY2tldElEKVxuICAgICAgICAudGhlbihhc3luYyAob3BlcmF0aW9ucykgPT4ge1xuICAgICAgICAgICAgaWYgKG9wZXJhdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICAgICAgICAgICAgICBvcGVyYXRpb25zLm1hcChhc3luYyAob3ApID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuQVBJLl9fcHJvdG9fXy5EZWxldGVPcGVyYXRpb24oeyBpZDogb3AuaWQgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGFzeW5jIGRlbGV0ZU9wZXJhdGlvbihvcGVyYXRpb25JRDogc3RyaW5nKTogUHJvbWlzZTxPcGVyYXRpb24+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5EZWxldGVPcGVyYXRpb24oeyBpZDogb3BlcmF0aW9uSUQgfSk7XG4gICAgfVxuXG4gICAgYXN5bmMgY3JlYXRlT3BlcmF0aW9uKG9wZXJhdGlvbjogT3BlcmF0aW9uKTogUHJvbWlzZTxPcGVyYXRpb24+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5DcmVhdGVPcGVyYXRpb24ob3BlcmF0aW9uKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,73 +1,73 @@
|
|
|
1
|
-
/* eslint-disable class-methods-use-this */
|
|
2
|
-
import { Inject, Injectable } from "@angular/core";
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class OrganisationService {
|
|
5
|
-
constructor(apiInjected) {
|
|
6
|
-
this.smarterPlanID = "6e28201f-4679-4c29-9d2d-8a325f57cee9";
|
|
7
|
-
this.API = apiInjected;
|
|
8
|
-
}
|
|
9
|
-
async getPropertiesForOrganisation(orgID) {
|
|
10
|
-
const org = await this.API.__proto__.GetOrganisation({ id: orgID });
|
|
11
|
-
if (org) {
|
|
12
|
-
return org.properties.items;
|
|
13
|
-
}
|
|
14
|
-
return [];
|
|
15
|
-
}
|
|
16
|
-
async getOrganisationByToken(token) {
|
|
17
|
-
const orgs = await this.API.__proto__.OrganisationsByToken(token);
|
|
18
|
-
if (orgs.items.length > 0) {
|
|
19
|
-
const org = orgs.items[0];
|
|
20
|
-
return this.tokenIsExpiredForOrg(org) ? null : org;
|
|
21
|
-
}
|
|
22
|
-
return null;
|
|
23
|
-
}
|
|
24
|
-
tokenIsExpiredForOrg(org) {
|
|
25
|
-
const expirationDate = new Date(org.tokenExpiresAt);
|
|
26
|
-
const diffTime = expirationDate.getTime() - Date.now();
|
|
27
|
-
return diffTime < 0;
|
|
28
|
-
}
|
|
29
|
-
async softDeteleOrg(orgID) {
|
|
30
|
-
return this.API.__proto__.UpdateOrganisation({
|
|
31
|
-
id: orgID,
|
|
32
|
-
deletedAt: Date.now(),
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
async updateOrganisation(input) {
|
|
36
|
-
return this.API.__proto__.UpdateOrganisation(input);
|
|
37
|
-
}
|
|
38
|
-
async deleteOrganisation(orgID) {
|
|
39
|
-
return this.API.__proto__.DeleteOrganisation({ id: orgID });
|
|
40
|
-
}
|
|
41
|
-
async createOrganisation(input) {
|
|
42
|
-
return this.API.__proto__.CreateOrganisation(input);
|
|
43
|
-
}
|
|
44
|
-
async getOrganisation(orgID) {
|
|
45
|
-
return this.API.__proto__.GetOrganisation({ id: orgID });
|
|
46
|
-
}
|
|
47
|
-
async listOrganisations() {
|
|
48
|
-
return this.API.__proto__.ListOrganisations().then((orgs) => orgs.items);
|
|
49
|
-
}
|
|
50
|
-
async getOrganisationForSpace(spaceID) {
|
|
51
|
-
const properties = await this.API.__proto__.ListProperties({
|
|
52
|
-
spaceID: { eq: spaceID },
|
|
53
|
-
});
|
|
54
|
-
let orgs = properties.items.map((property) => property.organisation);
|
|
55
|
-
if (orgs.length === 1) {
|
|
56
|
-
return orgs[0];
|
|
57
|
-
}
|
|
58
|
-
orgs = orgs.filter((org) => org.id !== this.smarterPlanID);
|
|
59
|
-
return orgs.length > 0 ? orgs[0] : null;
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
OrganisationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: OrganisationService, deps: [{ token: 'currentAPIService' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
63
|
-
OrganisationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: OrganisationService, providedIn: "root" });
|
|
64
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: OrganisationService, decorators: [{
|
|
65
|
-
type: Injectable,
|
|
66
|
-
args: [{
|
|
67
|
-
providedIn: "root",
|
|
68
|
-
}]
|
|
69
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
70
|
-
type: Inject,
|
|
71
|
-
args: ['currentAPIService']
|
|
72
|
-
}] }]; } });
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
/* eslint-disable class-methods-use-this */
|
|
2
|
+
import { Inject, Injectable } from "@angular/core";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class OrganisationService {
|
|
5
|
+
constructor(apiInjected) {
|
|
6
|
+
this.smarterPlanID = "6e28201f-4679-4c29-9d2d-8a325f57cee9";
|
|
7
|
+
this.API = apiInjected;
|
|
8
|
+
}
|
|
9
|
+
async getPropertiesForOrganisation(orgID) {
|
|
10
|
+
const org = await this.API.__proto__.GetOrganisation({ id: orgID });
|
|
11
|
+
if (org) {
|
|
12
|
+
return org.properties.items;
|
|
13
|
+
}
|
|
14
|
+
return [];
|
|
15
|
+
}
|
|
16
|
+
async getOrganisationByToken(token) {
|
|
17
|
+
const orgs = await this.API.__proto__.OrganisationsByToken(token);
|
|
18
|
+
if (orgs.items.length > 0) {
|
|
19
|
+
const org = orgs.items[0];
|
|
20
|
+
return this.tokenIsExpiredForOrg(org) ? null : org;
|
|
21
|
+
}
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
tokenIsExpiredForOrg(org) {
|
|
25
|
+
const expirationDate = new Date(org.tokenExpiresAt);
|
|
26
|
+
const diffTime = expirationDate.getTime() - Date.now();
|
|
27
|
+
return diffTime < 0;
|
|
28
|
+
}
|
|
29
|
+
async softDeteleOrg(orgID) {
|
|
30
|
+
return this.API.__proto__.UpdateOrganisation({
|
|
31
|
+
id: orgID,
|
|
32
|
+
deletedAt: Date.now(),
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
async updateOrganisation(input) {
|
|
36
|
+
return this.API.__proto__.UpdateOrganisation(input);
|
|
37
|
+
}
|
|
38
|
+
async deleteOrganisation(orgID) {
|
|
39
|
+
return this.API.__proto__.DeleteOrganisation({ id: orgID });
|
|
40
|
+
}
|
|
41
|
+
async createOrganisation(input) {
|
|
42
|
+
return this.API.__proto__.CreateOrganisation(input);
|
|
43
|
+
}
|
|
44
|
+
async getOrganisation(orgID) {
|
|
45
|
+
return this.API.__proto__.GetOrganisation({ id: orgID });
|
|
46
|
+
}
|
|
47
|
+
async listOrganisations() {
|
|
48
|
+
return this.API.__proto__.ListOrganisations().then((orgs) => orgs.items);
|
|
49
|
+
}
|
|
50
|
+
async getOrganisationForSpace(spaceID) {
|
|
51
|
+
const properties = await this.API.__proto__.ListProperties({
|
|
52
|
+
spaceID: { eq: spaceID },
|
|
53
|
+
});
|
|
54
|
+
let orgs = properties.items.map((property) => property.organisation);
|
|
55
|
+
if (orgs.length === 1) {
|
|
56
|
+
return orgs[0];
|
|
57
|
+
}
|
|
58
|
+
orgs = orgs.filter((org) => org.id !== this.smarterPlanID);
|
|
59
|
+
return orgs.length > 0 ? orgs[0] : null;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
OrganisationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: OrganisationService, deps: [{ token: 'currentAPIService' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
63
|
+
OrganisationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: OrganisationService, providedIn: "root" });
|
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: OrganisationService, decorators: [{
|
|
65
|
+
type: Injectable,
|
|
66
|
+
args: [{
|
|
67
|
+
providedIn: "root",
|
|
68
|
+
}]
|
|
69
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
70
|
+
type: Inject,
|
|
71
|
+
args: ['currentAPIService']
|
|
72
|
+
}] }]; } });
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JnYW5pc2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnRlcnBsYW4tY29yZS9zcmMvbGliL3NlcnZpY2VzL21vZGVscy9vcmdhbmlzYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQ0FBMkM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTW5ELE1BQU0sT0FBTyxtQkFBbUI7SUFJNUIsWUFBeUMsV0FBZ0I7UUFIekQsa0JBQWEsR0FBRyxzQ0FBc0MsQ0FBQztRQUluRCxJQUFJLENBQUMsR0FBRyxHQUFHLFdBQVcsQ0FBQztJQUMzQixDQUFDO0lBRUQsS0FBSyxDQUFDLDRCQUE0QixDQUM5QixLQUFhO1FBRWIsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNwRSxJQUFJLEdBQUcsRUFBRTtZQUNMLE9BQU8sR0FBRyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7U0FDL0I7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCxLQUFLLENBQUMsc0JBQXNCLENBQUMsS0FBYTtRQUN0QyxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xFLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDMUIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFD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aW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE9yZ2FuaXNhdGlvbiwgUHJvcGVydHkgfSBmcm9tIFwiLi4vLi4vdHlwZXMuc2VydmljZVwiO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogXCJyb290XCIsXG59KVxuZXhwb3J0IGNsYXNzIE9yZ2FuaXNhdGlvblNlcnZpY2Uge1xuICAgIHNtYXJ0ZXJQbGFuSUQgPSBcIjZlMjgyMDFmLTQ2NzktNGMyOS05ZDJkLThhMzI1ZjU3Y2VlOVwiO1xuICAgIEFQSTogYW55OyAvL0FXUyBBUElTZXJ2aWNlXG5cbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KCdjdXJyZW50QVBJU2VydmljZScpIGFwaUluamVjdGVkOiBhbnkpIHtcbiAgICAgICAgdGhpcy5BUEkgPSBhcGlJbmplY3RlZDtcbiAgICB9XG5cbiAgICBhc3luYyBnZXRQcm9wZXJ0aWVzRm9yT3JnYW5pc2F0aW9uKFxuICAgICAgICBvcmdJRDogc3RyaW5nLFxuICAgICk6IFByb21pc2U8QXJyYXk8UHJvcGVydHk+PiB7XG4gICAgICAgIGNvbnN0IG9yZyA9IGF3YWl0IHRoaXMuQVBJLl9fcHJvdG9fXy5HZXRPcmdhbmlzYXRpb24oeyBpZDogb3JnSUQgfSk7XG4gICAgICAgIGlmIChvcmcpIHtcbiAgICAgICAgICAgIHJldHVybiBvcmcucHJvcGVydGllcy5pdGVtcztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgYXN5bmMgZ2V0T3JnYW5pc2F0aW9uQnlUb2tlbih0b2tlbjogc3RyaW5nKTogUHJvbWlzZTxPcmdhbmlzYXRpb24+IHtcbiAgICAgICAgY29uc3Qgb3JncyA9IGF3YWl0IHRoaXMuQVBJLl9fcHJvdG9fXy5PcmdhbmlzYXRpb25zQnlUb2tlbih0b2tlbik7XG4gICAgICAgIGlmIChvcmdzLml0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGNvbnN0IG9yZyA9IG9yZ3MuaXRlbXNbMF07XG4gICAgICAgICAgICByZXR1cm4gdGhpcy50b2tlbklzRXhwaXJlZEZvck9yZyhvcmcpID8gbnVsbCA6IG9yZztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICB0b2tlbklzRXhwaXJlZEZvck9yZyhvcmc6IE9yZ2FuaXNhdGlvbik6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBleHBpcmF0aW9uRGF0ZSA9IG5ldyBEYXRlKG9yZy50b2tlbkV4cGlyZXNBdCk7XG4gICAgICAgIGNvbnN0IGRpZmZUaW1lID0gZXhwaXJhdGlvbkRhdGUuZ2V0VGltZSgpIC0gRGF0ZS5ub3coKTtcbiAgICAgICAgcmV0dXJuIGRpZmZUaW1lIDwgMDtcbiAgICB9XG5cbiAgICBhc3luYyBzb2Z0RGV0ZWxlT3JnKG9yZ0lEOiBzdHJpbmcpOiBQcm9taXNlPE9yZ2FuaXNhdGlvbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5BUEkuX19wcm90b19fLlVwZGF0ZU9yZ2FuaXNhdGlvbih7XG4gICAgICAgICAgICBpZDogb3JnSUQsXG4gICAgICAgICAgICBkZWxldGVkQXQ6IERhdGUubm93KCksXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGFzeW5jIHVwZGF0ZU9yZ2FuaXNhdGlvbihpbnB1dDogYW55KTogUHJvbWlzZTxPcmdhbmlzYXRpb24+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5VcGRhdGVPcmdhbmlzYXRpb24oaW5wdXQpO1xuICAgIH1cblxuICAgIGFzeW5jIGRlbGV0ZU9yZ2FuaXNhdGlvbihvcmdJRDogc3RyaW5nKTogUHJvbWlzZTxPcmdhbmlzYXRpb24+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5EZWxldGVPcmdhbmlzYXRpb24oeyBpZDogb3JnSUQgfSk7XG4gICAgfVxuXG4gICAgYXN5bmMgY3JlYXRlT3JnYW5pc2F0aW9uKGlucHV0OiBPcmdhbmlzYXRpb24pOiBQcm9taXNlPE9yZ2FuaXNhdGlvbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5BUEkuX19wcm90b19fLkNyZWF0ZU9yZ2FuaXNhdGlvbihpbnB1dCk7XG4gICAgfVxuXG4gICAgYXN5bmMgZ2V0T3JnYW5pc2F0aW9uKG9yZ0lEOiBzdHJpbmcpOiBQcm9taXNlPE9yZ2FuaXNhdGlvbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5BUEkuX19wcm90b19fLkdldE9yZ2FuaXNhdGlvbih7IGlkOiBvcmdJRCB9KTtcbiAgICB9XG5cbiAgICBhc3luYyBsaXN0T3JnYW5pc2F0aW9ucygpOiBQcm9taXNlPE9yZ2FuaXNhdGlvbltdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLkFQSS5fX3Byb3RvX18uTGlzdE9yZ2FuaXNhdGlvbnMoKS50aGVuKChvcmdzKSA9PiBvcmdzLml0ZW1zKTtcbiAgICB9XG5cbiAgICBhc3luYyBnZXRPcmdhbmlzYXRpb25Gb3JTcGFjZShzcGFjZUlEOiBzdHJpbmcpOiBQcm9taXNlPE9yZ2FuaXNhdGlvbj4ge1xuICAgICAgICBjb25zdCBwcm9wZXJ0aWVzID0gYXdhaXQgdGhpcy5BUEkuX19wcm90b19fLkxpc3RQcm9wZXJ0aWVzKHtcbiAgICAgICAgICAgIHNwYWNlSUQ6IHsgZXE6IHNwYWNlSUQgfSxcbiAgICAgICAgfSk7XG4gICAgICAgIGxldCBvcmdzID0gcHJvcGVydGllcy5pdGVtcy5tYXAoKHByb3BlcnR5KSA9PiBwcm9wZXJ0eS5vcmdhbmlzYXRpb24pO1xuICAgICAgICBpZiAob3Jncy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgIHJldHVybiBvcmdzWzBdO1xuICAgICAgICB9XG4gICAgICAgIG9yZ3MgPSBvcmdzLmZpbHRlcigob3JnKSA9PiBvcmcuaWQgIT09IHRoaXMuc21hcnRlclBsYW5JRCk7XG4gICAgICAgIHJldHVybiBvcmdzLmxlbmd0aCA+IDAgPyBvcmdzWzBdIDogbnVsbDtcbiAgICB9XG59XG4iXX0=
|