@smarterplan/ngx-smarterplan-core 1.2.17 → 1.2.19

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 (109) hide show
  1. package/esm2020/lib/components/menu-bar/menu-bar.component.mjs +3 -3
  2. package/esm2020/lib/components/menu-bar/navigation-bar/navigation-bar.component.mjs +2 -2
  3. package/esm2020/lib/components/menu-bar/range-date-picker/range-date-picker.component.mjs +1 -1
  4. package/esm2020/lib/matterport-extensions/nest-thermostat/CanvasImage.mjs +1 -1
  5. package/esm2020/lib/matterport-extensions/nest-thermostat/PlaneRenderer.mjs +1 -1
  6. package/esm2020/lib/matterport-extensions/scene-component/SceneComponent.mjs +1 -1
  7. package/esm2020/lib/matterport-extensions/tv-player/TvPlayer.mjs +1 -1
  8. package/esm2020/lib/services/baseVisibility.service.mjs +1 -1
  9. package/esm2020/lib/services/filter.service.mjs +1 -1
  10. package/esm2020/lib/services/matterport-import.service.mjs +1 -1
  11. package/esm2020/lib/services/matterport.service.mjs +7 -4
  12. package/esm2020/lib/services/models/equipment.service.mjs +2 -2
  13. package/esm2020/lib/services/models/feature.service.mjs +1 -1
  14. package/esm2020/lib/services/models/measurement.service.mjs +2 -2
  15. package/esm2020/lib/services/models/object3D.service.mjs +1 -1
  16. package/esm2020/lib/services/models/poi.service.mjs +2 -2
  17. package/esm2020/lib/services/models/ticket.service.mjs +3 -3
  18. package/esm2020/lib/services/models/zone.service.mjs +1 -1
  19. package/esm2020/lib/services/navigator.service.mjs +22 -21
  20. package/esm2020/lib/services/tag.service.mjs +18 -18
  21. package/esm2020/lib/services/zoneChange.service.mjs +1 -1
  22. package/esm2020/public-api.mjs +1 -1
  23. package/fesm2015/smarterplan-ngx-smarterplan-core.mjs +55 -51
  24. package/fesm2015/smarterplan-ngx-smarterplan-core.mjs.map +1 -1
  25. package/fesm2020/smarterplan-ngx-smarterplan-core.mjs +52 -48
  26. package/fesm2020/smarterplan-ngx-smarterplan-core.mjs.map +1 -1
  27. package/lib/components/csv-export/csv-export.component.d.ts.map +1 -0
  28. package/lib/components/loader/loader.component.d.ts.map +1 -0
  29. package/lib/components/menu-bar/avatar/avatar.component.d.ts.map +1 -0
  30. package/lib/components/menu-bar/menu-bar.component.d.ts.map +1 -0
  31. package/lib/components/menu-bar/navigation-bar/navigation-bar.component.d.ts.map +1 -0
  32. package/lib/components/menu-bar/range-date-picker/range-date-picker.component.d.ts.map +1 -0
  33. package/lib/components/modal-switch-visit/modal-switch-visit.component.d.ts.map +1 -0
  34. package/lib/components/search-bar/search-bar.component.d.ts.map +1 -0
  35. package/lib/components/support-modal/support-modal.component.d.ts.map +1 -0
  36. package/lib/config.d.ts.map +1 -0
  37. package/lib/helpers.service.d.ts.map +1 -0
  38. package/lib/matterport-extensions/hsl-loader/HlsLoader.d.ts.map +1 -0
  39. package/lib/matterport-extensions/nest-thermostat/CanvasImage.d.ts.map +1 -0
  40. package/lib/matterport-extensions/nest-thermostat/CanvasRenderer.d.ts.map +1 -0
  41. package/lib/matterport-extensions/nest-thermostat/NestThermostat.d.ts.map +1 -0
  42. package/lib/matterport-extensions/nest-thermostat/PlaneRenderer.d.ts.map +1 -0
  43. package/lib/matterport-extensions/scene-component/SceneComponent.d.ts.map +1 -0
  44. package/lib/matterport-extensions/security-camera/SecurityCamera.d.ts.map +1 -0
  45. package/lib/matterport-extensions/tv-player/TvPlayer.d.ts.map +1 -0
  46. package/lib/matterport-extensions/video-renderer/VideoRenderer.d.ts.map +1 -0
  47. package/lib/matterport-extensions/view-frustum-mesh/ViewFrustumMesh.d.ts.map +1 -0
  48. package/lib/mattertagData.d.ts.map +1 -0
  49. package/lib/ngx-smarterplan-core.module.d.ts.map +1 -0
  50. package/lib/ngx-smarterplan-core.service.d.ts.map +1 -0
  51. package/lib/pipes/duration-to-string.pipe.d.ts.map +1 -0
  52. package/lib/pipes/format-date-number-to-digits.pipe.d.ts.map +1 -0
  53. package/lib/pipes/hashtag-from-id.pipe.d.ts.map +1 -0
  54. package/lib/pipes/safe-url.pipe.d.ts.map +1 -0
  55. package/lib/pipes/time-date-to-local-string.pipe.d.ts.map +1 -0
  56. package/lib/pipes/username-from-id.pipe.d.ts.map +1 -0
  57. package/lib/services/amplify-cache.service.d.ts.map +1 -0
  58. package/lib/services/base-tab.service.d.ts.map +1 -0
  59. package/lib/services/baseVisibility.service.d.ts.map +1 -0
  60. package/lib/services/content.service.d.ts.map +1 -0
  61. package/lib/services/filter.service.d.ts.map +1 -0
  62. package/lib/services/intervention.service.d.ts.map +1 -0
  63. package/lib/services/locale.service.d.ts.map +1 -0
  64. package/lib/services/matterport-import.service.d.ts.map +1 -0
  65. package/lib/services/matterport.service.d.ts.map +1 -0
  66. package/lib/services/models/affectation.service.d.ts.map +1 -0
  67. package/lib/services/models/base-object.service.d.ts.map +1 -0
  68. package/lib/services/models/capture.service.d.ts.map +1 -0
  69. package/lib/services/models/comment.service.d.ts.map +1 -0
  70. package/lib/services/models/domain.service.d.ts.map +1 -0
  71. package/lib/services/models/equipment.service.d.ts.map +1 -0
  72. package/lib/services/models/event.service.d.ts.map +1 -0
  73. package/lib/services/models/feature.service.d.ts.map +1 -0
  74. package/lib/services/models/hashtag.service.d.ts.map +1 -0
  75. package/lib/services/models/layer.service.d.ts.map +1 -0
  76. package/lib/services/models/measurement.service.d.ts.map +1 -0
  77. package/lib/services/models/mission.service.d.ts.map +1 -0
  78. package/lib/services/models/navigation.service.d.ts.map +1 -0
  79. package/lib/services/models/node.service.d.ts.map +1 -0
  80. package/lib/services/models/object3D.service.d.ts.map +1 -0
  81. package/lib/services/models/operation.service.d.ts.map +1 -0
  82. package/lib/services/models/organisation.service.d.ts.map +1 -0
  83. package/lib/services/models/plan.service.d.ts.map +1 -0
  84. package/lib/services/models/poi.service.d.ts.map +1 -0
  85. package/lib/services/models/profile.service.d.ts.map +1 -0
  86. package/lib/services/models/property.service.d.ts.map +1 -0
  87. package/lib/services/models/space.service.d.ts.map +1 -0
  88. package/lib/services/models/template.service.d.ts.map +1 -0
  89. package/lib/services/models/ticket.service.d.ts.map +1 -0
  90. package/lib/services/models/visit.service.d.ts.map +1 -0
  91. package/lib/services/models/zone.service.d.ts.map +1 -0
  92. package/lib/services/navigator.service.d.ts.map +1 -0
  93. package/lib/services/s3.service.d.ts.map +1 -0
  94. package/lib/services/search.service.d.ts.map +1 -0
  95. package/lib/services/support.service.d.ts.map +1 -0
  96. package/lib/services/tag.service.d.ts.map +1 -0
  97. package/lib/services/user.service.d.ts.map +1 -0
  98. package/lib/services/validators.service.d.ts.map +1 -0
  99. package/lib/services/viewer.service.d.ts.map +1 -0
  100. package/lib/services/zone-drawer.service.d.ts.map +1 -0
  101. package/lib/services/zoneChange.service.d.ts.map +1 -0
  102. package/lib/types.service.d.ts.map +1 -0
  103. package/lib/validators/email.directive.d.ts.map +1 -0
  104. package/lib/validators/no-empty.directive.d.ts.map +1 -0
  105. package/lib/validators/number.directive.d.ts.map +1 -0
  106. package/lib/validators/text.directive.d.ts.map +1 -0
  107. package/package.json +1 -1
  108. package/public-api.d.ts.map +1 -0
  109. package/smarterplan-ngx-smarterplan-core.d.ts.map +1 -0
