@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.
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 -364
  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 -310
  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 +13009 -12992
  85. package/fesm2015/smarterplan-ngx-smarterplan-core.mjs.map +1 -1
  86. package/fesm2020/smarterplan-ngx-smarterplan-core.mjs +12258 -12241
  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 -74
  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 -840
  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 +1 -1
  169. package/public-api.d.ts +64 -64
  170. package/smarterplan-ngx-smarterplan-core.d.ts +5 -5
@@ -1,111 +1,111 @@
1
- /* eslint-disable no-case-declarations */
2
- /* eslint-disable class-methods-use-this */
3
- import { Injectable } from '@angular/core';
4
- import { PoiType, } from '../types.service';
5
- import * as i0 from "@angular/core";
6
- export class BaseTagService {
7
- constructor() { }
8
- async getHtmlToInject(tagType, object) {
9
- throw new Error(`getHtmlToInject is not implemented in the base class.
10
- Please override this method in your extended class.`);
11
- }
12
- getUrlForSeeDetails(object, tagType) {
13
- switch (tagType) {
14
- case PoiType.TICKET: {
15
- return `visit/${object.spaceID}/detail/${object.id}`;
16
- }
17
- case PoiType.EQUIPMENT: {
18
- return `visit/${object.spaceID}/equip/${object.id}`;
19
- }
20
- case PoiType.MEASURE: {
21
- return `visit/${object.spaceID}/measurement/${object.id}`;
22
- }
23
- case PoiType.DATA: {
24
- return `visit/${object.spaceID}/feature/${object.id}`;
25
- }
26
- case PoiType.DESK: {
27
- return `visit/${object.spaceID}/add_booking/${object.id}`;
28
- }
29
- default:
30
- return '';
31
- }
32
- }
33
- async prepareEquipmentHtml(equip) {
34
- throw new Error(`prepareEquipmentHtml is not implemented in the base class.
35
- Please override this method in your extended class.`);
36
- }
37
- async prepareTicketHtml(ticket) {
38
- throw new Error(`prepareTicketHtml is not implemented in the base class.
39
- Please override this method in your extended class.`);
40
- }
41
- async prepareFeatureHtml(feature) {
42
- throw new Error(`prepareFeatureHtml is not implemented in the base class.
43
- Please override this method in your extended class.`);
44
- }
45
- async prepareMeasurementHtml(measure) {
46
- throw new Error(`prepareMeasurementHtml is not implemented in the base class.
47
- Please override this method in your extended class.`);
48
- }
49
- async prepareDeskHtml(feature) {
50
- throw new Error(`prepareDeskHtml is not implemented in the base class.
51
- Please override this method in your extended class.`);
52
- }
53
- async prepareIndicatorHtml(feature) {
54
- throw new Error(`prepareDeskHtml is not implemented in the base class.
55
- Please override this method in your extended class.`);
56
- }
57
- async getSignedTagIconSource(tagIconSrc) {
58
- throw new Error(`getSignedTagIconSource is not implemented in the base class.`);
59
- }
60
- getIconTagImageForFeature(feature, poi) {
61
- // const tagIcon = JSON.parse(poi.tagIcon);
62
- // return tagIcon.src;
63
- throw new Error(`getIconTagImageForFeature is not implemented in the base class.
64
- Please override this method in your extended class.`);
65
- }
66
- getScriptForTag(object, tagType) {
67
- throw new Error(`getScriptForTag is not implemented in the base class.
68
- Please override this method in your extended class.`);
69
- }
70
- getAnnexeForCommentTypeInFeature(feature, commentType) {
71
- throw new Error(`getAnnexeForCommentTypeInFeature is not implemented in the base class.
72
- Please override this method in your extended class.`);
73
- }
74
- getBillboardMediaToEmbed(object) {
75
- throw new Error(`getBillboardMediaToEmbed is not implemented in the base class.
76
- Please override this method in your extended class.`);
77
- }
78
- onActionDetailClick(url) {
79
- throw new Error(`onActionDetailClick is not implemented in the base class.
80
- Please override this method in your extended class.`);
81
- }
82
- onActionAudioClick(audioCommentID) {
83
- throw new Error(`onActionDetailClick is not implemented in the base class.
84
- Please override this method in your extended class.`);
85
- }
86
- onActionVideoClick(url) {
87
- throw new Error(`onActionVideoClick is not implemented in the base class.
88
- Please override this method in your extended class.`);
89
- }
90
- onActionImageClick(imageCommentID) {
91
- throw new Error(`onActionImageClick is not implemented in the base class.
92
- Please override this method in your extended class.`);
93
- }
94
- onActionDocClick(url) {
95
- throw new Error(`onActionDocClick is not implemented in the base class.
96
- Please override this method in your extended class.`);
97
- }
98
- onActionYoutubeClick(url) {
99
- throw new Error(`onActionYoutubeClick is not implemented in the base class.
100
- Please override this method in your extended class.`);
101
- }
102
- }
103
- BaseTagService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: BaseTagService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
104
- BaseTagService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: BaseTagService, providedIn: 'root' });
105
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: BaseTagService, decorators: [{
106
- type: Injectable,
107
- args: [{
108
- providedIn: 'root',
109
- }]
110
- }], ctorParameters: function () { return []; } });
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnRlcnBsYW4tY29yZS9zcmMvbGliL3NlcnZpY2VzL3RhZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHlDQUF5QztBQUN6QywyQ0FBMkM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBTUwsT0FBTyxHQUlSLE1BQU0sa0JBQWtCLENBQUM7O0FBTTFCLE1BQU0sT0FBTyxjQUFjO0lBQ3pCLGdCQUFlLENBQUM7SUFFaEIsS0FBSyxDQUFDLGVBQWUsQ0FDbkIsT0FBZ0IsRUFDaEIsTUFBb0I7UUFFcEIsTUFBTSxJQUFJLEtBQUssQ0FBQzs0REFDd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxNQUFvQixFQUFFLE9BQWdCO1FBQ3hELFFBQVEsT0FBTyxFQUFFO1lBQ2YsS0FBSyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ25CLE9BQU8sU0FBUyxNQUFNLENBQUMsT0FBTyxXQUFXLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQzthQUN0RDtZQUNELEtBQUssT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUN0QixPQUFPLFNBQVMsTUFBTSxDQUFDLE9BQU8sVUFBVSxNQUFNLENBQUMsRUFBRSxFQUFFLENBQUM7YUFDckQ7WUFDRCxLQUFLLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDcEIsT0FBTyxTQUFTLE1BQU0sQ0FBQyxPQUFPLGdCQUFnQixNQUFNLENBQUMsRUFBRSxFQUFFLENBQUM7YUFDM0Q7WUFDRCxLQUFLLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDakIsT0FBTyxTQUFTLE1BQU0sQ0FBQyxPQUFPLFlBQVksTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDO2FBQ3ZEO1lBQ0QsS0FBSyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2pCLE9BQU8sU0FBUyxNQUFNLENBQUMsT0FBTyxnQkFBZ0IsTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDO2FBQzNEO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLENBQUM7U0FDYjtJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsb0JBQW9CLENBQUMsS0FBZ0I7UUFDekMsTUFBTSxJQUFJLEtBQUssQ0FBQzs0REFDd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBYztRQUNwQyxNQUFNLElBQUksS0FBSyxDQUFDOzZFQUN5RCxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxPQUFnQjtRQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDOzZFQUN5RCxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxPQUFnQjtRQUMzQyxNQUFNLElBQUksS0FBSyxDQUFDOzZFQUN5RCxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELEtBQUssQ0FBQyxlQUFlLENBQUMsT0FBZ0I7UUFDcEMsTUFBTSxJQUFJLEtBQUssQ0FBQzs2RUFDeUQsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxLQUFLLENBQUMsb0JBQW9CLENBQUMsT0FBZ0I7UUFDekMsTUFBTSxJQUFJLEtBQUssQ0FBQzs2RUFDeUQsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxLQUFLLENBQUMsc0JBQXNCLENBQUMsVUFBa0I7UUFDN0MsTUFBTSxJQUFJLEtBQUssQ0FDYiw4REFBOEQsQ0FDL0QsQ0FBQztJQUNKLENBQUM7SUFFRCx5QkFBeUIsQ0FBQyxPQUFxQixFQUFFLEdBQVE7UUFDdkQsMkNBQTJDO1FBQzNDLHNCQUFzQjtRQUN0QixNQUFNLElBQUksS0FBSyxDQUFDOzZFQUN5RCxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUFNLEVBQUUsT0FBZ0I7UUFDdEMsTUFBTSxJQUFJLEtBQUssQ0FBQzs0REFDd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFDRCxnQ0FBZ0MsQ0FDOUIsT0FBZ0IsRUFDaEIsV0FBd0I7UUFFeEIsTUFBTSxJQUFJLEtBQUssQ0FBQzs0REFDd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxNQUFvQjtRQUkzQyxNQUFNLElBQUksS0FBSyxDQUFDOzREQUN3QyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELG1CQUFtQixDQUFDLEdBQVc7UUFDN0IsTUFBTSxJQUFJLEtBQUssQ0FBQzs0REFDd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxjQUFzQjtRQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDOzREQUN3QyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELGtCQUFrQixDQUFDLEdBQVc7UUFDNUIsTUFBTSxJQUFJLEtBQUssQ0FBQzs0REFDd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxjQUFzQjtRQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDOzREQUN3QyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELGdCQUFnQixDQUFDLEdBQVc7UUFDMUIsTUFBTSxJQUFJLEtBQUssQ0FBQzs0REFDd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxHQUFXO1FBQzlCLE1BQU0sSUFBSSxLQUFLLENBQUM7NERBQ3dDLENBQUMsQ0FBQztJQUM1RCxDQUFDOzsyR0E1SFUsY0FBYzsrR0FBZCxjQUFjLGNBSGIsTUFBTTsyRkFHUCxjQUFjO2tCQUoxQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLWNhc2UtZGVjbGFyYXRpb25zICovXHJcbi8qIGVzbGludC1kaXNhYmxlIGNsYXNzLW1ldGhvZHMtdXNlLXRoaXMgKi9cclxuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIENvbW1lbnQsXHJcbiAgRGJPYmplY3RUeXBlLFxyXG4gIEVxdWlwbWVudCxcclxuICBGZWF0dXJlLFxyXG4gIFBPSSxcclxuICBQb2lUeXBlLFxyXG4gIFRhZ0FjdGlvbixcclxuICBUaWNrZXQsXHJcbiAgQ29tbWVudFR5cGUsXHJcbn0gZnJvbSAnLi4vdHlwZXMuc2VydmljZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLCBcclxufSlcclxuXHJcbmV4cG9ydCBjbGFzcyBCYXNlVGFnU2VydmljZSB7XHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG5cclxuICBhc3luYyBnZXRIdG1sVG9JbmplY3QoXHJcbiAgICB0YWdUeXBlOiBQb2lUeXBlLFxyXG4gICAgb2JqZWN0OiBEYk9iamVjdFR5cGVcclxuICApOiBQcm9taXNlPHN0cmluZz4ge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKGBnZXRIdG1sVG9JbmplY3QgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLiBcclxuICAgICAgICBQbGVhc2Ugb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4geW91ciBleHRlbmRlZCBjbGFzcy5gKTtcclxuICB9XHJcblxyXG4gIGdldFVybEZvclNlZURldGFpbHMob2JqZWN0OiBEYk9iamVjdFR5cGUsIHRhZ1R5cGU6IFBvaVR5cGUpOiBzdHJpbmcge1xyXG4gICAgc3dpdGNoICh0YWdUeXBlKSB7XHJcbiAgICAgIGNhc2UgUG9pVHlwZS5USUNLRVQ6IHtcclxuICAgICAgICByZXR1cm4gYHZpc2l0LyR7b2JqZWN0LnNwYWNlSUR9L2RldGFpbC8ke29iamVjdC5pZH1gO1xyXG4gICAgICB9XHJcbiAgICAgIGNhc2UgUG9pVHlwZS5FUVVJUE1FTlQ6IHtcclxuICAgICAgICByZXR1cm4gYHZpc2l0LyR7b2JqZWN0LnNwYWNlSUR9L2VxdWlwLyR7b2JqZWN0LmlkfWA7XHJcbiAgICAgIH1cclxuICAgICAgY2FzZSBQb2lUeXBlLk1FQVNVUkU6IHtcclxuICAgICAgICByZXR1cm4gYHZpc2l0LyR7b2JqZWN0LnNwYWNlSUR9L21lYXN1cmVtZW50LyR7b2JqZWN0LmlkfWA7XHJcbiAgICAgIH1cclxuICAgICAgY2FzZSBQb2lUeXBlLkRBVEE6IHtcclxuICAgICAgICByZXR1cm4gYHZpc2l0LyR7b2JqZWN0LnNwYWNlSUR9L2ZlYXR1cmUvJHtvYmplY3QuaWR9YDtcclxuICAgICAgfVxyXG4gICAgICBjYXNlIFBvaVR5cGUuREVTSzoge1xyXG4gICAgICAgIHJldHVybiBgdmlzaXQvJHtvYmplY3Quc3BhY2VJRH0vYWRkX2Jvb2tpbmcvJHtvYmplY3QuaWR9YDtcclxuICAgICAgfVxyXG4gICAgICBkZWZhdWx0OlxyXG4gICAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGFzeW5jIHByZXBhcmVFcXVpcG1lbnRIdG1sKGVxdWlwOiBFcXVpcG1lbnQpOiBQcm9taXNlPHN0cmluZz4ge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKGBwcmVwYXJlRXF1aXBtZW50SHRtbCBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGJhc2UgY2xhc3MuIFxyXG4gICAgICAgIFBsZWFzZSBvdmVycmlkZSB0aGlzIG1ldGhvZCBpbiB5b3VyIGV4dGVuZGVkIGNsYXNzLmApO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgcHJlcGFyZVRpY2tldEh0bWwodGlja2V0OiBUaWNrZXQpOiBQcm9taXNlPHN0cmluZz4ge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKGBwcmVwYXJlVGlja2V0SHRtbCBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGJhc2UgY2xhc3MuIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgUGxlYXNlIG92ZXJyaWRlIHRoaXMgbWV0aG9kIGluIHlvdXIgZXh0ZW5kZWQgY2xhc3MuYCk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBwcmVwYXJlRmVhdHVyZUh0bWwoZmVhdHVyZTogRmVhdHVyZSk6IFByb21pc2U8c3RyaW5nPiB7XHJcbiAgICB0aHJvdyBuZXcgRXJyb3IoYHByZXBhcmVGZWF0dXJlSHRtbCBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGJhc2UgY2xhc3MuIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgUGxlYXNlIG92ZXJyaWRlIHRoaXMgbWV0aG9kIGluIHlvdXIgZXh0ZW5kZWQgY2xhc3MuYCk7XHJcbiAgfVxyXG5cclxuICBhc3luYyBwcmVwYXJlTWVhc3VyZW1lbnRIdG1sKG1lYXN1cmU6IENvbW1lbnQpOiBQcm9taXNlPHN0cmluZz4ge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKGBwcmVwYXJlTWVhc3VyZW1lbnRIdG1sIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGUgYmFzZSBjbGFzcy4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBQbGVhc2Ugb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4geW91ciBleHRlbmRlZCBjbGFzcy5gKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIHByZXBhcmVEZXNrSHRtbChmZWF0dXJlOiBGZWF0dXJlKTogUHJvbWlzZTxzdHJpbmc+IHtcclxuICAgIHRocm93IG5ldyBFcnJvcihgcHJlcGFyZURlc2tIdG1sIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGUgYmFzZSBjbGFzcy4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBQbGVhc2Ugb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4geW91ciBleHRlbmRlZCBjbGFzcy5gKTtcclxuICB9XHJcblxyXG4gIGFzeW5jIHByZXBhcmVJbmRpY2F0b3JIdG1sKGZlYXR1cmU6IEZlYXR1cmUpOiBQcm9taXNlPHN0cmluZz4ge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKGBwcmVwYXJlRGVza0h0bWwgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLiBcclxuICAgICAgICAgICAgICAgICAgICAgICAgIFBsZWFzZSBvdmVycmlkZSB0aGlzIG1ldGhvZCBpbiB5b3VyIGV4dGVuZGVkIGNsYXNzLmApO1xyXG4gIH1cclxuXHJcbiAgYXN5bmMgZ2V0U2lnbmVkVGFnSWNvblNvdXJjZSh0YWdJY29uU3JjOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcclxuICAgIHRocm93IG5ldyBFcnJvcihcclxuICAgICAgYGdldFNpZ25lZFRhZ0ljb25Tb3VyY2UgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLmBcclxuICAgICk7XHJcbiAgfVxyXG5cclxuICBnZXRJY29uVGFnSW1hZ2VGb3JGZWF0dXJlKGZlYXR1cmU6IERiT2JqZWN0VHlwZSwgcG9pOiBQT0kpOiBzdHJpbmcge1xyXG4gICAgLy8gY29uc3QgdGFnSWNvbiA9IEpTT04ucGFyc2UocG9pLnRhZ0ljb24pO1xyXG4gICAgLy8gcmV0dXJuIHRhZ0ljb24uc3JjO1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKGBnZXRJY29uVGFnSW1hZ2VGb3JGZWF0dXJlIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGUgYmFzZSBjbGFzcy4gXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBQbGVhc2Ugb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4geW91ciBleHRlbmRlZCBjbGFzcy5gKTtcclxuICB9XHJcblxyXG4gIGdldFNjcmlwdEZvclRhZyhvYmplY3QsIHRhZ1R5cGU6IFBvaVR5cGUpOiBzdHJpbmcge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKGBnZXRTY3JpcHRGb3JUYWcgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLiBcclxuICAgICAgICBQbGVhc2Ugb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4geW91ciBleHRlbmRlZCBjbGFzcy5gKTtcclxuICB9XHJcbiAgZ2V0QW5uZXhlRm9yQ29tbWVudFR5cGVJbkZlYXR1cmUoXHJcbiAgICBmZWF0dXJlOiBGZWF0dXJlLFxyXG4gICAgY29tbWVudFR5cGU6IENvbW1lbnRUeXBlXHJcbiAgKTogc3RyaW5nIHtcclxuICAgIHRocm93IG5ldyBFcnJvcihgZ2V0QW5uZXhlRm9yQ29tbWVudFR5cGVJbkZlYXR1cmUgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLiBcclxuICAgICAgICBQbGVhc2Ugb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4geW91ciBleHRlbmRlZCBjbGFzcy5gKTtcclxuICB9XHJcblxyXG4gIGdldEJpbGxib2FyZE1lZGlhVG9FbWJlZChvYmplY3Q6IERiT2JqZWN0VHlwZSk6IHtcclxuICAgIGNvbW1lbnQ6IENvbW1lbnQ7XHJcbiAgICB0YWdEZXNjcmlwdGlvbjogc3RyaW5nO1xyXG4gIH0ge1xyXG4gICAgdGhyb3cgbmV3IEVycm9yKGBnZXRCaWxsYm9hcmRNZWRpYVRvRW1iZWQgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLiBcclxuICAgICAgICBQbGVhc2Ugb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4geW91ciBleHRlbmRlZCBjbGFzcy5gKTtcclxuICB9XHJcblxyXG4gIG9uQWN0aW9uRGV0YWlsQ2xpY2sodXJsOiBzdHJpbmcpIHtcclxuICAgIHRocm93IG5ldyBFcnJvcihgb25BY3Rpb25EZXRhaWxDbGljayBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGJhc2UgY2xhc3MuIFxyXG4gICAgICAgIFBsZWFzZSBvdmVycmlkZSB0aGlzIG1ldGhvZCBpbiB5b3VyIGV4dGVuZGVkIGNsYXNzLmApO1xyXG4gIH1cclxuXHJcbiAgb25BY3Rpb25BdWRpb0NsaWNrKGF1ZGlvQ29tbWVudElEOiBzdHJpbmcpIHtcclxuICAgIHRocm93IG5ldyBFcnJvcihgb25BY3Rpb25EZXRhaWxDbGljayBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGJhc2UgY2xhc3MuIFxyXG4gICAgICAgIFBsZWFzZSBvdmVycmlkZSB0aGlzIG1ldGhvZCBpbiB5b3VyIGV4dGVuZGVkIGNsYXNzLmApO1xyXG4gIH1cclxuXHJcbiAgb25BY3Rpb25WaWRlb0NsaWNrKHVybDogc3RyaW5nKSB7XHJcbiAgICB0aHJvdyBuZXcgRXJyb3IoYG9uQWN0aW9uVmlkZW9DbGljayBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGJhc2UgY2xhc3MuIFxyXG4gICAgICAgIFBsZWFzZSBvdmVycmlkZSB0aGlzIG1ldGhvZCBpbiB5b3VyIGV4dGVuZGVkIGNsYXNzLmApO1xyXG4gIH1cclxuXHJcbiAgb25BY3Rpb25JbWFnZUNsaWNrKGltYWdlQ29tbWVudElEOiBzdHJpbmcpIHtcclxuICAgIHRocm93IG5ldyBFcnJvcihgb25BY3Rpb25JbWFnZUNsaWNrIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGUgYmFzZSBjbGFzcy5cclxuICAgICAgICBQbGVhc2Ugb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4geW91ciBleHRlbmRlZCBjbGFzcy5gKTtcclxuICB9XHJcblxyXG4gIG9uQWN0aW9uRG9jQ2xpY2sodXJsOiBzdHJpbmcpIHtcclxuICAgIHRocm93IG5ldyBFcnJvcihgb25BY3Rpb25Eb2NDbGljayBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGJhc2UgY2xhc3MuIFxyXG4gICAgICAgIFBsZWFzZSBvdmVycmlkZSB0aGlzIG1ldGhvZCBpbiB5b3VyIGV4dGVuZGVkIGNsYXNzLmApO1xyXG4gIH1cclxuXHJcbiAgb25BY3Rpb25Zb3V0dWJlQ2xpY2sodXJsOiBzdHJpbmcpIHtcclxuICAgIHRocm93IG5ldyBFcnJvcihgb25BY3Rpb25Zb3V0dWJlQ2xpY2sgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLiBcclxuICAgICAgICBQbGVhc2Ugb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4geW91ciBleHRlbmRlZCBjbGFzcy5gKTtcclxuICB9XHJcbn1cclxuIl19
1
+ /* eslint-disable no-case-declarations */
2
+ /* eslint-disable class-methods-use-this */
3
+ import { Injectable } from '@angular/core';
4
+ import { PoiType, } from '../types.service';
5
+ import * as i0 from "@angular/core";
6
+ export class BaseTagService {
7
+ constructor() { }
8
+ async getHtmlToInject(tagType, object) {
9
+ throw new Error(`getHtmlToInject is not implemented in the base class.
10
+ Please override this method in your extended class.`);
11
+ }
12
+ getUrlForSeeDetails(object, tagType) {
13
+ switch (tagType) {
14
+ case PoiType.TICKET: {
15
+ return `visit/${object.spaceID}/detail/${object.id}`;
16
+ }
17
+ case PoiType.EQUIPMENT: {
18
+ return `visit/${object.spaceID}/equip/${object.id}`;
19
+ }
20
+ case PoiType.MEASURE: {
21
+ return `visit/${object.spaceID}/measurement/${object.id}`;
22
+ }
23
+ case PoiType.DATA: {
24
+ return `visit/${object.spaceID}/feature/${object.id}`;
25
+ }
26
+ case PoiType.DESK: {
27
+ return `visit/${object.spaceID}/add_booking/${object.id}`;
28
+ }
29
+ default:
30
+ return '';
31
+ }
32
+ }
33
+ async prepareEquipmentHtml(equip) {
34
+ throw new Error(`prepareEquipmentHtml is not implemented in the base class.
35
+ Please override this method in your extended class.`);
36
+ }
37
+ async prepareTicketHtml(ticket) {
38
+ throw new Error(`prepareTicketHtml is not implemented in the base class.
39
+ Please override this method in your extended class.`);
40
+ }
41
+ async prepareFeatureHtml(feature) {
42
+ throw new Error(`prepareFeatureHtml is not implemented in the base class.
43
+ Please override this method in your extended class.`);
44
+ }
45
+ async prepareMeasurementHtml(measure) {
46
+ throw new Error(`prepareMeasurementHtml is not implemented in the base class.
47
+ Please override this method in your extended class.`);
48
+ }
49
+ async prepareDeskHtml(feature) {
50
+ throw new Error(`prepareDeskHtml is not implemented in the base class.
51
+ Please override this method in your extended class.`);
52
+ }
53
+ async prepareIndicatorHtml(feature) {
54
+ throw new Error(`prepareDeskHtml is not implemented in the base class.
55
+ Please override this method in your extended class.`);
56
+ }
57
+ async getSignedTagIconSource(tagIconSrc) {
58
+ throw new Error(`getSignedTagIconSource is not implemented in the base class.`);
59
+ }
60
+ getIconTagImageForFeature(feature, poi) {
61
+ // const tagIcon = JSON.parse(poi.tagIcon);
62
+ // return tagIcon.src;
63
+ throw new Error(`getIconTagImageForFeature is not implemented in the base class.
64
+ Please override this method in your extended class.`);
65
+ }
66
+ getScriptForTag(object, tagType) {
67
+ throw new Error(`getScriptForTag is not implemented in the base class.
68
+ Please override this method in your extended class.`);
69
+ }
70
+ getAnnexeForCommentTypeInFeature(feature, commentType) {
71
+ throw new Error(`getAnnexeForCommentTypeInFeature is not implemented in the base class.
72
+ Please override this method in your extended class.`);
73
+ }
74
+ getBillboardMediaToEmbed(object) {
75
+ throw new Error(`getBillboardMediaToEmbed is not implemented in the base class.
76
+ Please override this method in your extended class.`);
77
+ }
78
+ onActionDetailClick(url) {
79
+ throw new Error(`onActionDetailClick is not implemented in the base class.
80
+ Please override this method in your extended class.`);
81
+ }
82
+ onActionAudioClick(audioCommentID) {
83
+ throw new Error(`onActionDetailClick is not implemented in the base class.
84
+ Please override this method in your extended class.`);
85
+ }
86
+ onActionVideoClick(url) {
87
+ throw new Error(`onActionVideoClick is not implemented in the base class.
88
+ Please override this method in your extended class.`);
89
+ }
90
+ onActionImageClick(imageCommentID) {
91
+ throw new Error(`onActionImageClick is not implemented in the base class.
92
+ Please override this method in your extended class.`);
93
+ }
94
+ onActionDocClick(url) {
95
+ throw new Error(`onActionDocClick is not implemented in the base class.
96
+ Please override this method in your extended class.`);
97
+ }
98
+ onActionYoutubeClick(url) {
99
+ throw new Error(`onActionYoutubeClick is not implemented in the base class.
100
+ Please override this method in your extended class.`);
101
+ }
102
+ }
103
+ BaseTagService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: BaseTagService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
104
+ BaseTagService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: BaseTagService, providedIn: 'root' });
105
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: BaseTagService, decorators: [{
106
+ type: Injectable,
107
+ args: [{
108
+ providedIn: 'root',
109
+ }]
110
+ }], ctorParameters: function () { return []; } });
111
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFnLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc21hcnRlcnBsYW4tY29yZS9zcmMvbGliL3NlcnZpY2VzL3RhZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHlDQUF5QztBQUN6QywyQ0FBMkM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBTUwsT0FBTyxHQUlSLE1BQU0sa0JBQWtCLENBQUM7O0FBTTFCLE1BQU0sT0FBTyxjQUFjO0lBQ3pCLGdCQUFlLENBQUM7SUFFaEIsS0FBSyxDQUFDLGVBQWUsQ0FDbkIsT0FBZ0IsRUFDaEIsTUFBb0I7UUFFcEIsTUFBTSxJQUFJLEtBQUssQ0FBQzs0REFDd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxNQUFvQixFQUFFLE9BQWdCO1FBQ3hELFFBQVEsT0FBTyxFQUFFO1lBQ2YsS0FBSyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ25CLE9BQU8sU0FBUyxNQUFNLENBQUMsT0FBTyxXQUFXLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQzthQUN0RDtZQUNELEtBQUssT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dCQUN0QixPQUFPLFNBQVMsTUFBTSxDQUFDLE9BQU8sVUFBVSxNQUFNLENBQUMsRUFBRSxFQUFFLENBQUM7YUFDckQ7WUFDRCxLQUFLLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFDcEIsT0FBTyxTQUFTLE1BQU0sQ0FBQyxPQUFPLGdCQUFnQixNQUFNLENBQUMsRUFBRSxFQUFFLENBQUM7YUFDM0Q7WUFDRCxLQUFLLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDakIsT0FBTyxTQUFTLE1BQU0sQ0FBQyxPQUFPLFlBQVksTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDO2FBQ3ZEO1lBQ0QsS0FBSyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2pCLE9BQU8sU0FBUyxNQUFNLENBQUMsT0FBTyxnQkFBZ0IsTUFBTSxDQUFDLEVBQUUsRUFBRSxDQUFDO2FBQzNEO1lBQ0Q7Z0JBQ0UsT0FBTyxFQUFFLENBQUM7U0FDYjtJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsb0JBQW9CLENBQUMsS0FBZ0I7UUFDekMsTUFBTSxJQUFJLEtBQUssQ0FBQzs0REFDd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBYztRQUNwQyxNQUFNLElBQUksS0FBSyxDQUFDOzZFQUN5RCxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxPQUFnQjtRQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDOzZFQUN5RCxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxPQUFnQjtRQUMzQyxNQUFNLElBQUksS0FBSyxDQUFDOzZFQUN5RCxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELEtBQUssQ0FBQyxlQUFlLENBQUMsT0FBZ0I7UUFDcEMsTUFBTSxJQUFJLEtBQUssQ0FBQzs2RUFDeUQsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxLQUFLLENBQUMsb0JBQW9CLENBQUMsT0FBZ0I7UUFDekMsTUFBTSxJQUFJLEtBQUssQ0FBQzs2RUFDeUQsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxLQUFLLENBQUMsc0JBQXNCLENBQUMsVUFBa0I7UUFDN0MsTUFBTSxJQUFJLEtBQUssQ0FDYiw4REFBOEQsQ0FDL0QsQ0FBQztJQUNKLENBQUM7SUFFRCx5QkFBeUIsQ0FBQyxPQUFxQixFQUFFLEdBQVE7UUFDdkQsMkNBQTJDO1FBQzNDLHNCQUFzQjtRQUN0QixNQUFNLElBQUksS0FBSyxDQUFDOzZFQUN5RCxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVELGVBQWUsQ0FBQyxNQUFNLEVBQUUsT0FBZ0I7UUFDdEMsTUFBTSxJQUFJLEtBQUssQ0FBQzs0REFDd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFDRCxnQ0FBZ0MsQ0FDOUIsT0FBZ0IsRUFDaEIsV0FBd0I7UUFFeEIsTUFBTSxJQUFJLEtBQUssQ0FBQzs0REFDd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxNQUFvQjtRQUkzQyxNQUFNLElBQUksS0FBSyxDQUFDOzREQUN3QyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELG1CQUFtQixDQUFDLEdBQVc7UUFDN0IsTUFBTSxJQUFJLEtBQUssQ0FBQzs0REFDd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxjQUFzQjtRQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDOzREQUN3QyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELGtCQUFrQixDQUFDLEdBQVc7UUFDNUIsTUFBTSxJQUFJLEtBQUssQ0FBQzs0REFDd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxjQUFzQjtRQUN2QyxNQUFNLElBQUksS0FBSyxDQUFDOzREQUN3QyxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVELGdCQUFnQixDQUFDLEdBQVc7UUFDMUIsTUFBTSxJQUFJLEtBQUssQ0FBQzs0REFDd0MsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxHQUFXO1FBQzlCLE1BQU0sSUFBSSxLQUFLLENBQUM7NERBQ3dDLENBQUMsQ0FBQztJQUM1RCxDQUFDOzsyR0E1SFUsY0FBYzsrR0FBZCxjQUFjLGNBSGIsTUFBTTsyRkFHUCxjQUFjO2tCQUoxQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLWNhc2UtZGVjbGFyYXRpb25zICovXG4vKiBlc2xpbnQtZGlzYWJsZSBjbGFzcy1tZXRob2RzLXVzZS10aGlzICovXG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBDb21tZW50LFxuICBEYk9iamVjdFR5cGUsXG4gIEVxdWlwbWVudCxcbiAgRmVhdHVyZSxcbiAgUE9JLFxuICBQb2lUeXBlLFxuICBUYWdBY3Rpb24sXG4gIFRpY2tldCxcbiAgQ29tbWVudFR5cGUsXG59IGZyb20gJy4uL3R5cGVzLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290JywgXG59KVxuXG5leHBvcnQgY2xhc3MgQmFzZVRhZ1NlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgYXN5bmMgZ2V0SHRtbFRvSW5qZWN0KFxuICAgIHRhZ1R5cGU6IFBvaVR5cGUsXG4gICAgb2JqZWN0OiBEYk9iamVjdFR5cGVcbiAgKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGdldEh0bWxUb0luamVjdCBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGJhc2UgY2xhc3MuIFxuICAgICAgICBQbGVhc2Ugb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4geW91ciBleHRlbmRlZCBjbGFzcy5gKTtcbiAgfVxuXG4gIGdldFVybEZvclNlZURldGFpbHMob2JqZWN0OiBEYk9iamVjdFR5cGUsIHRhZ1R5cGU6IFBvaVR5cGUpOiBzdHJpbmcge1xuICAgIHN3aXRjaCAodGFnVHlwZSkge1xuICAgICAgY2FzZSBQb2lUeXBlLlRJQ0tFVDoge1xuICAgICAgICByZXR1cm4gYHZpc2l0LyR7b2JqZWN0LnNwYWNlSUR9L2RldGFpbC8ke29iamVjdC5pZH1gO1xuICAgICAgfVxuICAgICAgY2FzZSBQb2lUeXBlLkVRVUlQTUVOVDoge1xuICAgICAgICByZXR1cm4gYHZpc2l0LyR7b2JqZWN0LnNwYWNlSUR9L2VxdWlwLyR7b2JqZWN0LmlkfWA7XG4gICAgICB9XG4gICAgICBjYXNlIFBvaVR5cGUuTUVBU1VSRToge1xuICAgICAgICByZXR1cm4gYHZpc2l0LyR7b2JqZWN0LnNwYWNlSUR9L21lYXN1cmVtZW50LyR7b2JqZWN0LmlkfWA7XG4gICAgICB9XG4gICAgICBjYXNlIFBvaVR5cGUuREFUQToge1xuICAgICAgICByZXR1cm4gYHZpc2l0LyR7b2JqZWN0LnNwYWNlSUR9L2ZlYXR1cmUvJHtvYmplY3QuaWR9YDtcbiAgICAgIH1cbiAgICAgIGNhc2UgUG9pVHlwZS5ERVNLOiB7XG4gICAgICAgIHJldHVybiBgdmlzaXQvJHtvYmplY3Quc3BhY2VJRH0vYWRkX2Jvb2tpbmcvJHtvYmplY3QuaWR9YDtcbiAgICAgIH1cbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAnJztcbiAgICB9XG4gIH1cblxuICBhc3luYyBwcmVwYXJlRXF1aXBtZW50SHRtbChlcXVpcDogRXF1aXBtZW50KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYHByZXBhcmVFcXVpcG1lbnRIdG1sIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGUgYmFzZSBjbGFzcy4gXG4gICAgICAgIFBsZWFzZSBvdmVycmlkZSB0aGlzIG1ldGhvZCBpbiB5b3VyIGV4dGVuZGVkIGNsYXNzLmApO1xuICB9XG5cbiAgYXN5bmMgcHJlcGFyZVRpY2tldEh0bWwodGlja2V0OiBUaWNrZXQpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHRocm93IG5ldyBFcnJvcihgcHJlcGFyZVRpY2tldEh0bWwgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLiBcbiAgICAgICAgICAgICAgICAgICAgICAgICBQbGVhc2Ugb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4geW91ciBleHRlbmRlZCBjbGFzcy5gKTtcbiAgfVxuXG4gIGFzeW5jIHByZXBhcmVGZWF0dXJlSHRtbChmZWF0dXJlOiBGZWF0dXJlKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYHByZXBhcmVGZWF0dXJlSHRtbCBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGJhc2UgY2xhc3MuIFxuICAgICAgICAgICAgICAgICAgICAgICAgIFBsZWFzZSBvdmVycmlkZSB0aGlzIG1ldGhvZCBpbiB5b3VyIGV4dGVuZGVkIGNsYXNzLmApO1xuICB9XG5cbiAgYXN5bmMgcHJlcGFyZU1lYXN1cmVtZW50SHRtbChtZWFzdXJlOiBDb21tZW50KTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYHByZXBhcmVNZWFzdXJlbWVudEh0bWwgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLiBcbiAgICAgICAgICAgICAgICAgICAgICAgICBQbGVhc2Ugb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4geW91ciBleHRlbmRlZCBjbGFzcy5gKTtcbiAgfVxuXG4gIGFzeW5jIHByZXBhcmVEZXNrSHRtbChmZWF0dXJlOiBGZWF0dXJlKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYHByZXBhcmVEZXNrSHRtbCBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGJhc2UgY2xhc3MuIFxuICAgICAgICAgICAgICAgICAgICAgICAgIFBsZWFzZSBvdmVycmlkZSB0aGlzIG1ldGhvZCBpbiB5b3VyIGV4dGVuZGVkIGNsYXNzLmApO1xuICB9XG5cbiAgYXN5bmMgcHJlcGFyZUluZGljYXRvckh0bWwoZmVhdHVyZTogRmVhdHVyZSk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBwcmVwYXJlRGVza0h0bWwgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLiBcbiAgICAgICAgICAgICAgICAgICAgICAgICBQbGVhc2Ugb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4geW91ciBleHRlbmRlZCBjbGFzcy5gKTtcbiAgfVxuXG4gIGFzeW5jIGdldFNpZ25lZFRhZ0ljb25Tb3VyY2UodGFnSWNvblNyYzogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmcgfCBudWxsPiB7XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgYGdldFNpZ25lZFRhZ0ljb25Tb3VyY2UgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLmBcbiAgICApO1xuICB9XG5cbiAgZ2V0SWNvblRhZ0ltYWdlRm9yRmVhdHVyZShmZWF0dXJlOiBEYk9iamVjdFR5cGUsIHBvaTogUE9JKTogc3RyaW5nIHtcbiAgICAvLyBjb25zdCB0YWdJY29uID0gSlNPTi5wYXJzZShwb2kudGFnSWNvbik7XG4gICAgLy8gcmV0dXJuIHRhZ0ljb24uc3JjO1xuICAgIHRocm93IG5ldyBFcnJvcihgZ2V0SWNvblRhZ0ltYWdlRm9yRmVhdHVyZSBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGJhc2UgY2xhc3MuIFxuICAgICAgICAgICAgICAgICAgICAgICAgIFBsZWFzZSBvdmVycmlkZSB0aGlzIG1ldGhvZCBpbiB5b3VyIGV4dGVuZGVkIGNsYXNzLmApO1xuICB9XG5cbiAgZ2V0U2NyaXB0Rm9yVGFnKG9iamVjdCwgdGFnVHlwZTogUG9pVHlwZSk6IHN0cmluZyB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBnZXRTY3JpcHRGb3JUYWcgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLiBcbiAgICAgICAgUGxlYXNlIG92ZXJyaWRlIHRoaXMgbWV0aG9kIGluIHlvdXIgZXh0ZW5kZWQgY2xhc3MuYCk7XG4gIH1cbiAgZ2V0QW5uZXhlRm9yQ29tbWVudFR5cGVJbkZlYXR1cmUoXG4gICAgZmVhdHVyZTogRmVhdHVyZSxcbiAgICBjb21tZW50VHlwZTogQ29tbWVudFR5cGVcbiAgKTogc3RyaW5nIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGdldEFubmV4ZUZvckNvbW1lbnRUeXBlSW5GZWF0dXJlIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGUgYmFzZSBjbGFzcy4gXG4gICAgICAgIFBsZWFzZSBvdmVycmlkZSB0aGlzIG1ldGhvZCBpbiB5b3VyIGV4dGVuZGVkIGNsYXNzLmApO1xuICB9XG5cbiAgZ2V0QmlsbGJvYXJkTWVkaWFUb0VtYmVkKG9iamVjdDogRGJPYmplY3RUeXBlKToge1xuICAgIGNvbW1lbnQ6IENvbW1lbnQ7XG4gICAgdGFnRGVzY3JpcHRpb246IHN0cmluZztcbiAgfSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBnZXRCaWxsYm9hcmRNZWRpYVRvRW1iZWQgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLiBcbiAgICAgICAgUGxlYXNlIG92ZXJyaWRlIHRoaXMgbWV0aG9kIGluIHlvdXIgZXh0ZW5kZWQgY2xhc3MuYCk7XG4gIH1cblxuICBvbkFjdGlvbkRldGFpbENsaWNrKHVybDogc3RyaW5nKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBvbkFjdGlvbkRldGFpbENsaWNrIGlzIG5vdCBpbXBsZW1lbnRlZCBpbiB0aGUgYmFzZSBjbGFzcy4gXG4gICAgICAgIFBsZWFzZSBvdmVycmlkZSB0aGlzIG1ldGhvZCBpbiB5b3VyIGV4dGVuZGVkIGNsYXNzLmApO1xuICB9XG5cbiAgb25BY3Rpb25BdWRpb0NsaWNrKGF1ZGlvQ29tbWVudElEOiBzdHJpbmcpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYG9uQWN0aW9uRGV0YWlsQ2xpY2sgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLiBcbiAgICAgICAgUGxlYXNlIG92ZXJyaWRlIHRoaXMgbWV0aG9kIGluIHlvdXIgZXh0ZW5kZWQgY2xhc3MuYCk7XG4gIH1cblxuICBvbkFjdGlvblZpZGVvQ2xpY2sodXJsOiBzdHJpbmcpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYG9uQWN0aW9uVmlkZW9DbGljayBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGJhc2UgY2xhc3MuIFxuICAgICAgICBQbGVhc2Ugb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4geW91ciBleHRlbmRlZCBjbGFzcy5gKTtcbiAgfVxuXG4gIG9uQWN0aW9uSW1hZ2VDbGljayhpbWFnZUNvbW1lbnRJRDogc3RyaW5nKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKGBvbkFjdGlvbkltYWdlQ2xpY2sgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLlxuICAgICAgICBQbGVhc2Ugb3ZlcnJpZGUgdGhpcyBtZXRob2QgaW4geW91ciBleHRlbmRlZCBjbGFzcy5gKTtcbiAgfVxuXG4gIG9uQWN0aW9uRG9jQ2xpY2sodXJsOiBzdHJpbmcpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYG9uQWN0aW9uRG9jQ2xpY2sgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLiBcbiAgICAgICAgUGxlYXNlIG92ZXJyaWRlIHRoaXMgbWV0aG9kIGluIHlvdXIgZXh0ZW5kZWQgY2xhc3MuYCk7XG4gIH1cblxuICBvbkFjdGlvbllvdXR1YmVDbGljayh1cmw6IHN0cmluZykge1xuICAgIHRocm93IG5ldyBFcnJvcihgb25BY3Rpb25Zb3V0dWJlQ2xpY2sgaXMgbm90IGltcGxlbWVudGVkIGluIHRoZSBiYXNlIGNsYXNzLiBcbiAgICAgICAgUGxlYXNlIG92ZXJyaWRlIHRoaXMgbWV0aG9kIGluIHlvdXIgZXh0ZW5kZWQgY2xhc3MuYCk7XG4gIH1cbn1cbiJdfQ==