@smarterplan/ngx-smarterplan-core 1.2.45 → 1.2.47

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.
Files changed (170) hide show
  1. package/README.md +24 -24
  2. package/esm2020/lib/components/csv-export/csv-export.component.mjs +59 -59
  3. package/esm2020/lib/components/loader/loader.component.mjs +23 -23
  4. package/esm2020/lib/components/menu-bar/avatar/avatar.component.mjs +80 -80
  5. package/esm2020/lib/components/menu-bar/menu-bar.component.mjs +99 -99
  6. package/esm2020/lib/components/menu-bar/navigation-bar/navigation-bar.component.mjs +384 -384
  7. package/esm2020/lib/components/menu-bar/range-date-picker/range-date-picker.component.mjs +147 -147
  8. package/esm2020/lib/components/modal-switch-visit/modal-switch-visit.component.mjs +40 -40
  9. package/esm2020/lib/components/search-bar/search-bar.component.mjs +63 -63
  10. package/esm2020/lib/components/support-modal/support-modal.component.mjs +66 -66
  11. package/esm2020/lib/config.mjs +4 -4
  12. package/esm2020/lib/helpers.service.mjs +470 -470
  13. package/esm2020/lib/matterport-extensions/hsl-loader/HlsLoader.mjs +69 -69
  14. package/esm2020/lib/matterport-extensions/nest-thermostat/CanvasImage.mjs +51 -51
  15. package/esm2020/lib/matterport-extensions/nest-thermostat/CanvasRenderer.mjs +61 -61
  16. package/esm2020/lib/matterport-extensions/nest-thermostat/NestThermostat.mjs +158 -158
  17. package/esm2020/lib/matterport-extensions/nest-thermostat/PlaneRenderer.mjs +85 -85
  18. package/esm2020/lib/matterport-extensions/scene-component/SceneComponent.mjs +128 -128
  19. package/esm2020/lib/matterport-extensions/security-camera/SecurityCamera.mjs +249 -249
  20. package/esm2020/lib/matterport-extensions/tv-player/TvPlayer.mjs +98 -98
  21. package/esm2020/lib/matterport-extensions/video-renderer/VideoRenderer.mjs +64 -64
  22. package/esm2020/lib/matterport-extensions/view-frustum-mesh/ViewFrustumMesh.mjs +221 -221
  23. package/esm2020/lib/mattertagData.mjs +165 -165
  24. package/esm2020/lib/ngx-smarterplan-core.module.mjs +122 -122
  25. package/esm2020/lib/ngx-smarterplan-core.service.mjs +14 -14
  26. package/esm2020/lib/pipes/duration-to-string.pipe.mjs +66 -66
  27. package/esm2020/lib/pipes/format-date-number-to-digits.pipe.mjs +30 -30
  28. package/esm2020/lib/pipes/hashtag-from-id.pipe.mjs +26 -26
  29. package/esm2020/lib/pipes/safe-url.pipe.mjs +20 -20
  30. package/esm2020/lib/pipes/time-date-to-local-string.pipe.mjs +104 -104
  31. package/esm2020/lib/pipes/username-from-id.pipe.mjs +29 -29
  32. package/esm2020/lib/services/amplify-cache.service.mjs +72 -72
  33. package/esm2020/lib/services/base-tab.service.mjs +24 -24
  34. package/esm2020/lib/services/baseVisibility.service.mjs +18 -18
  35. package/esm2020/lib/services/content.service.mjs +135 -135
  36. package/esm2020/lib/services/filter.service.mjs +599 -599
  37. package/esm2020/lib/services/intervention.service.mjs +236 -236
  38. package/esm2020/lib/services/locale.service.mjs +45 -45
  39. package/esm2020/lib/services/matterport-import.service.mjs +340 -340
  40. package/esm2020/lib/services/matterport.service.mjs +1587 -1587
  41. package/esm2020/lib/services/models/affectation.service.mjs +60 -60
  42. package/esm2020/lib/services/models/base-object.service.mjs +70 -70
  43. package/esm2020/lib/services/models/capture.service.mjs +34 -34
  44. package/esm2020/lib/services/models/comment.service.mjs +98 -98
  45. package/esm2020/lib/services/models/domain.service.mjs +78 -78
  46. package/esm2020/lib/services/models/equipment.service.mjs +683 -683
  47. package/esm2020/lib/services/models/event.service.mjs +128 -128
  48. package/esm2020/lib/services/models/feature.service.mjs +380 -380
  49. package/esm2020/lib/services/models/hashtag.service.mjs +38 -38
  50. package/esm2020/lib/services/models/layer.service.mjs +33 -33
  51. package/esm2020/lib/services/models/measurement.service.mjs +199 -199
  52. package/esm2020/lib/services/models/mission.service.mjs +206 -206
  53. package/esm2020/lib/services/models/navigation.service.mjs +92 -92
  54. package/esm2020/lib/services/models/node.service.mjs +31 -31
  55. package/esm2020/lib/services/models/object3D.service.mjs +364 -364
  56. package/esm2020/lib/services/models/operation.service.mjs +59 -59
  57. package/esm2020/lib/services/models/organisation.service.mjs +73 -73
  58. package/esm2020/lib/services/models/plan.service.mjs +799 -799
  59. package/esm2020/lib/services/models/poi.service.mjs +103 -103
  60. package/esm2020/lib/services/models/profile.service.mjs +58 -58
  61. package/esm2020/lib/services/models/property.service.mjs +44 -44
  62. package/esm2020/lib/services/models/space.service.mjs +204 -204
  63. package/esm2020/lib/services/models/template.service.mjs +41 -41
  64. package/esm2020/lib/services/models/ticket.service.mjs +526 -526
  65. package/esm2020/lib/services/models/visit.service.mjs +130 -130
  66. package/esm2020/lib/services/models/zone.service.mjs +225 -225
  67. package/esm2020/lib/services/navigator.service.mjs +212 -212
  68. package/esm2020/lib/services/s3.service.mjs +137 -137
  69. package/esm2020/lib/services/search.service.mjs +124 -124
  70. package/esm2020/lib/services/support.service.mjs +42 -42
  71. package/esm2020/lib/services/tag.service.mjs +111 -111
  72. package/esm2020/lib/services/user.service.mjs +501 -501
  73. package/esm2020/lib/services/validators.service.mjs +50 -50
  74. package/esm2020/lib/services/viewer.service.mjs +389 -389
  75. package/esm2020/lib/services/zone-drawer.service.mjs +76 -76
  76. package/esm2020/lib/services/zoneChange.service.mjs +30 -30
  77. package/esm2020/lib/types.service.mjs +311 -311
  78. package/esm2020/lib/validators/email.directive.mjs +7 -7
  79. package/esm2020/lib/validators/no-empty.directive.mjs +12 -12
  80. package/esm2020/lib/validators/number.directive.mjs +12 -12
  81. package/esm2020/lib/validators/text.directive.mjs +12 -12
  82. package/esm2020/public-api.mjs +72 -72
  83. package/esm2020/smarterplan-ngx-smarterplan-core.mjs +4 -4
  84. package/fesm2015/smarterplan-ngx-smarterplan-core.mjs +13014 -13014
  85. package/fesm2015/smarterplan-ngx-smarterplan-core.mjs.map +1 -1
  86. package/fesm2020/smarterplan-ngx-smarterplan-core.mjs +12263 -12263
  87. package/fesm2020/smarterplan-ngx-smarterplan-core.mjs.map +1 -1
  88. package/lib/components/csv-export/csv-export.component.d.ts +18 -18
  89. package/lib/components/loader/loader.component.d.ts +10 -10
  90. package/lib/components/menu-bar/avatar/avatar.component.d.ts +21 -21
  91. package/lib/components/menu-bar/menu-bar.component.d.ts +38 -38
  92. package/lib/components/menu-bar/navigation-bar/navigation-bar.component.d.ts +73 -73
  93. package/lib/components/menu-bar/range-date-picker/range-date-picker.component.d.ts +35 -35
  94. package/lib/components/modal-switch-visit/modal-switch-visit.component.d.ts +22 -22
  95. package/lib/components/search-bar/search-bar.component.d.ts +16 -16
  96. package/lib/components/support-modal/support-modal.component.d.ts +26 -26
  97. package/lib/config.d.ts +22 -22
  98. package/lib/helpers.service.d.ts +79 -79
  99. package/lib/matterport-extensions/hsl-loader/HlsLoader.d.ts +26 -26
  100. package/lib/matterport-extensions/nest-thermostat/CanvasImage.d.ts +31 -31
  101. package/lib/matterport-extensions/nest-thermostat/CanvasRenderer.d.ts +37 -37
  102. package/lib/matterport-extensions/nest-thermostat/NestThermostat.d.ts +42 -42
  103. package/lib/matterport-extensions/nest-thermostat/PlaneRenderer.d.ts +46 -46
  104. package/lib/matterport-extensions/scene-component/SceneComponent.d.ts +388 -388
  105. package/lib/matterport-extensions/security-camera/SecurityCamera.d.ts +47 -47
  106. package/lib/matterport-extensions/tv-player/TvPlayer.d.ts +26 -26
  107. package/lib/matterport-extensions/video-renderer/VideoRenderer.d.ts +26 -26
  108. package/lib/matterport-extensions/view-frustum-mesh/ViewFrustumMesh.d.ts +43 -43
  109. package/lib/mattertagData.d.ts +70 -70
  110. package/lib/ngx-smarterplan-core.module.d.ts +29 -29
  111. package/lib/ngx-smarterplan-core.service.d.ts +6 -6
  112. package/lib/pipes/duration-to-string.pipe.d.ts +12 -12
  113. package/lib/pipes/format-date-number-to-digits.pipe.d.ts +10 -10
  114. package/lib/pipes/hashtag-from-id.pipe.d.ts +10 -10
  115. package/lib/pipes/safe-url.pipe.d.ts +10 -10
  116. package/lib/pipes/time-date-to-local-string.pipe.d.ts +16 -16
  117. package/lib/pipes/username-from-id.pipe.d.ts +11 -11
  118. package/lib/services/amplify-cache.service.d.ts +37 -37
  119. package/lib/services/base-tab.service.d.ts +10 -10
  120. package/lib/services/baseVisibility.service.d.ts +9 -9
  121. package/lib/services/content.service.d.ts +28 -28
  122. package/lib/services/filter.service.d.ts +60 -60
  123. package/lib/services/intervention.service.d.ts +25 -25
  124. package/lib/services/locale.service.d.ts +23 -23
  125. package/lib/services/matterport-import.service.d.ts +53 -53
  126. package/lib/services/matterport.service.d.ts +336 -336
  127. package/lib/services/models/affectation.service.d.ts +14 -14
  128. package/lib/services/models/base-object.service.d.ts +20 -20
  129. package/lib/services/models/capture.service.d.ts +13 -13
  130. package/lib/services/models/comment.service.d.ts +26 -26
  131. package/lib/services/models/domain.service.d.ts +19 -19
  132. package/lib/services/models/equipment.service.d.ts +93 -93
  133. package/lib/services/models/event.service.d.ts +43 -43
  134. package/lib/services/models/feature.service.d.ts +75 -75
  135. package/lib/services/models/hashtag.service.d.ts +13 -13
  136. package/lib/services/models/layer.service.d.ts +11 -11
  137. package/lib/services/models/measurement.service.d.ts +51 -51
  138. package/lib/services/models/mission.service.d.ts +39 -39
  139. package/lib/services/models/navigation.service.d.ts +29 -29
  140. package/lib/services/models/node.service.d.ts +12 -12
  141. package/lib/services/models/object3D.service.d.ts +57 -57
  142. package/lib/services/models/operation.service.d.ts +15 -15
  143. package/lib/services/models/organisation.service.d.ts +19 -19
  144. package/lib/services/models/plan.service.d.ts +133 -133
  145. package/lib/services/models/poi.service.d.ts +25 -25
  146. package/lib/services/models/profile.service.d.ts +16 -16
  147. package/lib/services/models/property.service.d.ts +13 -13
  148. package/lib/services/models/space.service.d.ts +46 -46
  149. package/lib/services/models/template.service.d.ts +15 -15
  150. package/lib/services/models/ticket.service.d.ts +93 -93
  151. package/lib/services/models/visit.service.d.ts +24 -24
  152. package/lib/services/models/zone.service.d.ts +50 -50
  153. package/lib/services/navigator.service.d.ts +61 -61
  154. package/lib/services/s3.service.d.ts +14 -14
  155. package/lib/services/search.service.d.ts +20 -20
  156. package/lib/services/support.service.d.ts +17 -17
  157. package/lib/services/tag.service.d.ts +29 -29
  158. package/lib/services/user.service.d.ts +118 -118
  159. package/lib/services/validators.service.d.ts +18 -18
  160. package/lib/services/viewer.service.d.ts +110 -110
  161. package/lib/services/zone-drawer.service.d.ts +7 -7
  162. package/lib/services/zoneChange.service.d.ts +17 -17
  163. package/lib/types.service.d.ts +842 -842
  164. package/lib/validators/email.directive.d.ts +2 -2
  165. package/lib/validators/no-empty.directive.d.ts +2 -2
  166. package/lib/validators/number.directive.d.ts +2 -2
  167. package/lib/validators/text.directive.d.ts +2 -2
  168. package/package.json +2 -2
  169. package/public-api.d.ts +64 -64
  170. 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnRlcnBsYW4tY29yZS9zcmMvbGliL3NlcnZpY2VzL21vZGVscy9vcGVyYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNbkQsTUFBTSxPQUFPLGdCQUFnQjtJQUd6QixZQUF5QyxXQUFnQjtRQUNyRCxJQUFJLENBQUMsR0FBRyxHQUFHLFdBQVcsQ0FBQztJQUMzQixDQUFDO0lBRUQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLEVBQVU7UUFDcEMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsS0FBSyxDQUFDLDBCQUEwQixDQUFDLEVBQVU7UUFDdkMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBRUQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLEVBQVU7UUFDcEMsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsMEJBQTBCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDN0QsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hFLE9BQU8sT0FBTyxDQUFDO0lBQ25CLENBQUM7SUFFRCxLQUFLLENBQUMsNEJBQTRCLENBQUMsT0FBZTtRQUM5QyxNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDbkIsTUFBTSxJQUFJLENBQUMsMEJBQTBCLENBQUMsT0FBTyxDQUFDO2FBQ3pDLElBQUksQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLEVBQUU7WUFDdkIsSUFBSSxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDdkIsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUNiLFVBQVUsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFO29CQUN4QixNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztvQkFDMUUsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQTtnQkFDM0IsQ0FBQyxDQUFDLENBQ0wsQ0FBQzthQUNMO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDUCxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDO0lBRUQsS0FBSyxDQUFDLHlCQUF5QixDQUFDLFFBQWdCO1FBQzVDLE1BQU0sSUFBSSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQzthQUMzQyxJQUFJLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFO1lBQ3ZCLElBQUksVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ3ZCLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDYixVQUFVLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRTtvQkFDeEIsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQzVELENBQUMsQ0FBQyxDQUNMLENBQUM7YUFDTDtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELEtBQUssQ0FBQyxlQUFlLENBQUMsV0FBbUI7UUFDckMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsS0FBSyxDQUFDLGVBQWUsQ0FBQyxTQUFvQjtRQUN0QyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN6RCxDQUFDOzs2R0F4RFEsZ0JBQWdCLGtCQUdMLG1CQUFtQjtpSEFIOUIsZ0JBQWdCLGNBRmIsTUFBTTsyRkFFVCxnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzswQkFJZ0IsTUFBTTsyQkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgT3BlcmF0aW9uLCBUaWNrZXQgfSBmcm9tIFwiLi4vLi4vdHlwZXMuc2VydmljZVwiO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogXCJyb290XCIsXG59KVxuZXhwb3J0IGNsYXNzIE9wZXJhdGlvblNlcnZpY2UgIHtcbiAgICBBUEk6IGFueTsgLy9BV1NcblxuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoJ2N1cnJlbnRBUElTZXJ2aWNlJykgYXBpSW5qZWN0ZWQ6IGFueSkge1xuICAgICAgICB0aGlzLkFQSSA9IGFwaUluamVjdGVkO1xuICAgIH1cblxuICAgIGFzeW5jIGdldE9wZXJhdGlvbnNCeVRpY2tldElEKGlkOiBzdHJpbmcpOiBQcm9taXNlPE9wZXJhdGlvbltdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLkFQSS5fX3Byb3RvX18uT3BlcmF0aW9uc0J5VGlja2V0KGlkKS50aGVuKChyZXMpID0+IHJlcy5pdGVtcyk7XG4gICAgfVxuXG4gICAgYXN5bmMgZ2V0T3BlcmF0aW9uc0J5RXF1aXBtZW50SUQoaWQ6IHN0cmluZyk6IFByb21pc2U8T3BlcmF0aW9uW10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5PcGVyYXRpb25zQnlFcXVpcG1lbnQoaWQpLnRoZW4oKHJlcykgPT4gcmVzLml0ZW1zKTtcbiAgICB9XG5cbiAgICBhc3luYyBnZXRUaWNrZXRzQnlFcXVpcG1lbnRJRChpZDogc3RyaW5nKTogUHJvbWlzZTxUaWNrZXRbXT4ge1xuICAgICAgICBjb25zdCBvcGVyYXRpb25zID0gYXdhaXQgdGhpcy5nZXRPcGVyYXRpb25zQnlFcXVpcG1lbnRJRChpZCk7XG4gICAgICAgIGNvbnN0IHRpY2tldHMgPSBvcGVyYXRpb25zLm1hcCgob3BlcmF0aW9uKSA9PiBvcGVyYXRpb24udGlja2V0KTtcbiAgICAgICAgcmV0dXJuIHRpY2tldHM7XG4gICAgfVxuXG4gICAgYXN5bmMgZGVsZXRlT3BlcmF0aW9uc0ZvckVxdWlwbWVudChlcXVpcElEOiBzdHJpbmcpOiBQcm9taXNlPE9wZXJhdGlvbltdPiB7XG4gICAgICAgIGNvbnN0IGRlbGV0ZWQgPSBbXTtcbiAgICAgICAgYXdhaXQgdGhpcy5nZXRPcGVyYXRpb25zQnlFcXVpcG1lbnRJRChlcXVpcElEKVxuICAgICAgICAgICAgLnRoZW4oYXN5bmMgKG9wZXJhdGlvbnMpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAob3BlcmF0aW9ucy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICAgICAgICAgICAgICAgICAgb3BlcmF0aW9ucy5tYXAoYXN5bmMgKG9wKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZGVsZXRlZE9wID0gYXdhaXQgdGhpcy5BUEkuX19wcm90b19fLkRlbGV0ZU9wZXJhdGlvbih7IGlkOiBvcC5pZCB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWxldGVkLnB1c2goZGVsZXRlZE9wKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBkZWxldGVkO1xuICAgIH1cblxuICAgIGFzeW5jIGRlbGV0ZU9wZXJhdGlvbnNGb3JUaWNrZXQodGlja2V0SUQ6IHN0cmluZykge1xuICAgICAgICBhd2FpdCB0aGlzLmdldE9wZXJhdGlvbnNCeVRpY2tldElEKHRpY2tldElEKVxuICAgICAgICAudGhlbihhc3luYyAob3BlcmF0aW9ucykgPT4ge1xuICAgICAgICAgICAgaWYgKG9wZXJhdGlvbnMubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgICAgIGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgICAgICAgICAgICAgICBvcGVyYXRpb25zLm1hcChhc3luYyAob3ApID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGF3YWl0IHRoaXMuQVBJLl9fcHJvdG9fXy5EZWxldGVPcGVyYXRpb24oeyBpZDogb3AuaWQgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGFzeW5jIGRlbGV0ZU9wZXJhdGlvbihvcGVyYXRpb25JRDogc3RyaW5nKTogUHJvbWlzZTxPcGVyYXRpb24+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5EZWxldGVPcGVyYXRpb24oeyBpZDogb3BlcmF0aW9uSUQgfSk7XG4gICAgfVxuXG4gICAgYXN5bmMgY3JlYXRlT3BlcmF0aW9uKG9wZXJhdGlvbjogT3BlcmF0aW9uKTogUHJvbWlzZTxPcGVyYXRpb24+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5DcmVhdGVPcGVyYXRpb24ob3BlcmF0aW9uKTtcbiAgICB9XG59XG4iXX0=
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnRlcnBsYW4tY29yZS9zcmMvbGliL3NlcnZpY2VzL21vZGVscy9vcGVyYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNbkQsTUFBTSxPQUFPLGdCQUFnQjtJQUd6QixZQUF5QyxXQUFnQjtRQUNyRCxJQUFJLENBQUMsR0FBRyxHQUFHLFdBQVcsQ0FBQztJQUMzQixDQUFDO0lBRUQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLEVBQVU7UUFDcEMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5RSxDQUFDO0lBRUQsS0FBSyxDQUFDLDBCQUEwQixDQUFDLEVBQVU7UUFDdkMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxxQkFBcUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqRixDQUFDO0lBRUQsS0FBSyxDQUFDLHVCQUF1QixDQUFDLEVBQVU7UUFDcEMsTUFBTSxVQUFVLEdBQUcsTUFBTSxJQUFJLENBQUMsMEJBQTBCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDN0QsTUFBTSxPQUFPLEdBQUcsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hFLE9BQU8sT0FBTyxDQUFDO0lBQ25CLENBQUM7SUFFRCxLQUFLLENBQUMsNEJBQTRCLENBQUMsT0FBZTtRQUM5QyxNQUFNLE9BQU8sR0FBRyxFQUFFLENBQUM7UUFDbkIsTUFBTSxJQUFJLENBQUMsMEJBQTBCLENBQUMsT0FBTyxDQUFDO2FBQ3pDLElBQUksQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLEVBQUU7WUFDdkIsSUFBSSxVQUFVLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDdkIsTUFBTSxPQUFPLENBQUMsR0FBRyxDQUNiLFVBQVUsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxFQUFFO29CQUN4QixNQUFNLFNBQVMsR0FBRyxNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztvQkFDMUUsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQTtnQkFDM0IsQ0FBQyxDQUFDLENBQ0wsQ0FBQzthQUNMO1FBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDUCxPQUFPLE9BQU8sQ0FBQztJQUNuQixDQUFDO0lBRUQsS0FBSyxDQUFDLHlCQUF5QixDQUFDLFFBQWdCO1FBQzVDLE1BQU0sSUFBSSxDQUFDLHVCQUF1QixDQUFDLFFBQVEsQ0FBQzthQUMzQyxJQUFJLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFO1lBQ3ZCLElBQUksVUFBVSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ3ZCLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FDYixVQUFVLENBQUMsR0FBRyxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsRUFBRTtvQkFDeEIsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7Z0JBQzVELENBQUMsQ0FBQyxDQUNMLENBQUM7YUFDTDtRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELEtBQUssQ0FBQyxlQUFlLENBQUMsV0FBbUI7UUFDckMsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsS0FBSyxDQUFDLGVBQWUsQ0FBQyxTQUFvQjtRQUN0QyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLGVBQWUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN6RCxDQUFDOzs2R0F4RFEsZ0JBQWdCLGtCQUdMLG1CQUFtQjtpSEFIOUIsZ0JBQWdCLGNBRmIsTUFBTTsyRkFFVCxnQkFBZ0I7a0JBSDVCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzswQkFJZ0IsTUFBTTsyQkFBQyxtQkFBbUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBPcGVyYXRpb24sIFRpY2tldCB9IGZyb20gXCIuLi8uLi90eXBlcy5zZXJ2aWNlXCI7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiBcInJvb3RcIixcclxufSlcclxuZXhwb3J0IGNsYXNzIE9wZXJhdGlvblNlcnZpY2UgIHtcclxuICAgIEFQSTogYW55OyAvL0FXU1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoJ2N1cnJlbnRBUElTZXJ2aWNlJykgYXBpSW5qZWN0ZWQ6IGFueSkge1xyXG4gICAgICAgIHRoaXMuQVBJID0gYXBpSW5qZWN0ZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgZ2V0T3BlcmF0aW9uc0J5VGlja2V0SUQoaWQ6IHN0cmluZyk6IFByb21pc2U8T3BlcmF0aW9uW10+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5BUEkuX19wcm90b19fLk9wZXJhdGlvbnNCeVRpY2tldChpZCkudGhlbigocmVzKSA9PiByZXMuaXRlbXMpO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGdldE9wZXJhdGlvbnNCeUVxdWlwbWVudElEKGlkOiBzdHJpbmcpOiBQcm9taXNlPE9wZXJhdGlvbltdPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5PcGVyYXRpb25zQnlFcXVpcG1lbnQoaWQpLnRoZW4oKHJlcykgPT4gcmVzLml0ZW1zKTtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBnZXRUaWNrZXRzQnlFcXVpcG1lbnRJRChpZDogc3RyaW5nKTogUHJvbWlzZTxUaWNrZXRbXT4ge1xyXG4gICAgICAgIGNvbnN0IG9wZXJhdGlvbnMgPSBhd2FpdCB0aGlzLmdldE9wZXJhdGlvbnNCeUVxdWlwbWVudElEKGlkKTtcclxuICAgICAgICBjb25zdCB0aWNrZXRzID0gb3BlcmF0aW9ucy5tYXAoKG9wZXJhdGlvbikgPT4gb3BlcmF0aW9uLnRpY2tldCk7XHJcbiAgICAgICAgcmV0dXJuIHRpY2tldHM7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgZGVsZXRlT3BlcmF0aW9uc0ZvckVxdWlwbWVudChlcXVpcElEOiBzdHJpbmcpOiBQcm9taXNlPE9wZXJhdGlvbltdPiB7XHJcbiAgICAgICAgY29uc3QgZGVsZXRlZCA9IFtdO1xyXG4gICAgICAgIGF3YWl0IHRoaXMuZ2V0T3BlcmF0aW9uc0J5RXF1aXBtZW50SUQoZXF1aXBJRClcclxuICAgICAgICAgICAgLnRoZW4oYXN5bmMgKG9wZXJhdGlvbnMpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChvcGVyYXRpb25zLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChcclxuICAgICAgICAgICAgICAgICAgICAgICAgb3BlcmF0aW9ucy5tYXAoYXN5bmMgKG9wKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBkZWxldGVkT3AgPSBhd2FpdCB0aGlzLkFQSS5fX3Byb3RvX18uRGVsZXRlT3BlcmF0aW9uKHsgaWQ6IG9wLmlkIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlZC5wdXNoKGRlbGV0ZWRPcClcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgcmV0dXJuIGRlbGV0ZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgZGVsZXRlT3BlcmF0aW9uc0ZvclRpY2tldCh0aWNrZXRJRDogc3RyaW5nKSB7XHJcbiAgICAgICAgYXdhaXQgdGhpcy5nZXRPcGVyYXRpb25zQnlUaWNrZXRJRCh0aWNrZXRJRClcclxuICAgICAgICAudGhlbihhc3luYyAob3BlcmF0aW9ucykgPT4ge1xyXG4gICAgICAgICAgICBpZiAob3BlcmF0aW9ucy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICBhd2FpdCBQcm9taXNlLmFsbChcclxuICAgICAgICAgICAgICAgICAgICBvcGVyYXRpb25zLm1hcChhc3luYyAob3ApID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgYXdhaXQgdGhpcy5BUEkuX19wcm90b19fLkRlbGV0ZU9wZXJhdGlvbih7IGlkOiBvcC5pZCB9KTtcclxuICAgICAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBkZWxldGVPcGVyYXRpb24ob3BlcmF0aW9uSUQ6IHN0cmluZyk6IFByb21pc2U8T3BlcmF0aW9uPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5EZWxldGVPcGVyYXRpb24oeyBpZDogb3BlcmF0aW9uSUQgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgY3JlYXRlT3BlcmF0aW9uKG9wZXJhdGlvbjogT3BlcmF0aW9uKTogUHJvbWlzZTxPcGVyYXRpb24+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5BUEkuX19wcm90b19fLkNyZWF0ZU9wZXJhdGlvbihvcGVyYXRpb24pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JnYW5pc2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnRlcnBsYW4tY29yZS9zcmMvbGliL3NlcnZpY2VzL21vZGVscy9vcmdhbmlzYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSwyQ0FBMkM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTW5ELE1BQU0sT0FBTyxtQkFBbUI7SUFJNUIsWUFBeUMsV0FBZ0I7UUFIekQsa0JBQWEsR0FBRyxzQ0FBc0MsQ0FBQztRQUluRCxJQUFJLENBQUMsR0FBRyxHQUFHLFdBQVcsQ0FBQztJQUMzQixDQUFDO0lBRUQsS0FBSyxDQUFDLDRCQUE0QixDQUM5QixLQUFhO1FBRWIsTUFBTSxHQUFHLEdBQUcsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUNwRSxJQUFJLEdBQUcsRUFBRTtZQUNMLE9BQU8sR0FBRyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUM7U0FDL0I7UUFDRCxPQUFPLEVBQUUsQ0FBQztJQUNkLENBQUM7SUFFRCxLQUFLLENBQUMsc0JBQXNCLENBQUMsS0FBYTtRQUN0QyxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2xFLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3ZCLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDMUIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFD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aW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IE9yZ2FuaXNhdGlvbiwgUHJvcGVydHkgfSBmcm9tIFwiLi4vLi4vdHlwZXMuc2VydmljZVwiO1xuXG5ASW5qZWN0YWJsZSh7XG4gICAgcHJvdmlkZWRJbjogXCJyb290XCIsXG59KVxuZXhwb3J0IGNsYXNzIE9yZ2FuaXNhdGlvblNlcnZpY2Uge1xuICAgIHNtYXJ0ZXJQbGFuSUQgPSBcIjZlMjgyMDFmLTQ2NzktNGMyOS05ZDJkLThhMzI1ZjU3Y2VlOVwiO1xuICAgIEFQSTogYW55OyAvL0FXUyBBUElTZXJ2aWNlXG5cbiAgICBjb25zdHJ1Y3RvcihASW5qZWN0KCdjdXJyZW50QVBJU2VydmljZScpIGFwaUluamVjdGVkOiBhbnkpIHtcbiAgICAgICAgdGhpcy5BUEkgPSBhcGlJbmplY3RlZDtcbiAgICB9XG5cbiAgICBhc3luYyBnZXRQcm9wZXJ0aWVzRm9yT3JnYW5pc2F0aW9uKFxuICAgICAgICBvcmdJRDogc3RyaW5nLFxuICAgICk6IFByb21pc2U8QXJyYXk8UHJvcGVydHk+PiB7XG4gICAgICAgIGNvbnN0IG9yZyA9IGF3YWl0IHRoaXMuQVBJLl9fcHJvdG9fXy5HZXRPcmdhbmlzYXRpb24oeyBpZDogb3JnSUQgfSk7XG4gICAgICAgIGlmIChvcmcpIHtcbiAgICAgICAgICAgIHJldHVybiBvcmcucHJvcGVydGllcy5pdGVtcztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgYXN5bmMgZ2V0T3JnYW5pc2F0aW9uQnlUb2tlbih0b2tlbjogc3RyaW5nKTogUHJvbWlzZTxPcmdhbmlzYXRpb24+IHtcbiAgICAgICAgY29uc3Qgb3JncyA9IGF3YWl0IHRoaXMuQVBJLl9fcHJvdG9fXy5PcmdhbmlzYXRpb25zQnlUb2tlbih0b2tlbik7XG4gICAgICAgIGlmIChvcmdzLml0ZW1zLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGNvbnN0IG9yZyA9IG9yZ3MuaXRlbXNbMF07XG4gICAgICAgICAgICByZXR1cm4gdGhpcy50b2tlbklzRXhwaXJlZEZvck9yZyhvcmcpID8gbnVsbCA6IG9yZztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICB0b2tlbklzRXhwaXJlZEZvck9yZyhvcmc6IE9yZ2FuaXNhdGlvbik6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBleHBpcmF0aW9uRGF0ZSA9IG5ldyBEYXRlKG9yZy50b2tlbkV4cGlyZXNBdCk7XG4gICAgICAgIGNvbnN0IGRpZmZUaW1lID0gZXhwaXJhdGlvbkRhdGUuZ2V0VGltZSgpIC0gRGF0ZS5ub3coKTtcbiAgICAgICAgcmV0dXJuIGRpZmZUaW1lIDwgMDtcbiAgICB9XG5cbiAgICBhc3luYyBzb2Z0RGV0ZWxlT3JnKG9yZ0lEOiBzdHJpbmcpOiBQcm9taXNlPE9yZ2FuaXNhdGlvbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5BUEkuX19wcm90b19fLlVwZGF0ZU9yZ2FuaXNhdGlvbih7XG4gICAgICAgICAgICBpZDogb3JnSUQsXG4gICAgICAgICAgICBkZWxldGVkQXQ6IERhdGUubm93KCksXG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIGFzeW5jIHVwZGF0ZU9yZ2FuaXNhdGlvbihpbnB1dDogYW55KTogUHJvbWlzZTxPcmdhbmlzYXRpb24+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5VcGRhdGVPcmdhbmlzYXRpb24oaW5wdXQpO1xuICAgIH1cblxuICAgIGFzeW5jIGRlbGV0ZU9yZ2FuaXNhdGlvbihvcmdJRDogc3RyaW5nKTogUHJvbWlzZTxPcmdhbmlzYXRpb24+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5EZWxldGVPcmdhbmlzYXRpb24oeyBpZDogb3JnSUQgfSk7XG4gICAgfVxuXG4gICAgYXN5bmMgY3JlYXRlT3JnYW5pc2F0aW9uKGlucHV0OiBPcmdhbmlzYXRpb24pOiBQcm9taXNlPE9yZ2FuaXNhdGlvbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5BUEkuX19wcm90b19fLkNyZWF0ZU9yZ2FuaXNhdGlvbihpbnB1dCk7XG4gICAgfVxuXG4gICAgYXN5bmMgZ2V0T3JnYW5pc2F0aW9uKG9yZ0lEOiBzdHJpbmcpOiBQcm9taXNlPE9yZ2FuaXNhdGlvbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5BUEkuX19wcm90b19fLkdldE9yZ2FuaXNhdGlvbih7IGlkOiBvcmdJRCB9KTtcbiAgICB9XG5cbiAgICBhc3luYyBsaXN0T3JnYW5pc2F0aW9ucygpOiBQcm9taXNlPE9yZ2FuaXNhdGlvbltdPiB7XG4gICAgICAgIHJldHVybiB0aGlzLkFQSS5fX3Byb3RvX18uTGlzdE9yZ2FuaXNhdGlvbnMoKS50aGVuKChvcmdzKSA9PiBvcmdzLml0ZW1zKTtcbiAgICB9XG5cbiAgICBhc3luYyBnZXRPcmdhbmlzYXRpb25Gb3JTcGFjZShzcGFjZUlEOiBzdHJpbmcpOiBQcm9taXNlPE9yZ2FuaXNhdGlvbj4ge1xuICAgICAgICBjb25zdCBwcm9wZXJ0aWVzID0gYXdhaXQgdGhpcy5BUEkuX19wcm90b19fLkxpc3RQcm9wZXJ0aWVzKHtcbiAgICAgICAgICAgIHNwYWNlSUQ6IHsgZXE6IHNwYWNlSUQgfSxcbiAgICAgICAgfSk7XG4gICAgICAgIGxldCBvcmdzID0gcHJvcGVydGllcy5pdGVtcy5tYXAoKHByb3BlcnR5KSA9PiBwcm9wZXJ0eS5vcmdhbmlzYXRpb24pO1xuICAgICAgICBpZiAob3Jncy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgIHJldHVybiBvcmdzWzBdO1xuICAgICAgICB9XG4gICAgICAgIG9yZ3MgPSBvcmdzLmZpbHRlcigob3JnKSA9PiBvcmcuaWQgIT09IHRoaXMuc21hcnRlclBsYW5JRCk7XG4gICAgICAgIHJldHVybiBvcmdzLmxlbmd0aCA+IDAgPyBvcmdzWzBdIDogbnVsbDtcbiAgICB9XG59XG4iXX0=
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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XG5pbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQgeyBPcmdhbmlzYXRpb24sIFByb3BlcnR5IH0gZnJvbSBcIi4uLy4uL3R5cGVzLnNlcnZpY2VcIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICAgIHByb3ZpZGVkSW46IFwicm9vdFwiLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgT3JnYW5pc2F0aW9uU2VydmljZSB7XHJcbiAgICBzbWFydGVyUGxhbklEID0gXCI2ZTI4MjAxZi00Njc5LTRjMjktOWQyZC04YTMyNWY1N2NlZTlcIjtcclxuICAgIEFQSTogYW55OyAvL0FXUyBBUElTZXJ2aWNlXHJcblxyXG4gICAgY29uc3RydWN0b3IoQEluamVjdCgnY3VycmVudEFQSVNlcnZpY2UnKSBhcGlJbmplY3RlZDogYW55KSB7XHJcbiAgICAgICAgdGhpcy5BUEkgPSBhcGlJbmplY3RlZDtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBnZXRQcm9wZXJ0aWVzRm9yT3JnYW5pc2F0aW9uKFxyXG4gICAgICAgIG9yZ0lEOiBzdHJpbmcsXHJcbiAgICApOiBQcm9taXNlPEFycmF5PFByb3BlcnR5Pj4ge1xyXG4gICAgICAgIGNvbnN0IG9yZyA9IGF3YWl0IHRoaXMuQVBJLl9fcHJvdG9fXy5HZXRPcmdhbmlzYXRpb24oeyBpZDogb3JnSUQgfSk7XHJcbiAgICAgICAgaWYgKG9yZykge1xyXG4gICAgICAgICAgICByZXR1cm4gb3JnLnByb3BlcnRpZXMuaXRlbXM7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBbXTtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBnZXRPcmdhbmlzYXRpb25CeVRva2VuKHRva2VuOiBzdHJpbmcpOiBQcm9taXNlPE9yZ2FuaXNhdGlvbj4ge1xyXG4gICAgICAgIGNvbnN0IG9yZ3MgPSBhd2FpdCB0aGlzLkFQSS5fX3Byb3RvX18uT3JnYW5pc2F0aW9uc0J5VG9rZW4odG9rZW4pO1xyXG4gICAgICAgIGlmIChvcmdzLml0ZW1zLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgY29uc3Qgb3JnID0gb3Jncy5pdGVtc1swXTtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMudG9rZW5Jc0V4cGlyZWRGb3JPcmcob3JnKSA/IG51bGwgOiBvcmc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIHRva2VuSXNFeHBpcmVkRm9yT3JnKG9yZzogT3JnYW5pc2F0aW9uKTogYm9vbGVhbiB7XHJcbiAgICAgICAgY29uc3QgZXhwaXJhdGlvbkRhdGUgPSBuZXcgRGF0ZShvcmcudG9rZW5FeHBpcmVzQXQpO1xyXG4gICAgICAgIGNvbnN0IGRpZmZUaW1lID0gZXhwaXJhdGlvbkRhdGUuZ2V0VGltZSgpIC0gRGF0ZS5ub3coKTtcclxuICAgICAgICByZXR1cm4gZGlmZlRpbWUgPCAwO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIHNvZnREZXRlbGVPcmcob3JnSUQ6IHN0cmluZyk6IFByb21pc2U8T3JnYW5pc2F0aW9uPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5VcGRhdGVPcmdhbmlzYXRpb24oe1xyXG4gICAgICAgICAgICBpZDogb3JnSUQsXHJcbiAgICAgICAgICAgIGRlbGV0ZWRBdDogRGF0ZS5ub3coKSxcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyB1cGRhdGVPcmdhbmlzYXRpb24oaW5wdXQ6IGFueSk6IFByb21pc2U8T3JnYW5pc2F0aW9uPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5VcGRhdGVPcmdhbmlzYXRpb24oaW5wdXQpO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGRlbGV0ZU9yZ2FuaXNhdGlvbihvcmdJRDogc3RyaW5nKTogUHJvbWlzZTxPcmdhbmlzYXRpb24+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5BUEkuX19wcm90b19fLkRlbGV0ZU9yZ2FuaXNhdGlvbih7IGlkOiBvcmdJRCB9KTtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBjcmVhdGVPcmdhbmlzYXRpb24oaW5wdXQ6IE9yZ2FuaXNhdGlvbik6IFByb21pc2U8T3JnYW5pc2F0aW9uPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5DcmVhdGVPcmdhbmlzYXRpb24oaW5wdXQpO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGdldE9yZ2FuaXNhdGlvbihvcmdJRDogc3RyaW5nKTogUHJvbWlzZTxPcmdhbmlzYXRpb24+IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5BUEkuX19wcm90b19fLkdldE9yZ2FuaXNhdGlvbih7IGlkOiBvcmdJRCB9KTtcclxuICAgIH1cclxuXHJcbiAgICBhc3luYyBsaXN0T3JnYW5pc2F0aW9ucygpOiBQcm9taXNlPE9yZ2FuaXNhdGlvbltdPiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuQVBJLl9fcHJvdG9fXy5MaXN0T3JnYW5pc2F0aW9ucygpLnRoZW4oKG9yZ3MpID0+IG9yZ3MuaXRlbXMpO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIGdldE9yZ2FuaXNhdGlvbkZvclNwYWNlKHNwYWNlSUQ6IHN0cmluZyk6IFByb21pc2U8T3JnYW5pc2F0aW9uPiB7XHJcbiAgICAgICAgY29uc3QgcHJvcGVydGllcyA9IGF3YWl0IHRoaXMuQVBJLl9fcHJvdG9fXy5MaXN0UHJvcGVydGllcyh7XHJcbiAgICAgICAgICAgIHNwYWNlSUQ6IHsgZXE6IHNwYWNlSUQgfSxcclxuICAgICAgICB9KTtcclxuICAgICAgICBsZXQgb3JncyA9IHByb3BlcnRpZXMuaXRlbXMubWFwKChwcm9wZXJ0eSkgPT4gcHJvcGVydHkub3JnYW5pc2F0aW9uKTtcclxuICAgICAgICBpZiAob3Jncy5sZW5ndGggPT09IDEpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG9yZ3NbMF07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG9yZ3MgPSBvcmdzLmZpbHRlcigob3JnKSA9PiBvcmcuaWQgIT09IHRoaXMuc21hcnRlclBsYW5JRCk7XHJcbiAgICAgICAgcmV0dXJuIG9yZ3MubGVuZ3RoID4gMCA/IG9yZ3NbMF0gOiBudWxsO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==