@@ -1854,7 +1854,7 @@ class PoiService {
1854
1854
  }
1855
1855
  async createPOIForSpaceID(poi) {
1856
1856
  removeNullKeysFromObject(poi);
1857
- if (!!this.awsKinesisAnalytics && this.awsKinesisAnalytics.record()) {
1857
+ if (!!this.awsKinesisAnalytics && !!this.awsKinesisAnalytics.record && this.awsKinesisAnalytics.record()) {
1858
1858
  this.awsKinesisAnalytics.getInstance().record(
1859
1859
  // @ts-ignore
1860
1860
  {
@@ -2556,7 +2556,8 @@ class MatterportService {
2556
2556
  };
2557
2557
  this.config = config;
2558
2558
  // TODO: only for dev!
2559
- if (document.location.href.indexOf('dev') !== -1 || document.location.href.indexOf('localhost') !== -1) {
2559
+ if (!!this.getCursorPositionButton &&
2560
+ (document.location.href.indexOf('dev') !== -1 || document.location.href.indexOf('localhost') !== -1)) {
2560
2561
  this.intervalCursorPointerPosition = setInterval(() => {
2561
2562
  if (!this.poseMatterport) {
2562
2563
  return;
@@ -2694,7 +2695,7 @@ class MatterportService {
2694
2695
  // (we are about to validate, but it exists in sdk already)
2695
2696
  this.enable_following_tag(this.mattertagToFollow);
2696
2697
  }
2697
- if (document.URL.indexOf('https://dev.smarterplan.io') !== -1 || document.location.href.indexOf('localhost') !== -1) {
2698
+ if (!!this.getCursorPositionButton && !!this.getCursorPositionButton.style(document.URL.indexOf('https://dev.smarterplan.io') !== -1 || document.location.href.indexOf('localhost') !== -1)) {
2698
2699
  this.getCursorPositionButton.style.display = 'none';
2699
2700
  this.cursorPositionButtonDisplayed = false;
2700
2701
  }
@@ -2808,6 +2809,7 @@ class MatterportService {
2808
2809
  // renderer.shadowMap.bias = 0.0001;
2809
2810
  // renderer.shadowMap.type = three.PCFSoftShadowMap;
2810
2811
  // });
2812
+ // TODO: wait for MP ticket resolution before decomment these!
2811
2813
  // Wait until Showcase is actually playing....
2812
2814
  // this.sdk.Tag.data.subscribe({
2813
2815
  // onAdded: async function (index, item, collection) {
@@ -3706,7 +3708,8 @@ class MatterportService {
3706
3708
  this.getCursorPositionButton.removeEventListener('auxclick', this.pointerMiddleClickHandler);
3707
3709
  }
3708
3710
  // TODO: only for dev!
3709
- if (document.location.href.indexOf('dev') !== -1 || document.location.href.indexOf('localhost') !== -1) {
3711
+ if (!!this.getCursorPositionButton &&
3712
+ (document.location.href.indexOf('dev') !== -1 || document.location.href.indexOf('localhost') !== -1)) {
3710
3713
  clearInterval(this.intervalCursorPointerPosition);
3711
3714
  }
3712
3715
  }
@@ -6289,29 +6292,30 @@ class NavigatorService {
6289
6292
  this.currentAudioZones = audioZones;
6290
6293
  // filter out audio zone (not to show to user it's name)
6291
6294
  zonesForSweep = zonesForSweep.filter((zone) => !zone.audio);
6292
- if (zonesForSweep && zonesForSweep.length > 0) {
6293
- this.zonesSortedForCurrentSweep = zonesForSweep.sort((a, b) => {
6294
- if (a.sweepIDs.length === b.sweepIDs.length) {
6295
- // if the same amount of sweeps: floor == the whole space
6296
- if (a.layer && b.layer) {
6297
- // put type BUILDING at the end
6298
- return a.layer.name !== 'BUILDING'
6299
- ? -1
6300
- : b.layer.name !== 'BUILDING'
6301
- ? 1
6302
- : 0;
6303
- }
6304
- return a.parent?.sweepIDs ? -1 : b.parent?.sweepIDs ? 1 : 0;
6295
+ // LINE BELOW IS COMMENTED SINCE CREATES INFINITE SPINNER FOR ZONES WITHOUT AUDIO...
6296
+ // if (zonesForSweep && zonesForSweep.length > 0) {
6297
+ this.zonesSortedForCurrentSweep = zonesForSweep.sort((a, b) => {
6298
+ if (a.sweepIDs.length === b.sweepIDs.length) {
6299
+ // if the same amount of sweeps: floor == the whole space
6300
+ if (a.layer && b.layer) {
6301
+ // put type BUILDING at the end
6302
+ return a.layer.name !== 'BUILDING'
6303
+ ? -1
6304
+ : b.layer.name !== 'BUILDING'
6305
+ ? 1
6306
+ : 0;
6305
6307
  }
6306
- return a.sweepIDs.length - b.sweepIDs.length;
6307
- });
6308
- this.zoneChangeService.zonesForUserChange.next(this.zonesSortedForCurrentSweep);
6309
- if (this.zonesSortedForCurrentSweep.length > 0 &&
6310
- this.currentZone !== this.zonesSortedForCurrentSweep[0]) {
6311
- [this.currentZone] = this.zonesSortedForCurrentSweep;
6312
- this.zoneChangeService.zoneChange.next(this.currentZone);
6308
+ return a.parent?.sweepIDs ? -1 : b.parent?.sweepIDs ? 1 : 0;
6313
6309
  }
6310
+ return a.sweepIDs.length - b.sweepIDs.length;
6311
+ });
6312
+ this.zoneChangeService.zonesForUserChange.next(this.zonesSortedForCurrentSweep);
6313
+ if (this.zonesSortedForCurrentSweep.length > 0 &&
6314
+ this.currentZone !== this.zonesSortedForCurrentSweep[0]) {
6315
+ [this.currentZone] = this.zonesSortedForCurrentSweep;
6316
+ this.zoneChangeService.zoneChange.next(this.currentZone);
6314
6317
  }
6318
+ // }
6315
6319
  }
6316
6320
  }
6317
6321
  NavigatorService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: NavigatorService, deps: [{ token: MatterportService }, { token: ViewerService }, { token: ZoneService }, { token: BaseUserService }, { token: ZoneChangeService }], target: i0.ɵɵFactoryTarget.Injectable });
@@ -6748,7 +6752,7 @@ class TicketsService extends BaseObjectService {
6748
6752
  event.ownerID = event.ownerID ? event.ownerID : currentMission.id;
6749
6753
  try {
6750
6754
  const receivedEvent = await this.eventService.createEvent(event);
6751
- if (!!this.awsKinesisAnalytics && this.awsKinesisAnalytics.record()) {
6755
+ if (!!this.awsKinesisAnalytics && !!this.awsKinesisAnalytics.record && this.awsKinesisAnalytics.record()) {
6752
6756
  this.awsKinesisAnalytics.getInstance().record(
6753
6757
  // @ts-ignore
6754
6758
  {
@@ -6872,7 +6876,7 @@ class TicketsService extends BaseObjectService {
6872
6876
  return this.API.__proto__.GetTicket(id);
6873
6877
  }
6874
6878
  async createTicket(input) {
6875
- if (!!this.awsKinesisAnalytics && this.awsKinesisAnalytics.record()) {
6879
+ if (!!this.awsKinesisAnalytics && !!this.awsKinesisAnalytics.record && this.awsKinesisAnalytics.record()) {
6876
6880
  this.awsKinesisAnalytics.getInstance().record(
6877
6881
  // @ts-ignore
6878
6882
  {
@@ -7126,7 +7130,7 @@ class EquipmentService extends BaseObjectService {
7126
7130
  }
7127
7131
  async createEquipment(equip, imageFile, documentFile) {
7128
7132
  removeNullKeysFromObject(equip);
7129
- if (!!this.awsKinesisAnalytics && this.awsKinesisAnalytics.record()) {
7133
+ if (!!this.awsKinesisAnalytics && !!this.awsKinesisAnalytics.record && this.awsKinesisAnalytics.record()) {
7130
7134
  this.awsKinesisAnalytics.getInstance().record(
7131
7135
  // @ts-ignore
7132
7136
  {
@@ -10421,7 +10425,7 @@ class MeasurementService {
10421
10425
  comment,
10422
10426
  poi,
10423
10427
  };
10424
- if (!!this.awsKinesisAnalytics && this.awsKinesisAnalytics.record()) {
10428
+ if (!!this.awsKinesisAnalytics && !!this.awsKinesisAnalytics.record && this.awsKinesisAnalytics.record()) {
10425
10429
  this.awsKinesisAnalytics.getInstance().record(
10426
10430
  // @ts-ignore
10427
10431
  {
@@ -10938,7 +10942,7 @@ class NavigationBarComponent {
10938
10942
  }
10939
10943
  }
10940
10944
  async sendKinesisAnalyticsEventForZone(zoneId, zoneName) {
10941
- if (!!this.awsKinesisAnalytics && this.awsKinesisAnalytics.record()) {
10945
+ if (!!this.awsKinesisAnalytics && !!this.awsKinesisAnalytics.record && this.awsKinesisAnalytics.record()) {
10942
10946
  this.awsKinesisAnalytics.getInstance().record(
10943
10947
  // @ts-ignore
10944
10948
  {
@@ -11114,10 +11118,10 @@ class MenuBarComponent {
11114
11118
  }
11115
11119
  }
11116
11120
  MenuBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: MenuBarComponent, deps: [{ token: i1$1.Router }, { token: LocaleService }, { token: BaseUserService }, { token: NavigatorService }, { token: SupportService }, { token: BaseVisibilityService }], target: i0.ɵɵFactoryTarget.Component });
11117
- MenuBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: MenuBarComponent, selector: "lib-menu-bar", ngImport: i0, template: "<div id=\"menu-bar\">\n <div *ngIf=\"!isVisitor\">\n <nav class=\"navbar navbar-expand-md navbar-light p-0\">\n <div class=\"container-fluid\" *ngIf=\"isVisible\">\n <div class=\"navbar-brand\" [routerLink]=\"['/dashboard']\">\n <img alt=\"\" src=\"../assets/images/logos/logo-rvb-straight.png\">\n </div>\n <!-- <button class=\"navbar-toggler\" data-bs-target=\".navbar-collapse\" data-bs-toggle=\"collapse\" type=\"button\">\n <span class=\"navbar-toggler-icon\"></span>\n </button> -->\n <div class=\"collapse navbar-collapse\">\n <form class=\"form-inline ms-3\">\n <input class=\"form-control search-button\" placeholder=\"keyword\" id=\"mainSearchBar\" type=\"text\">\n <button class=\"btn btn-outline-primary rounded-pill me-2\" (click)=\"onSubmit()\">{{'Search' |\n translate}}</button>\n <lib-range-date-picker cacheName=\"mainDate\"></lib-range-date-picker>\n <div class=\"change-position-button\">\n <input type=\"checkbox\" class=\"btn-check\" id=\"btn-check-outlined\" autocomplete=\"off\">\n <label class=\"btn btn-outline-primary\" (click)=\"onChangePositionClick()\"\n for=\"btn-check-outlined\">{{\"Change position\" | translate}}</label>\n </div>\n </form>\n <div class=\"ms-auto nav-item dropdown\">\n <div class=\"profile_pic dropdown-toggle\" data-testid=\"dropdown-menu-button\" data-bs-toggle=\"dropdown\">\n <lib-avatar></lib-avatar>\n </div>\n <div class=\"dropdown-menu dropdown-menu-right\">\n <p *ngIf=\"user && mission\" class=\"p-2\">\n <span class=\"username\">{{ user.displayName }}</span><br />\n <span class=\"user-role\">{{ mission.role }}</span><br />\n <span class=\"org\">{{ mission.organisation ? mission.organisation.name : \"No organisation\" |\n translate}}</span>\n </p>\n <div class=\"dropdown-divider\"></div>\n <!-- <a class=\"dropdown-item\" routerLink=\"/debug\" *ngIf=\"isManager\">Debug</a> -->\n <a class=\"dropdown-item\" (click)=\"localeService.modal()\">{{'Language' | translate}}</a>\n <a class=\"dropdown-item\" routerLink=\"/dashboard\">{{'Data management' | translate}}</a>\n <a class=\"dropdown-item\" data-testid=\"user-management-btn\" routerLink=\"/admin\" *ngIf=\"isManager\">\n {{'Users management' | translate}}</a>\n <a class=\"dropdown-item\" routerLink=\"/profile\">\n {{'Profile' | translate}}</a>\n <div class=\"dropdown-divider\"></div>\n <button class=\"dropdown-item\" (click)=\"openSupportForm()\">{{\"Help\" | translate}}</button>\n <button data-testid=\"logout-auth-btn\" class=\"dropdown-item\" (click)=\"signOut()\">{{\"Logout\" |\n translate}}</button>\n </div>\n </div>\n </div>\n </div>\n </nav>\n <lib-navigation-bar *ngIf=\"isVisible && isChangePositionVisible\"></lib-navigation-bar>\n </div>\n <div *ngIf=\"isVisitor && isVisible\">\n <div class=\"visitor-div\">\n <div class=\"logo-container\" data-testid=\"dropdown-menu-button\">\n <img class=\"img-logo\" alt=\"SmarterPlanLogo\" src=\"../assets/images/logos/logo-reserve.png\">\n </div>\n <div class=\"avatar-container-menu\">\n <div class=\"profile_pic dropdown-toggle\" data-bs-toggle=\"dropdown\">\n <lib-avatar></lib-avatar>\n </div>\n <div class=\"dropdown-menu dropdown-menu-right\">\n <button class=\"dropdown-item\" (click)=\"localeService.modal()\">{{'Language' | translate}}</button>\n <button class=\"dropdown-item\" (click)=\"openSupportForm()\">{{\"Help\" | translate}}</button>\n <button data-testid=\"logout-auth-btn\" class=\"dropdown-item\" (click)=\"signOut()\">{{\"Logout\" |\n translate}}</button>\n </div>\n </div>\n </div>\n </div>\n</div>", styles: [":host{position:sticky;top:0;z-index:200}.navbar{z-index:200}.navbar-brand{padding-top:5px;padding-bottom:5px;cursor:pointer}.navbar-brand img{height:70px}.profile_pic{border-radius:50%;height:45px;width:45px;margin:8px;border:.2px solid #969696}.navbar-nav .profile-pic-container .dropdown-menu{position:absolute}.navbar.second-nav{z-index:199;background-color:var(--smarterplan-primary)}.profile_pic.dropdown-toggle:after{display:none}.navbar-light{border-bottom:1px solid var(--smarterplan-primary);background-color:#fff}input,select{margin-right:15px}.select{background:transparent;border:none;color:#fff;margin:6px 20px 0;width:auto}button{background-color:#fff;color:var(--smarterplan-primary);padding:5px 10px}button:disabled,button[disabled]{color:#c04f4f}.navbar-toggler{margin-right:1em}.icon{height:40px;width:40px;color:var(--smarterplan-primary)}.search-button{width:auto}.visitor-div{background-color:var(--smarterplan-primary);height:60px;display:flex;justify-content:space-between}.logo-container,.img-logo{height:100%}.change-position-button{margin-left:2rem}.change-position-button label,.change-position-button .btn-check:checked,.change-position-button .btn-check:focus,.change-position-button .btn-outline-primary,.change-position-button .btn{box-shadow:none!important;outline:0}.change-position-button label{border-radius:16px}.change-position-button .btn-check:checked+.btn{background-color:var(--smarterplan-primary);color:#fff!important}\n"], components: [{ type: RangeDatePickerComponent, selector: "lib-range-date-picker", inputs: ["cacheName"] }, { type: AvatarComponent, selector: "lib-avatar", inputs: ["size", "userID"] }, { type: NavigationBarComponent, selector: "lib-navigation-bar" }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$2.NgbNavbar, selector: ".navbar" }, { type: i1$1.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1$1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }], pipes: { "translate": i1.TranslatePipe } });
11121
+ MenuBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: MenuBarComponent, selector: "lib-menu-bar", ngImport: i0, template: "<div id=\"menu-bar\">\r\n <div *ngIf=\"!isVisitor\">\r\n <nav class=\"navbar navbar-expand-md navbar-light p-0\">\r\n <div class=\"container-fluid\" *ngIf=\"isVisible\">\r\n <div class=\"navbar-brand\" [routerLink]=\"['/dashboard']\">\r\n <img alt=\"\" src=\"../assets/images/logos/logo-rvb-straight.png\">\r\n </div>\r\n <!-- <button class=\"navbar-toggler\" data-bs-target=\".navbar-collapse\" data-bs-toggle=\"collapse\" type=\"button\">\r\n <span class=\"navbar-toggler-icon\"></span>\r\n </button> -->\r\n <div class=\"collapse navbar-collapse\">\r\n <form class=\"form-inline ms-3\">\r\n <input class=\"form-control search-button\" placeholder=\"keyword\" id=\"mainSearchBar\" type=\"text\">\r\n <button class=\"btn btn-outline-primary rounded-pill me-2\" (click)=\"onSubmit()\">{{'Search' |\r\n translate}}</button>\r\n <lib-range-date-picker cacheName=\"mainDate\"></lib-range-date-picker>\r\n <div class=\"change-position-button\">\r\n <input type=\"checkbox\" class=\"btn-check\" id=\"btn-check-outlined\" autocomplete=\"off\">\r\n <label class=\"btn btn-outline-primary\" (click)=\"onChangePositionClick()\"\r\n for=\"btn-check-outlined\">{{\"Change position\" | translate}}</label>\r\n </div>\r\n </form>\r\n <div class=\"ms-auto nav-item dropdown\">\r\n <div class=\"profile_pic dropdown-toggle\" data-testid=\"dropdown-menu-button\" data-bs-toggle=\"dropdown\">\r\n <lib-avatar></lib-avatar>\r\n </div>\r\n <div class=\"dropdown-menu dropdown-menu-right\">\r\n <p *ngIf=\"user && mission\" class=\"p-2\">\r\n <span class=\"username\">{{ user.displayName }}</span><br />\r\n <span class=\"user-role\">{{ mission.role }}</span><br />\r\n <span class=\"org\">{{ mission.organisation ? mission.organisation.name : \"No organisation\" |\r\n translate}}</span>\r\n </p>\r\n <div class=\"dropdown-divider\"></div>\r\n <!-- <a class=\"dropdown-item\" routerLink=\"/debug\" *ngIf=\"isManager\">Debug</a> -->\r\n <a class=\"dropdown-item\" (click)=\"localeService.modal()\">{{'Language' | translate}}</a>\r\n <a class=\"dropdown-item\" routerLink=\"/dashboard\">{{'Data management' | translate}}</a>\r\n <a class=\"dropdown-item\" data-testid=\"user-management-btn\" routerLink=\"/admin\" *ngIf=\"isManager\">\r\n {{'Users management' | translate}}</a>\r\n <a class=\"dropdown-item\" routerLink=\"/profile\">\r\n {{'Profile' | translate}}</a>\r\n <div class=\"dropdown-divider\"></div>\r\n <button class=\"dropdown-item\" (click)=\"openSupportForm()\">{{\"Help\" | translate}}</button>\r\n <button data-testid=\"logout-auth-btn\" class=\"dropdown-item\" (click)=\"signOut()\">{{\"Logout\" |\r\n translate}}</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </nav>\r\n <lib-navigation-bar *ngIf=\"isVisible && isChangePositionVisible\"></lib-navigation-bar>\r\n </div>\r\n <div *ngIf=\"isVisitor && isVisible\">\r\n <div class=\"visitor-div\">\r\n <div class=\"logo-container\" data-testid=\"dropdown-menu-button\">\r\n <img class=\"img-logo\" alt=\"SmarterPlanLogo\" src=\"../assets/images/logos/logo-reserve.png\">\r\n </div>\r\n <div class=\"avatar-container-menu\">\r\n <div class=\"profile_pic dropdown-toggle\" data-bs-toggle=\"dropdown\">\r\n <lib-avatar></lib-avatar>\r\n </div>\r\n <div class=\"dropdown-menu dropdown-menu-right\">\r\n <button class=\"dropdown-item\" (click)=\"localeService.modal()\">{{'Language' | translate}}</button>\r\n <button class=\"dropdown-item\" (click)=\"openSupportForm()\">{{\"Help\" | translate}}</button>\r\n <button data-testid=\"logout-auth-btn\" class=\"dropdown-item\" (click)=\"signOut()\">{{\"Logout\" |\r\n translate}}</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [":host{position:sticky;top:0;z-index:200}.navbar{z-index:200}.navbar-brand{padding-top:5px;padding-bottom:5px;cursor:pointer}.navbar-brand img{height:70px}.profile_pic{border-radius:50%;height:45px;width:45px;margin:8px;border:.2px solid #969696}.navbar-nav .profile-pic-container .dropdown-menu{position:absolute}.navbar.second-nav{z-index:199;background-color:var(--smarterplan-primary)}.profile_pic.dropdown-toggle:after{display:none}.navbar-light{border-bottom:1px solid var(--smarterplan-primary);background-color:#fff}input,select{margin-right:15px}.select{background:transparent;border:none;color:#fff;margin:6px 20px 0;width:auto}button{background-color:#fff;color:var(--smarterplan-primary);padding:5px 10px}button:disabled,button[disabled]{color:#c04f4f}.navbar-toggler{margin-right:1em}.icon{height:40px;width:40px;color:var(--smarterplan-primary)}.search-button{width:auto}.visitor-div{background-color:var(--smarterplan-primary);height:60px;display:flex;justify-content:space-between}.logo-container,.img-logo{height:100%}.change-position-button{margin-left:2rem}.change-position-button label,.change-position-button .btn-check:checked,.change-position-button .btn-check:focus,.change-position-button .btn-outline-primary,.change-position-button .btn{box-shadow:none!important;outline:0}.change-position-button label{border-radius:16px}.change-position-button .btn-check:checked+.btn{background-color:var(--smarterplan-primary);color:#fff!important}\n"], components: [{ type: RangeDatePickerComponent, selector: "lib-range-date-picker", inputs: ["cacheName"] }, { type: AvatarComponent, selector: "lib-avatar", inputs: ["size", "userID"] }, { type: NavigationBarComponent, selector: "lib-navigation-bar" }], directives: [{ type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$2.NgbNavbar, selector: ".navbar" }, { type: i1$1.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i3.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i1$1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }], pipes: { "translate": i1.TranslatePipe } });
11118
11122
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: MenuBarComponent, decorators: [{
11119
11123
  type: Component,
11120
- args: [{ selector: 'lib-menu-bar', template: "<div id=\"menu-bar\">\n <div *ngIf=\"!isVisitor\">\n <nav class=\"navbar navbar-expand-md navbar-light p-0\">\n <div class=\"container-fluid\" *ngIf=\"isVisible\">\n <div class=\"navbar-brand\" [routerLink]=\"['/dashboard']\">\n <img alt=\"\" src=\"../assets/images/logos/logo-rvb-straight.png\">\n </div>\n <!-- <button class=\"navbar-toggler\" data-bs-target=\".navbar-collapse\" data-bs-toggle=\"collapse\" type=\"button\">\n <span class=\"navbar-toggler-icon\"></span>\n </button> -->\n <div class=\"collapse navbar-collapse\">\n <form class=\"form-inline ms-3\">\n <input class=\"form-control search-button\" placeholder=\"keyword\" id=\"mainSearchBar\" type=\"text\">\n <button class=\"btn btn-outline-primary rounded-pill me-2\" (click)=\"onSubmit()\">{{'Search' |\n translate}}</button>\n <lib-range-date-picker cacheName=\"mainDate\"></lib-range-date-picker>\n <div class=\"change-position-button\">\n <input type=\"checkbox\" class=\"btn-check\" id=\"btn-check-outlined\" autocomplete=\"off\">\n <label class=\"btn btn-outline-primary\" (click)=\"onChangePositionClick()\"\n for=\"btn-check-outlined\">{{\"Change position\" | translate}}</label>\n </div>\n </form>\n <div class=\"ms-auto nav-item dropdown\">\n <div class=\"profile_pic dropdown-toggle\" data-testid=\"dropdown-menu-button\" data-bs-toggle=\"dropdown\">\n <lib-avatar></lib-avatar>\n </div>\n <div class=\"dropdown-menu dropdown-menu-right\">\n <p *ngIf=\"user && mission\" class=\"p-2\">\n <span class=\"username\">{{ user.displayName }}</span><br />\n <span class=\"user-role\">{{ mission.role }}</span><br />\n <span class=\"org\">{{ mission.organisation ? mission.organisation.name : \"No organisation\" |\n translate}}</span>\n </p>\n <div class=\"dropdown-divider\"></div>\n <!-- <a class=\"dropdown-item\" routerLink=\"/debug\" *ngIf=\"isManager\">Debug</a> -->\n <a class=\"dropdown-item\" (click)=\"localeService.modal()\">{{'Language' | translate}}</a>\n <a class=\"dropdown-item\" routerLink=\"/dashboard\">{{'Data management' | translate}}</a>\n <a class=\"dropdown-item\" data-testid=\"user-management-btn\" routerLink=\"/admin\" *ngIf=\"isManager\">\n {{'Users management' | translate}}</a>\n <a class=\"dropdown-item\" routerLink=\"/profile\">\n {{'Profile' | translate}}</a>\n <div class=\"dropdown-divider\"></div>\n <button class=\"dropdown-item\" (click)=\"openSupportForm()\">{{\"Help\" | translate}}</button>\n <button data-testid=\"logout-auth-btn\" class=\"dropdown-item\" (click)=\"signOut()\">{{\"Logout\" |\n translate}}</button>\n </div>\n </div>\n </div>\n </div>\n </nav>\n <lib-navigation-bar *ngIf=\"isVisible && isChangePositionVisible\"></lib-navigation-bar>\n </div>\n <div *ngIf=\"isVisitor && isVisible\">\n <div class=\"visitor-div\">\n <div class=\"logo-container\" data-testid=\"dropdown-menu-button\">\n <img class=\"img-logo\" alt=\"SmarterPlanLogo\" src=\"../assets/images/logos/logo-reserve.png\">\n </div>\n <div class=\"avatar-container-menu\">\n <div class=\"profile_pic dropdown-toggle\" data-bs-toggle=\"dropdown\">\n <lib-avatar></lib-avatar>\n </div>\n <div class=\"dropdown-menu dropdown-menu-right\">\n <button class=\"dropdown-item\" (click)=\"localeService.modal()\">{{'Language' | translate}}</button>\n <button class=\"dropdown-item\" (click)=\"openSupportForm()\">{{\"Help\" | translate}}</button>\n <button data-testid=\"logout-auth-btn\" class=\"dropdown-item\" (click)=\"signOut()\">{{\"Logout\" |\n translate}}</button>\n </div>\n </div>\n </div>\n </div>\n</div>", styles: [":host{position:sticky;top:0;z-index:200}.navbar{z-index:200}.navbar-brand{padding-top:5px;padding-bottom:5px;cursor:pointer}.navbar-brand img{height:70px}.profile_pic{border-radius:50%;height:45px;width:45px;margin:8px;border:.2px solid #969696}.navbar-nav .profile-pic-container .dropdown-menu{position:absolute}.navbar.second-nav{z-index:199;background-color:var(--smarterplan-primary)}.profile_pic.dropdown-toggle:after{display:none}.navbar-light{border-bottom:1px solid var(--smarterplan-primary);background-color:#fff}input,select{margin-right:15px}.select{background:transparent;border:none;color:#fff;margin:6px 20px 0;width:auto}button{background-color:#fff;color:var(--smarterplan-primary);padding:5px 10px}button:disabled,button[disabled]{color:#c04f4f}.navbar-toggler{margin-right:1em}.icon{height:40px;width:40px;color:var(--smarterplan-primary)}.search-button{width:auto}.visitor-div{background-color:var(--smarterplan-primary);height:60px;display:flex;justify-content:space-between}.logo-container,.img-logo{height:100%}.change-position-button{margin-left:2rem}.change-position-button label,.change-position-button .btn-check:checked,.change-position-button .btn-check:focus,.change-position-button .btn-outline-primary,.change-position-button .btn{box-shadow:none!important;outline:0}.change-position-button label{border-radius:16px}.change-position-button .btn-check:checked+.btn{background-color:var(--smarterplan-primary);color:#fff!important}\n"] }]
11124
+ args: [{ selector: 'lib-menu-bar', template: "<div id=\"menu-bar\">\r\n <div *ngIf=\"!isVisitor\">\r\n <nav class=\"navbar navbar-expand-md navbar-light p-0\">\r\n <div class=\"container-fluid\" *ngIf=\"isVisible\">\r\n <div class=\"navbar-brand\" [routerLink]=\"['/dashboard']\">\r\n <img alt=\"\" src=\"../assets/images/logos/logo-rvb-straight.png\">\r\n </div>\r\n <!-- <button class=\"navbar-toggler\" data-bs-target=\".navbar-collapse\" data-bs-toggle=\"collapse\" type=\"button\">\r\n <span class=\"navbar-toggler-icon\"></span>\r\n </button> -->\r\n <div class=\"collapse navbar-collapse\">\r\n <form class=\"form-inline ms-3\">\r\n <input class=\"form-control search-button\" placeholder=\"keyword\" id=\"mainSearchBar\" type=\"text\">\r\n <button class=\"btn btn-outline-primary rounded-pill me-2\" (click)=\"onSubmit()\">{{'Search' |\r\n translate}}</button>\r\n <lib-range-date-picker cacheName=\"mainDate\"></lib-range-date-picker>\r\n <div class=\"change-position-button\">\r\n <input type=\"checkbox\" class=\"btn-check\" id=\"btn-check-outlined\" autocomplete=\"off\">\r\n <label class=\"btn btn-outline-primary\" (click)=\"onChangePositionClick()\"\r\n for=\"btn-check-outlined\">{{\"Change position\" | translate}}</label>\r\n </div>\r\n </form>\r\n <div class=\"ms-auto nav-item dropdown\">\r\n <div class=\"profile_pic dropdown-toggle\" data-testid=\"dropdown-menu-button\" data-bs-toggle=\"dropdown\">\r\n <lib-avatar></lib-avatar>\r\n </div>\r\n <div class=\"dropdown-menu dropdown-menu-right\">\r\n <p *ngIf=\"user && mission\" class=\"p-2\">\r\n <span class=\"username\">{{ user.displayName }}</span><br />\r\n <span class=\"user-role\">{{ mission.role }}</span><br />\r\n <span class=\"org\">{{ mission.organisation ? mission.organisation.name : \"No organisation\" |\r\n translate}}</span>\r\n </p>\r\n <div class=\"dropdown-divider\"></div>\r\n <!-- <a class=\"dropdown-item\" routerLink=\"/debug\" *ngIf=\"isManager\">Debug</a> -->\r\n <a class=\"dropdown-item\" (click)=\"localeService.modal()\">{{'Language' | translate}}</a>\r\n <a class=\"dropdown-item\" routerLink=\"/dashboard\">{{'Data management' | translate}}</a>\r\n <a class=\"dropdown-item\" data-testid=\"user-management-btn\" routerLink=\"/admin\" *ngIf=\"isManager\">\r\n {{'Users management' | translate}}</a>\r\n <a class=\"dropdown-item\" routerLink=\"/profile\">\r\n {{'Profile' | translate}}</a>\r\n <div class=\"dropdown-divider\"></div>\r\n <button class=\"dropdown-item\" (click)=\"openSupportForm()\">{{\"Help\" | translate}}</button>\r\n <button data-testid=\"logout-auth-btn\" class=\"dropdown-item\" (click)=\"signOut()\">{{\"Logout\" |\r\n translate}}</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </nav>\r\n <lib-navigation-bar *ngIf=\"isVisible && isChangePositionVisible\"></lib-navigation-bar>\r\n </div>\r\n <div *ngIf=\"isVisitor && isVisible\">\r\n <div class=\"visitor-div\">\r\n <div class=\"logo-container\" data-testid=\"dropdown-menu-button\">\r\n <img class=\"img-logo\" alt=\"SmarterPlanLogo\" src=\"../assets/images/logos/logo-reserve.png\">\r\n </div>\r\n <div class=\"avatar-container-menu\">\r\n <div class=\"profile_pic dropdown-toggle\" data-bs-toggle=\"dropdown\">\r\n <lib-avatar></lib-avatar>\r\n </div>\r\n <div class=\"dropdown-menu dropdown-menu-right\">\r\n <button class=\"dropdown-item\" (click)=\"localeService.modal()\">{{'Language' | translate}}</button>\r\n <button class=\"dropdown-item\" (click)=\"openSupportForm()\">{{\"Help\" | translate}}</button>\r\n <button data-testid=\"logout-auth-btn\" class=\"dropdown-item\" (click)=\"signOut()\">{{\"Logout\" |\r\n translate}}</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [":host{position:sticky;top:0;z-index:200}.navbar{z-index:200}.navbar-brand{padding-top:5px;padding-bottom:5px;cursor:pointer}.navbar-brand img{height:70px}.profile_pic{border-radius:50%;height:45px;width:45px;margin:8px;border:.2px solid #969696}.navbar-nav .profile-pic-container .dropdown-menu{position:absolute}.navbar.second-nav{z-index:199;background-color:var(--smarterplan-primary)}.profile_pic.dropdown-toggle:after{display:none}.navbar-light{border-bottom:1px solid var(--smarterplan-primary);background-color:#fff}input,select{margin-right:15px}.select{background:transparent;border:none;color:#fff;margin:6px 20px 0;width:auto}button{background-color:#fff;color:var(--smarterplan-primary);padding:5px 10px}button:disabled,button[disabled]{color:#c04f4f}.navbar-toggler{margin-right:1em}.icon{height:40px;width:40px;color:var(--smarterplan-primary)}.search-button{width:auto}.visitor-div{background-color:var(--smarterplan-primary);height:60px;display:flex;justify-content:space-between}.logo-container,.img-logo{height:100%}.change-position-button{margin-left:2rem}.change-position-button label,.change-position-button .btn-check:checked,.change-position-button .btn-check:focus,.change-position-button .btn-outline-primary,.change-position-button .btn{box-shadow:none!important;outline:0}.change-position-button label{border-radius:16px}.change-position-button .btn-check:checked+.btn{background-color:var(--smarterplan-primary);color:#fff!important}\n"] }]
11121
11125
  }], ctorParameters: function () { return [{ type: i1$1.Router }, { type: LocaleService }, { type: BaseUserService }, { type: NavigatorService }, { type: SupportService }, { type: BaseVisibilityService }]; } });
11122
11126
 
11123
11127
  class NgxSmarterplanCoreModule {
@@ -11223,7 +11227,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImpor
11223
11227
  class BaseTagService {
11224
11228
  constructor() { }
11225
11229
  async getHtmlToInject(tagType, object) {
11226
- throw new Error(`getHtmlToInject is not implemented in the base class.
11230
+ throw new Error(`getHtmlToInject is not implemented in the base class.
11227
11231
  Please override this method in your extended class.`);
11228
11232
  }
11229
11233
  getUrlForSeeDetails(object, tagType) {
@@ -11248,27 +11252,27 @@ class BaseTagService {
11248
11252
  }
11249
11253
  }
11250
11254
  async prepareEquipmentHtml(equip) {
11251
- throw new Error(`prepareEquipmentHtml is not implemented in the base class.
11255
+ throw new Error(`prepareEquipmentHtml is not implemented in the base class.
11252
11256
  Please override this method in your extended class.`);
11253
11257
  }
11254
11258
  async prepareTicketHtml(ticket) {
11255
- throw new Error(`prepareTicketHtml is not implemented in the base class.
11259
+ throw new Error(`prepareTicketHtml is not implemented in the base class.
11256
11260
  Please override this method in your extended class.`);
11257
11261
  }
11258
11262
  async prepareFeatureHtml(feature) {
11259
- throw new Error(`prepareFeatureHtml is not implemented in the base class.
11263
+ throw new Error(`prepareFeatureHtml is not implemented in the base class.
11260
11264
  Please override this method in your extended class.`);
11261
11265
  }
11262
11266
  async prepareMeasurementHtml(measure) {
11263
- throw new Error(`prepareMeasurementHtml is not implemented in the base class.
11267
+ throw new Error(`prepareMeasurementHtml is not implemented in the base class.
11264
11268
  Please override this method in your extended class.`);
11265
11269
  }
11266
11270
  async prepareDeskHtml(feature) {
11267
- throw new Error(`prepareDeskHtml is not implemented in the base class.
11271
+ throw new Error(`prepareDeskHtml is not implemented in the base class.
11268
11272
  Please override this method in your extended class.`);
11269
11273
  }
11270
11274
  async prepareIndicatorHtml(feature) {
11271
- throw new Error(`prepareDeskHtml is not implemented in the base class.
11275
+ throw new Error(`prepareDeskHtml is not implemented in the base class.
11272
11276
  Please override this method in your extended class.`);
11273
11277
  }
11274
11278
  async getSignedTagIconSource(tagIconSrc) {
@@ -11277,43 +11281,43 @@ class BaseTagService {
11277
11281
  getIconTagImageForFeature(feature, poi) {
11278
11282
  // const tagIcon = JSON.parse(poi.tagIcon);
11279
11283
  // return tagIcon.src;
11280
- throw new Error(`getIconTagImageForFeature is not implemented in the base class.
11284
+ throw new Error(`getIconTagImageForFeature is not implemented in the base class.
11281
11285
  Please override this method in your extended class.`);
11282
11286
  }
11283
11287
  getScriptForTag(object, tagType) {
11284
- throw new Error(`getScriptForTag is not implemented in the base class.
11288
+ throw new Error(`getScriptForTag is not implemented in the base class.
11285
11289
  Please override this method in your extended class.`);
11286
11290
  }
11287
11291
  getAnnexeForCommentTypeInFeature(feature, commentType) {
11288
- throw new Error(`getAnnexeForCommentTypeInFeature is not implemented in the base class.
11292
+ throw new Error(`getAnnexeForCommentTypeInFeature is not implemented in the base class.
11289
11293
  Please override this method in your extended class.`);
11290
11294
  }
11291
11295
  getBillboardMediaToEmbed(object) {
11292
- throw new Error(`getBillboardMediaToEmbed is not implemented in the base class.
11296
+ throw new Error(`getBillboardMediaToEmbed is not implemented in the base class.
11293
11297
  Please override this method in your extended class.`);
11294
11298
  }
11295
11299
  onActionDetailClick(url) {
11296
- throw new Error(`onActionDetailClick is not implemented in the base class.
11300
+ throw new Error(`onActionDetailClick is not implemented in the base class.
11297
11301
  Please override this method in your extended class.`);
11298
11302
  }
11299
11303
  onActionAudioClick(audioCommentID) {
11300
- throw new Error(`onActionDetailClick is not implemented in the base class.
11304
+ throw new Error(`onActionDetailClick is not implemented in the base class.
11301
11305
  Please override this method in your extended class.`);
11302
11306
  }
11303
11307
  onActionVideoClick(url) {
11304
- throw new Error(`onActionVideoClick is not implemented in the base class.
11308
+ throw new Error(`onActionVideoClick is not implemented in the base class.
11305
11309
  Please override this method in your extended class.`);
11306
11310
  }
11307
11311
  onActionImageClick(imageCommentID) {
11308
- throw new Error(`onActionImageClick is not implemented in the base class.
11312
+ throw new Error(`onActionImageClick is not implemented in the base class.
11309
11313
  Please override this method in your extended class.`);
11310
11314
  }
11311
11315
  onActionDocClick(url) {
11312
- throw new Error(`onActionDocClick is not implemented in the base class.
11316
+ throw new Error(`onActionDocClick is not implemented in the base class.
11313
11317
  Please override this method in your extended class.`);
11314
11318
  }
11315
11319
  onActionYoutubeClick(url) {
11316
- throw new Error(`onActionYoutubeClick is not implemented in the base class.
11320
+ throw new Error(`onActionYoutubeClick is not implemented in the base class.
11317
11321
  Please override this method in your extended class.`);
11318
11322
  }
11319
11323
  }