@fundamental-ngx/core 0.35.2-rc.28 → 0.35.2-rc.30

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 (121) hide show
  1. package/action-bar/package.json +1 -1
  2. package/action-sheet/package.json +1 -1
  3. package/alert/package.json +1 -1
  4. package/avatar/package.json +1 -1
  5. package/avatar-group/package.json +1 -1
  6. package/bar/package.json +1 -1
  7. package/breadcrumb/breadcrumb.component.d.ts +18 -14
  8. package/breadcrumb/esm2020/breadcrumb.component.mjs +32 -21
  9. package/breadcrumb/fesm2015/fundamental-ngx-core-breadcrumb.mjs +30 -19
  10. package/breadcrumb/fesm2015/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
  11. package/breadcrumb/fesm2020/fundamental-ngx-core-breadcrumb.mjs +30 -19
  12. package/breadcrumb/fesm2020/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
  13. package/breadcrumb/package.json +1 -1
  14. package/busy-indicator/package.json +1 -1
  15. package/button/package.json +1 -1
  16. package/calendar/package.json +1 -1
  17. package/card/package.json +1 -1
  18. package/carousel/package.json +1 -1
  19. package/checkbox/package.json +1 -1
  20. package/combobox/package.json +1 -1
  21. package/content-density/package.json +3 -3
  22. package/date-picker/package.json +1 -1
  23. package/datetime/package.json +1 -1
  24. package/datetime-picker/package.json +1 -1
  25. package/dialog/package.json +1 -1
  26. package/dynamic-page/package.json +1 -1
  27. package/dynamic-side-content/package.json +1 -1
  28. package/esm2020/breadcrumb/breadcrumb.component.mjs +32 -21
  29. package/esm2020/illustrated-message/illustrated-message.component.mjs +28 -21
  30. package/esm2020/utils/interfaces/require.interface.mjs +2 -0
  31. package/esm2020/utils/public_api.mjs +2 -1
  32. package/facets/package.json +1 -1
  33. package/feed-input/package.json +1 -1
  34. package/feed-list-item/package.json +1 -1
  35. package/fesm2015/fundamental-ngx-core-breadcrumb.mjs +30 -19
  36. package/fesm2015/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
  37. package/fesm2015/fundamental-ngx-core-illustrated-message.mjs +27 -21
  38. package/fesm2015/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
  39. package/fesm2020/fundamental-ngx-core-breadcrumb.mjs +30 -19
  40. package/fesm2020/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
  41. package/fesm2020/fundamental-ngx-core-illustrated-message.mjs +26 -20
  42. package/fesm2020/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
  43. package/file-uploader/package.json +1 -1
  44. package/fixed-card-layout/package.json +1 -1
  45. package/flexible-column-layout/package.json +1 -1
  46. package/form/package.json +1 -1
  47. package/formatted-text/package.json +1 -1
  48. package/grid-list/package.json +1 -1
  49. package/icon/package.json +1 -1
  50. package/illustrated-message/esm2020/illustrated-message.component.mjs +28 -21
  51. package/illustrated-message/fesm2015/fundamental-ngx-core-illustrated-message.mjs +27 -21
  52. package/illustrated-message/fesm2015/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
  53. package/illustrated-message/fesm2020/fundamental-ngx-core-illustrated-message.mjs +26 -20
  54. package/illustrated-message/fesm2020/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
  55. package/illustrated-message/illustrated-message.component.d.ts +17 -15
  56. package/illustrated-message/package.json +1 -1
  57. package/infinite-scroll/package.json +1 -1
  58. package/info-label/package.json +1 -1
  59. package/inline-help/package.json +1 -1
  60. package/input-group/package.json +1 -1
  61. package/layout-grid/package.json +1 -1
  62. package/layout-panel/package.json +1 -1
  63. package/link/package.json +1 -1
  64. package/list/package.json +1 -1
  65. package/menu/package.json +1 -1
  66. package/message-box/package.json +1 -1
  67. package/message-strip/package.json +1 -1
  68. package/message-toast/package.json +1 -1
  69. package/micro-process-flow/package.json +1 -1
  70. package/mobile-mode/package.json +1 -1
  71. package/multi-input/package.json +1 -1
  72. package/nested-list/package.json +1 -1
  73. package/notification/package.json +1 -1
  74. package/object-identifier/package.json +1 -1
  75. package/object-marker/package.json +1 -1
  76. package/object-number/package.json +1 -1
  77. package/object-status/package.json +1 -1
  78. package/overflow-layout/package.json +13 -13
  79. package/package.json +1 -1
  80. package/pagination/package.json +1 -1
  81. package/panel/package.json +1 -1
  82. package/popover/package.json +1 -1
  83. package/product-switch/package.json +1 -1
  84. package/progress-indicator/package.json +1 -1
  85. package/quick-view/package.json +1 -1
  86. package/radio/package.json +1 -1
  87. package/rating-indicator/package.json +1 -1
  88. package/resizable-card-layout/package.json +1 -1
  89. package/scroll-spy/package.json +1 -1
  90. package/scrollbar/package.json +1 -1
  91. package/segmented-button/package.json +1 -1
  92. package/select/package.json +1 -1
  93. package/shared/package.json +1 -1
  94. package/shellbar/package.json +1 -1
  95. package/side-navigation/package.json +1 -1
  96. package/slider/package.json +1 -1
  97. package/split-button/package.json +1 -1
  98. package/splitter/package.json +1 -1
  99. package/status-indicator/package.json +1 -1
  100. package/step-input/package.json +1 -1
  101. package/switch/package.json +1 -1
  102. package/table/package.json +1 -1
  103. package/tabs/package.json +1 -1
  104. package/text/package.json +1 -1
  105. package/theming/package.json +1 -1
  106. package/tile/package.json +1 -1
  107. package/time/package.json +1 -1
  108. package/time-picker/package.json +1 -1
  109. package/timeline/package.json +1 -1
  110. package/title/package.json +1 -1
  111. package/token/package.json +1 -1
  112. package/toolbar/package.json +1 -1
  113. package/tree/package.json +1 -1
  114. package/upload-collection/package.json +1 -1
  115. package/utils/esm2020/interfaces/require.interface.mjs +2 -0
  116. package/utils/esm2020/public_api.mjs +2 -1
  117. package/utils/interfaces/require.interface.d.ts +6 -0
  118. package/utils/package.json +1 -1
  119. package/utils/public_api.d.ts +1 -0
  120. package/vertical-navigation/package.json +1 -1
  121. package/wizard/package.json +1 -1
@@ -1,15 +1,18 @@
1
1
  import { __decorate, __metadata } from "tslib";
2
2
  import { ChangeDetectorRef, ChangeDetectionStrategy, Component, ElementRef, HostBinding, Input, ViewEncapsulation } from '@angular/core';
3
+ import { DomSanitizer } from '@angular/platform-browser';
3
4
  import { applyCssClass } from '@fundamental-ngx/core/utils';
4
5
  import { fromEvent, Subscription } from 'rxjs';
5
6
  import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common";
7
+ import * as i1 from "@angular/platform-browser";
8
+ import * as i2 from "@angular/common";
7
9
  let illustratedMessageUniqueId = 0;
8
10
  export class IllustratedMessageComponent {
9
11
  /** @hidden */
10
- constructor(_elementRef, _cdRef) {
12
+ constructor(_elementRef, _cdRef, _sanitizer) {
11
13
  this._elementRef = _elementRef;
12
14
  this._cdRef = _cdRef;
15
+ this._sanitizer = _sanitizer;
13
16
  /**
14
17
  * The type of the Illustrated Message
15
18
  * Options include: 'scene' | 'spot' | 'dialog'
@@ -61,39 +64,42 @@ export class IllustratedMessageComponent {
61
64
  }
62
65
  /** @hidden */
63
66
  _constructHref() {
67
+ let inlineSvg;
68
+ this._inlineSvg = undefined;
64
69
  if (this.svgConfig) {
65
70
  switch (this.type) {
66
71
  case 'scene':
67
- {
68
- this._isSmallScreen = window.innerWidth < 600;
69
- this._href = this._isSmallScreen
70
- ? `${this.svgConfig.dialog?.url}#${this.svgConfig.dialog?.id}`
71
- : `${this.svgConfig.scene?.url}#${this.svgConfig.scene?.id}`;
72
- this._cdRef.detectChanges();
73
- }
72
+ this._isSmallScreen = window.innerWidth < 600;
73
+ inlineSvg = this._isSmallScreen ? this.svgConfig.dialog?.file : this.svgConfig.scene?.file;
74
+ this._href = this._isSmallScreen
75
+ ? `${this.svgConfig.dialog?.url || ''}#${this.svgConfig.dialog?.id}`
76
+ : `${this.svgConfig.scene?.url || ''}#${this.svgConfig.scene?.id}`;
74
77
  break;
75
78
  case 'dialog':
76
- {
77
- this._href = `${this.svgConfig.dialog?.url}#${this.svgConfig.dialog?.id}`;
78
- }
79
+ inlineSvg = this.svgConfig.dialog?.file;
80
+ this._href = `${this.svgConfig.dialog?.url || ''}#${this.svgConfig.dialog?.id}`;
79
81
  break;
80
82
  case 'spot':
81
- {
82
- this._href = `${this.svgConfig.spot?.url}#${this.svgConfig.spot?.id}`;
83
- }
83
+ inlineSvg = this.svgConfig.spot?.file;
84
+ this._href = `${this.svgConfig.spot?.url || ''}#${this.svgConfig.spot?.id}`;
84
85
  break;
85
86
  }
86
87
  }
88
+ if (inlineSvg) {
89
+ this._inlineSvg = this._sanitizer.bypassSecurityTrustHtml(inlineSvg);
90
+ }
91
+ this._cdRef.detectChanges();
87
92
  }
88
93
  }
89
- IllustratedMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: IllustratedMessageComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
94
+ IllustratedMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: IllustratedMessageComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
90
95
  IllustratedMessageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.4", type: IllustratedMessageComponent, selector: "[fd-illustrated-message]", inputs: { type: "type", svgConfig: "svgConfig", noSvg: "noSvg", id: "id", class: "class" }, host: { properties: { "attr.id": "this.id" } }, usesOnChanges: true, ngImport: i0, template: `
91
- <svg class="fd-illustrated-message__illustration" *ngIf="!noSvg">
96
+ <svg class="fd-illustrated-message__illustration" *ngIf="!noSvg || _inlineSvg">
92
97
  <use [attr.href]="_href"></use>
93
98
  </svg>
99
+ <div *ngIf="_inlineSvg" style="display: none;" [innerHTML]="_inlineSvg"></div>
94
100
  <ng-content select="[fd-illustrated-message-figcaption]"></ng-content>
95
101
  <ng-content select="fd-illustrated-message-actions"></ng-content>
96
- `, isInline: true, styles: ["/*!\n * Fundamental Library Styles v0.24.2\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-illustrated-message{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:auto;line-height:var(--sapContent_LineHeight);margin:5rem 0 0;max-width:30rem;padding:1rem;text-align:center;width:100%}.fd-illustrated-message:after,.fd-illustrated-message:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__illustration{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:15rem;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:20rem}.fd-illustrated-message__illustration:after,.fd-illustrated-message__illustration:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__figcaption{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:100%}.fd-illustrated-message__figcaption:after,.fd-illustrated-message__figcaption:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader2Size);font-weight:400;font-weight:var(--sapFontHeaderWeight);line-height:var(--sapContent_LineHeight);line-height:1.3;margin:2rem 0 .5rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__title:after,.fd-illustrated-message__title:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.4;margin:0 0 2rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__text:after,.fd-illustrated-message__text:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 0 2rem;padding:0;width:100%}.fd-illustrated-message__actions:after,.fd-illustrated-message__actions:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions *{margin:0 .25rem}@media screen and (max-width: 599px){.fd-illustrated-message{max-width:20rem}.fd-illustrated-message .fd-illustrated-message__illustration{height:10rem;width:10rem}}.fd-illustrated-message--dialog{margin-top:0;max-width:100%}.fd-illustrated-message--dialog .fd-illustrated-message__illustration{height:10rem;margin-bottom:2rem;margin-top:1rem;width:10rem}.fd-illustrated-message--dialog .fd-illustrated-message__title{font-size:var(--sapFontHeader4Size);margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--dialog .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);max-width:25rem}@media screen and (max-width: 599px){.fd-illustrated-message--dialog .fd-illustrated-message__text,.fd-illustrated-message--dialog .fd-illustrated-message__title{max-width:18rem}}.fd-illustrated-message--spot{margin-top:0;max-width:100%}.fd-illustrated-message--spot .fd-illustrated-message__illustration{height:8rem;margin:.5rem 0;padding:0;width:8rem}.fd-illustrated-message--spot .fd-illustrated-message__title{font-size:var(--sapFontHeader5Size);line-height:1.25;margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);margin:0 0 1rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__actions{margin:.5rem 0 1rem;padding:0}@media screen and (max-width: 599px){.fd-illustrated-message--spot .fd-illustrated-message__text,.fd-illustrated-message--spot .fd-illustrated-message__title{max-width:18rem}}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
102
+ `, isInline: true, styles: ["/*!\n * Fundamental Library Styles v0.24.2\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-illustrated-message{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:auto;line-height:var(--sapContent_LineHeight);margin:5rem 0 0;max-width:30rem;padding:1rem;text-align:center;width:100%}.fd-illustrated-message:after,.fd-illustrated-message:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__illustration{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:15rem;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:20rem}.fd-illustrated-message__illustration:after,.fd-illustrated-message__illustration:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__figcaption{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:100%}.fd-illustrated-message__figcaption:after,.fd-illustrated-message__figcaption:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader2Size);font-weight:400;font-weight:var(--sapFontHeaderWeight);line-height:var(--sapContent_LineHeight);line-height:1.3;margin:2rem 0 .5rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__title:after,.fd-illustrated-message__title:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.4;margin:0 0 2rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__text:after,.fd-illustrated-message__text:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 0 2rem;padding:0;width:100%}.fd-illustrated-message__actions:after,.fd-illustrated-message__actions:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions *{margin:0 .25rem}@media screen and (max-width: 599px){.fd-illustrated-message{max-width:20rem}.fd-illustrated-message .fd-illustrated-message__illustration{height:10rem;width:10rem}}.fd-illustrated-message--dialog{margin-top:0;max-width:100%}.fd-illustrated-message--dialog .fd-illustrated-message__illustration{height:10rem;margin-bottom:2rem;margin-top:1rem;width:10rem}.fd-illustrated-message--dialog .fd-illustrated-message__title{font-size:var(--sapFontHeader4Size);margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--dialog .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);max-width:25rem}@media screen and (max-width: 599px){.fd-illustrated-message--dialog .fd-illustrated-message__text,.fd-illustrated-message--dialog .fd-illustrated-message__title{max-width:18rem}}.fd-illustrated-message--spot{margin-top:0;max-width:100%}.fd-illustrated-message--spot .fd-illustrated-message__illustration{height:8rem;margin:.5rem 0;padding:0;width:8rem}.fd-illustrated-message--spot .fd-illustrated-message__title{font-size:var(--sapFontHeader5Size);line-height:1.25;margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);margin:0 0 1rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__actions{margin:.5rem 0 1rem;padding:0}@media screen and (max-width: 599px){.fd-illustrated-message--spot .fd-illustrated-message__text,.fd-illustrated-message--spot .fd-illustrated-message__title{max-width:18rem}}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
97
103
  __decorate([
98
104
  applyCssClass,
99
105
  __metadata("design:type", Function),
@@ -103,13 +109,14 @@ __decorate([
103
109
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: IllustratedMessageComponent, decorators: [{
104
110
  type: Component,
105
111
  args: [{ selector: '[fd-illustrated-message]', template: `
106
- <svg class="fd-illustrated-message__illustration" *ngIf="!noSvg">
112
+ <svg class="fd-illustrated-message__illustration" *ngIf="!noSvg || _inlineSvg">
107
113
  <use [attr.href]="_href"></use>
108
114
  </svg>
115
+ <div *ngIf="_inlineSvg" style="display: none;" [innerHTML]="_inlineSvg"></div>
109
116
  <ng-content select="[fd-illustrated-message-figcaption]"></ng-content>
110
117
  <ng-content select="fd-illustrated-message-actions"></ng-content>
111
118
  `, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["/*!\n * Fundamental Library Styles v0.24.2\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-illustrated-message{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:auto;line-height:var(--sapContent_LineHeight);margin:5rem 0 0;max-width:30rem;padding:1rem;text-align:center;width:100%}.fd-illustrated-message:after,.fd-illustrated-message:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__illustration{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:15rem;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:20rem}.fd-illustrated-message__illustration:after,.fd-illustrated-message__illustration:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__figcaption{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:100%}.fd-illustrated-message__figcaption:after,.fd-illustrated-message__figcaption:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader2Size);font-weight:400;font-weight:var(--sapFontHeaderWeight);line-height:var(--sapContent_LineHeight);line-height:1.3;margin:2rem 0 .5rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__title:after,.fd-illustrated-message__title:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.4;margin:0 0 2rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__text:after,.fd-illustrated-message__text:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 0 2rem;padding:0;width:100%}.fd-illustrated-message__actions:after,.fd-illustrated-message__actions:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions *{margin:0 .25rem}@media screen and (max-width: 599px){.fd-illustrated-message{max-width:20rem}.fd-illustrated-message .fd-illustrated-message__illustration{height:10rem;width:10rem}}.fd-illustrated-message--dialog{margin-top:0;max-width:100%}.fd-illustrated-message--dialog .fd-illustrated-message__illustration{height:10rem;margin-bottom:2rem;margin-top:1rem;width:10rem}.fd-illustrated-message--dialog .fd-illustrated-message__title{font-size:var(--sapFontHeader4Size);margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--dialog .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);max-width:25rem}@media screen and (max-width: 599px){.fd-illustrated-message--dialog .fd-illustrated-message__text,.fd-illustrated-message--dialog .fd-illustrated-message__title{max-width:18rem}}.fd-illustrated-message--spot{margin-top:0;max-width:100%}.fd-illustrated-message--spot .fd-illustrated-message__illustration{height:8rem;margin:.5rem 0;padding:0;width:8rem}.fd-illustrated-message--spot .fd-illustrated-message__title{font-size:var(--sapFontHeader5Size);line-height:1.25;margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);margin:0 0 1rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__actions{margin:.5rem 0 1rem;padding:0}@media screen and (max-width: 599px){.fd-illustrated-message--spot .fd-illustrated-message__text,.fd-illustrated-message--spot .fd-illustrated-message__title{max-width:18rem}}\n"] }]
112
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { type: [{
119
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.DomSanitizer }]; }, propDecorators: { type: [{
113
120
  type: Input
114
121
  }], svgConfig: [{
115
122
  type: Input
@@ -128,4 +135,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
128
135
  * function is responsible for order which css classes are applied
129
136
  */
130
137
  buildComponentCssClass: [] } });
131
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWxsdXN0cmF0ZWQtbWVzc2FnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9pbGx1c3RyYXRlZC1tZXNzYWdlL2lsbHVzdHJhdGVkLW1lc3NhZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBRUgsaUJBQWlCLEVBQ2pCLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxLQUFLLEVBSUwsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUU1RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBUS9DLElBQUksMEJBQTBCLEdBQUcsQ0FBQyxDQUFDO0FBaUJuQyxNQUFNLE9BQU8sMkJBQTJCO0lBMENwQyxjQUFjO0lBQ2QsWUFBb0IsV0FBdUIsRUFBVSxNQUF5QjtRQUExRCxnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUFVLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBMUM5RTs7OztXQUlHO1FBQ00sU0FBSSxHQUFnQyxPQUFPLENBQUM7UUFTckQ7OztXQUdHO1FBQ00sVUFBSyxHQUFHLEtBQUssQ0FBQztRQUV2Qjs7O1dBR0c7UUFHSCxPQUFFLEdBQVcseUJBQXlCLEdBQUcsMEJBQTBCLEVBQUUsQ0FBQztRQVl0RSxjQUFjO1FBQ04sbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBR3FDLENBQUM7SUFFbEYsY0FBYztJQUNkLFdBQVc7UUFDUCxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsY0FBYztJQUNkLFFBQVE7UUFDSixJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUM5QixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGNBQWM7SUFDZCxlQUFlO1FBQ1gsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRTtZQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQy9GO0lBQ0wsQ0FBQztJQUVELGNBQWM7SUFDZCxXQUFXO1FBQ1AsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBRUQsY0FBYztJQUNkLFVBQVU7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQU9ELEFBSkE7OztPQUdHO0lBQ0gsc0JBQXNCO1FBQ2xCLE9BQU8sQ0FBQyx3QkFBd0IsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQywyQkFBMkIsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNHLENBQUM7SUFFRCxjQUFjO0lBQ04sY0FBYztRQUNsQixJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDaEIsUUFBUSxJQUFJLENBQUMsSUFBSSxFQUFFO2dCQUNmLEtBQUssT0FBTztvQkFDUjt3QkFDSSxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDO3dCQUU5QyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxjQUFjOzRCQUM1QixDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxHQUFHLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFOzRCQUM5RCxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxHQUFHLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUM7d0JBQ2pFLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLENBQUM7cUJBQy9CO29CQUNELE1BQU07Z0JBRVYsS0FBSyxRQUFRO29CQUNUO3dCQUNJLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxHQUFHLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLENBQUM7cUJBQzdFO29CQUNELE1BQU07Z0JBRVYsS0FBSyxNQUFNO29CQUNQO3dCQUNJLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxHQUFHLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUM7cUJBQ3pFO29CQUNELE1BQU07YUFDYjtTQUNKO0lBQ0wsQ0FBQzs7d0hBOUdRLDJCQUEyQjs0R0FBM0IsMkJBQTJCLGlPQVoxQjs7Ozs7O0tBTVQ7QUFvRkQ7SUFMQyxhQUFhOzs7O3lFQU9iOzJGQWhGUSwyQkFBMkI7a0JBZnZDLFNBQVM7K0JBRUksMEJBQTBCLFlBQzFCOzs7Ozs7S0FNVCxpQkFHYyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNO2lJQVF0QyxJQUFJO3NCQUFaLEtBQUs7Z0JBT0csU0FBUztzQkFBakIsS0FBSztnQkFNRyxLQUFLO3NCQUFiLEtBQUs7Z0JBUU4sRUFBRTtzQkFGRCxLQUFLOztzQkFDTCxXQUFXO3VCQUFDLFNBQVM7Z0JBS3RCLEtBQUs7c0JBREosS0FBSzs7UUE0Q047OztXQUdHO1FBQ0gsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT25Jbml0LFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgYXBwbHlDc3NDbGFzcyB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS91dGlscyc7XG5pbXBvcnQgeyBDc3NDbGFzc0J1aWxkZXIgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBTdmdDb25maWcge1xuICAgIHNjZW5lPzogeyB1cmw6IHN0cmluZzsgaWQ6IHN0cmluZyB9O1xuICAgIGRpYWxvZz86IHsgdXJsOiBzdHJpbmc7IGlkOiBzdHJpbmcgfTtcbiAgICBzcG90PzogeyB1cmw6IHN0cmluZzsgaWQ6IHN0cmluZyB9O1xufVxuXG5sZXQgaWxsdXN0cmF0ZWRNZXNzYWdlVW5pcXVlSWQgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnW2ZkLWlsbHVzdHJhdGVkLW1lc3NhZ2VdJyxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8c3ZnIGNsYXNzPVwiZmQtaWxsdXN0cmF0ZWQtbWVzc2FnZV9faWxsdXN0cmF0aW9uXCIgKm5nSWY9XCIhbm9TdmdcIj5cbiAgICAgICAgICAgIDx1c2UgW2F0dHIuaHJlZl09XCJfaHJlZlwiPjwvdXNlPlxuICAgICAgICA8L3N2Zz5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZkLWlsbHVzdHJhdGVkLW1lc3NhZ2UtZmlnY2FwdGlvbl1cIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImZkLWlsbHVzdHJhdGVkLW1lc3NhZ2UtYWN0aW9uc1wiPjwvbmctY29udGVudD5cbiAgICBgLFxuICAgIHN0eWxlVXJsczogWycuL2lsbHVzdHJhdGVkLW1lc3NhZ2UuY29tcG9uZW50LnNjc3MnXSxcblxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgSWxsdXN0cmF0ZWRNZXNzYWdlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgQ3NzQ2xhc3NCdWlsZGVyIHtcbiAgICAvKipcbiAgICAgKiBUaGUgdHlwZSBvZiB0aGUgSWxsdXN0cmF0ZWQgTWVzc2FnZVxuICAgICAqIE9wdGlvbnMgaW5jbHVkZTogJ3NjZW5lJyB8ICdzcG90JyB8ICdkaWFsb2cnXG4gICAgICogVGhlIGRlZmF1bHQgdHlwZSBpcyBzZXQgdG8gJ3NjZW5lJ1xuICAgICAqL1xuICAgIEBJbnB1dCgpIHR5cGU6ICdzY2VuZScgfCAnZGlhbG9nJyB8ICdzcG90JyA9ICdzY2VuZSc7XG5cbiAgICAvKipcbiAgICAgKiBBbiBvYmplY3QgY29udGFpbmluZyB1cmwgYW5kIGlkIGZvciBlYWNoIHR5cGUgdXNlZCB0byBjb25zdHJ1Y3QgdGhlIHN2ZyBocmVmXG4gICAgICogRm9yICdzY2VuZScgdHlwZSAnc2NlbmUnIGFuZCAnZGlhbG9nJyB2YWx1ZXMgYXJlIHJlcXVpcmVkXG4gICAgICogSW4gc21hbGwgc2NyZWVucyAobGVzcyB0aGFuIDYwMHB4KSAnZGlhbG9nJyBzdmcgd2lsbCBiZSBhcHBsaWVkIGZvciAnc2NlbmUnIHR5cGVcbiAgICAgKi9cbiAgICBASW5wdXQoKSBzdmdDb25maWc6IFN2Z0NvbmZpZztcblxuICAgIC8qKlxuICAgICAqIFdoZW4gc2V0IHRvIHRydWUgd2lsbCByZW1vdmUgdGhlIGlsbHVzdHJhdGlvbiBmcm9tIHRoZSBJbGx1c3RyYXRlZCBNZXNzYWdlXG4gICAgICogVGhlIGRlZmF1bHQgaXMgc2V0IHRvIGZhbHNlXG4gICAgICovXG4gICAgQElucHV0KCkgbm9TdmcgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIElkIG9mIHRoZSBJbGx1c3RyYXRlZCBNZXNzYWdlXG4gICAgICogSWYgbm90IHByb3ZpZGVkLCBhIGRlZmF1bHQgb25lIGlzIGdlbmVyYXRlZFxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmlkJylcbiAgICBpZDogc3RyaW5nID0gJ2ZkLWlsbHVzdHJhdGVkLW1lc3NhZ2UtJyArIGlsbHVzdHJhdGVkTWVzc2FnZVVuaXF1ZUlkKys7XG5cbiAgICAvKiogVXNlcidzIGN1c3RvbSBjbGFzc2VzICovXG4gICAgQElucHV0KClcbiAgICBjbGFzczogc3RyaW5nO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfaHJlZjogc3RyaW5nO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfaXNTbWFsbFNjcmVlbjogYm9vbGVhbjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9ucyA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZiwgcHJpdmF0ZSBfY2RSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5idWlsZENvbXBvbmVudENzc0NsYXNzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5idWlsZENvbXBvbmVudENzc0NsYXNzKCk7XG4gICAgICAgIHRoaXMuX2NvbnN0cnVjdEhyZWYoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMudHlwZSA9PT0gJ3NjZW5lJykge1xuICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQoZnJvbUV2ZW50KHdpbmRvdywgJ3Jlc2l6ZScpLnN1YnNjcmliZSgoKSA9PiB0aGlzLl9jb25zdHJ1Y3RIcmVmKCkpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGVsZW1lbnRSZWYoKTogRWxlbWVudFJlZjxhbnk+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2VsZW1lbnRSZWY7XG4gICAgfVxuXG4gICAgQGFwcGx5Q3NzQ2xhc3NcbiAgICAvKiogQ3NzQ2xhc3NCdWlsZGVyIGludGVyZmFjZSBpbXBsZW1lbnRhdGlvblxuICAgICAqIGZ1bmN0aW9uIG11c3QgcmV0dXJuIHNpbmdsZSBzdHJpbmdcbiAgICAgKiBmdW5jdGlvbiBpcyByZXNwb25zaWJsZSBmb3Igb3JkZXIgd2hpY2ggY3NzIGNsYXNzZXMgYXJlIGFwcGxpZWRcbiAgICAgKi9cbiAgICBidWlsZENvbXBvbmVudENzc0NsYXNzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIFsnZmQtaWxsdXN0cmF0ZWQtbWVzc2FnZScsIHRoaXMudHlwZSA/IGBmZC1pbGx1c3RyYXRlZC1tZXNzYWdlLS0ke3RoaXMudHlwZX1gIDogJycsIHRoaXMuY2xhc3NdO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfY29uc3RydWN0SHJlZigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuc3ZnQ29uZmlnKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgICAgICAgICAgIGNhc2UgJ3NjZW5lJzpcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5faXNTbWFsbFNjcmVlbiA9IHdpbmRvdy5pbm5lcldpZHRoIDwgNjAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9ocmVmID0gdGhpcy5faXNTbWFsbFNjcmVlblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gYCR7dGhpcy5zdmdDb25maWcuZGlhbG9nPy51cmx9IyR7dGhpcy5zdmdDb25maWcuZGlhbG9nPy5pZH1gXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBgJHt0aGlzLnN2Z0NvbmZpZy5zY2VuZT8udXJsfSMke3RoaXMuc3ZnQ29uZmlnLnNjZW5lPy5pZH1gO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAnZGlhbG9nJzpcbiAgICAgICAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5faHJlZiA9IGAke3RoaXMuc3ZnQ29uZmlnLmRpYWxvZz8udXJsfSMke3RoaXMuc3ZnQ29uZmlnLmRpYWxvZz8uaWR9YDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBicmVhaztcblxuICAgICAgICAgICAgICAgIGNhc2UgJ3Nwb3QnOlxuICAgICAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9ocmVmID0gYCR7dGhpcy5zdmdDb25maWcuc3BvdD8udXJsfSMke3RoaXMuc3ZnQ29uZmlnLnNwb3Q/LmlkfWA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
138
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWxsdXN0cmF0ZWQtbWVzc2FnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9pbGx1c3RyYXRlZC1tZXNzYWdlL2lsbHVzdHJhdGVkLW1lc3NhZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBRUgsaUJBQWlCLEVBQ2pCLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxLQUFLLEVBSUwsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQVksTUFBTSwyQkFBMkIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsYUFBYSxFQUFrQixNQUFNLDZCQUE2QixDQUFDO0FBRTVFLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7O0FBZ0IvQyxJQUFJLDBCQUEwQixHQUFHLENBQUMsQ0FBQztBQWtCbkMsTUFBTSxPQUFPLDJCQUEyQjtJQWdEcEMsY0FBYztJQUNkLFlBQW9CLFdBQXVCLEVBQVUsTUFBeUIsRUFBVSxVQUF3QjtRQUE1RixnQkFBVyxHQUFYLFdBQVcsQ0FBWTtRQUFVLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBQVUsZUFBVSxHQUFWLFVBQVUsQ0FBYztRQWhEaEg7Ozs7V0FJRztRQUVILFNBQUksR0FBMkIsT0FBTyxDQUFDO1FBVXZDOzs7V0FHRztRQUVILFVBQUssR0FBRyxLQUFLLENBQUM7UUFFZDs7O1dBR0c7UUFHSCxPQUFFLEdBQVcseUJBQXlCLEdBQUcsMEJBQTBCLEVBQUUsQ0FBQztRQWV0RSxjQUFjO1FBQ04sbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0lBR3VFLENBQUM7SUFFcEgsY0FBYztJQUNkLFdBQVc7UUFDUCxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsY0FBYztJ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aEMsQ0FBQzs7d0hBeEhRLDJCQUEyQjs0R0FBM0IsMkJBQTJCLGlPQWIxQjs7Ozs7OztLQU9UO0FBMEZEO0lBTEMsYUFBYTs7Ozt5RUFPYjsyRkF0RlEsMkJBQTJCO2tCQWhCdkMsU0FBUzsrQkFFSSwwQkFBMEIsWUFDMUI7Ozs7Ozs7S0FPVCxpQkFHYyxpQkFBaUIsQ0FBQyxJQUFJLG1CQUNwQix1QkFBdUIsQ0FBQyxNQUFNOzRKQVMvQyxJQUFJO3NCQURILEtBQUs7Z0JBU04sU0FBUztzQkFEUixLQUFLO2dCQVFOLEtBQUs7c0JBREosS0FBSztnQkFTTixFQUFFO3NCQUZELEtBQUs7O3NCQUNMLFdBQVc7dUJBQUMsU0FBUztnQkFLdEIsS0FBSztzQkFESixLQUFLOztRQStDTjs7O1dBR0c7UUFDSCxzQkFBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5wdXQsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIsIFNhZmVIdG1sIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBhcHBseUNzc0NsYXNzLCBSZXF1aXJlT25seU9uZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS91dGlscyc7XG5pbXBvcnQgeyBDc3NDbGFzc0J1aWxkZXIgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcblxuZXhwb3J0IGludGVyZmFjZSBTdmdDb25maWcge1xuICAgIHNjZW5lPzogUmVxdWlyZU9ubHlPbmU8U3ZnSXRlbUNvbmZpZywgJ3VybCcgfCAnZmlsZSc+O1xuICAgIGRpYWxvZz86IFJlcXVpcmVPbmx5T25lPFN2Z0l0ZW1Db25maWcsICd1cmwnIHwgJ2ZpbGUnPjtcbiAgICBzcG90PzogUmVxdWlyZU9ubHlPbmU8U3ZnSXRlbUNvbmZpZywgJ3VybCcgfCAnZmlsZSc+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFN2Z0l0ZW1Db25maWcge1xuICAgIHVybDogc3RyaW5nO1xuICAgIGlkOiBzdHJpbmc7XG4gICAgZmlsZTogc3RyaW5nO1xufVxuXG5leHBvcnQgdHlwZSBJbGx1c3RyYXRlZE1lc3NhZ2VUeXBlID0gJ3NjZW5lJyB8ICdkaWFsb2cnIHwgJ3Nwb3QnO1xuXG5sZXQgaWxsdXN0cmF0ZWRNZXNzYWdlVW5pcXVlSWQgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnW2ZkLWlsbHVzdHJhdGVkLW1lc3NhZ2VdJyxcbiAgICB0ZW1wbGF0ZTogYFxuICAgICAgICA8c3ZnIGNsYXNzPVwiZmQtaWxsdXN0cmF0ZWQtbWVzc2FnZV9faWxsdXN0cmF0aW9uXCIgKm5nSWY9XCIhbm9TdmcgfHwgX2lubGluZVN2Z1wiPlxuICAgICAgICAgICAgPHVzZSBbYXR0ci5ocmVmXT1cIl9ocmVmXCI+PC91c2U+XG4gICAgICAgIDwvc3ZnPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiX2lubGluZVN2Z1wiIHN0eWxlPVwiZGlzcGxheTogbm9uZTtcIiBbaW5uZXJIVE1MXT1cIl9pbmxpbmVTdmdcIj48L2Rpdj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZkLWlsbHVzdHJhdGVkLW1lc3NhZ2UtZmlnY2FwdGlvbl1cIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImZkLWlsbHVzdHJhdGVkLW1lc3NhZ2UtYWN0aW9uc1wiPjwvbmctY29udGVudD5cbiAgICBgLFxuICAgIHN0eWxlVXJsczogWycuL2lsbHVzdHJhdGVkLW1lc3NhZ2UuY29tcG9uZW50LnNjc3MnXSxcblxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgSWxsdXN0cmF0ZWRNZXNzYWdlQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzLCBPbkRlc3Ryb3ksIE9uSW5pdCwgQ3NzQ2xhc3NCdWlsZGVyIHtcbiAgICAvKipcbiAgICAgKiBUaGUgdHlwZSBvZiB0aGUgSWxsdXN0cmF0ZWQgTWVzc2FnZVxuICAgICAqIE9wdGlvbnMgaW5jbHVkZTogJ3NjZW5lJyB8ICdzcG90JyB8ICdkaWFsb2cnXG4gICAgICogVGhlIGRlZmF1bHQgdHlwZSBpcyBzZXQgdG8gJ3NjZW5lJ1xuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgdHlwZTogSWxsdXN0cmF0ZWRNZXNzYWdlVHlwZSA9ICdzY2VuZSc7XG5cbiAgICAvKipcbiAgICAgKiBBbiBvYmplY3QgY29udGFpbmluZyB1cmwgYW5kIGlkIGZvciBlYWNoIHR5cGUgdXNlZCB0byBjb25zdHJ1Y3QgdGhlIHN2ZyBocmVmXG4gICAgICogRm9yICdzY2VuZScgdHlwZSAnc2NlbmUnIGFuZCAnZGlhbG9nJyB2YWx1ZXMgYXJlIHJlcXVpcmVkXG4gICAgICogSW4gc21hbGwgc2NyZWVucyAobGVzcyB0aGFuIDYwMHB4KSAnZGlhbG9nJyBzdmcgd2lsbCBiZSBhcHBsaWVkIGZvciAnc2NlbmUnIHR5cGVcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHN2Z0NvbmZpZzogU3ZnQ29uZmlnO1xuXG4gICAgLyoqXG4gICAgICogV2hlbiBzZXQgdG8gdHJ1ZSB3aWxsIHJlbW92ZSB0aGUgaWxsdXN0cmF0aW9uIGZyb20gdGhlIElsbHVzdHJhdGVkIE1lc3NhZ2VcbiAgICAgKiBUaGUgZGVmYXVsdCBpcyBzZXQgdG8gZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIG5vU3ZnID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBJZCBvZiB0aGUgSWxsdXN0cmF0ZWQgTWVzc2FnZVxuICAgICAqIElmIG5vdCBwcm92aWRlZCwgYSBkZWZhdWx0IG9uZSBpcyBnZW5lcmF0ZWRcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnYXR0ci5pZCcpXG4gICAgaWQ6IHN0cmluZyA9ICdmZC1pbGx1c3RyYXRlZC1tZXNzYWdlLScgKyBpbGx1c3RyYXRlZE1lc3NhZ2VVbmlxdWVJZCsrO1xuXG4gICAgLyoqIFVzZXIncyBjdXN0b20gY2xhc3NlcyAqL1xuICAgIEBJbnB1dCgpXG4gICAgY2xhc3M6IHN0cmluZztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2hyZWY6IHN0cmluZztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2lzU21hbGxTY3JlZW46IGJvb2xlYW47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9pbmxpbmVTdmc6IFNhZmVIdG1sIHwgdW5kZWZpbmVkO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zdWJzY3JpcHRpb25zID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLCBwcml2YXRlIF9jZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHByaXZhdGUgX3Nhbml0aXplcjogRG9tU2FuaXRpemVyKSB7fVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5idWlsZENvbXBvbmVudENzc0NsYXNzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5idWlsZENvbXBvbmVudENzc0NsYXNzKCk7XG4gICAgICAgIHRoaXMuX2NvbnN0cnVjdEhyZWYoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMudHlwZSA9PT0gJ3NjZW5lJykge1xuICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQoZnJvbUV2ZW50KHdpbmRvdywgJ3Jlc2l6ZScpLnN1YnNjcmliZSgoKSA9PiB0aGlzLl9jb25zdHJ1Y3RIcmVmKCkpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGVsZW1lbnRSZWYoKTogRWxlbWVudFJlZiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9lbGVtZW50UmVmO1xuICAgIH1cblxuICAgIEBhcHBseUNzc0NsYXNzXG4gICAgLyoqIENzc0NsYXNzQnVpbGRlciBpbnRlcmZhY2UgaW1wbGVtZW50YXRpb25cbiAgICAgKiBmdW5jdGlvbiBtdXN0IHJldHVybiBzaW5nbGUgc3RyaW5nXG4gICAgICogZnVuY3Rpb24gaXMgcmVzcG9uc2libGUgZm9yIG9yZGVyIHdoaWNoIGNzcyBjbGFzc2VzIGFyZSBhcHBsaWVkXG4gICAgICovXG4gICAgYnVpbGRDb21wb25lbnRDc3NDbGFzcygpOiBzdHJpbmdbXSB7XG4gICAgICAgIHJldHVybiBbJ2ZkLWlsbHVzdHJhdGVkLW1lc3NhZ2UnLCB0aGlzLnR5cGUgPyBgZmQtaWxsdXN0cmF0ZWQtbWVzc2FnZS0tJHt0aGlzLnR5cGV9YCA6ICcnLCB0aGlzLmNsYXNzXTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2NvbnN0cnVjdEhyZWYoKTogdm9pZCB7XG4gICAgICAgIGxldCBpbmxpbmVTdmc7XG4gICAgICAgIHRoaXMuX2lubGluZVN2ZyA9IHVuZGVmaW5lZDtcbiAgICAgICAgaWYgKHRoaXMuc3ZnQ29uZmlnKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKHRoaXMudHlwZSkge1xuICAgICAgICAgICAgICAgIGNhc2UgJ3NjZW5lJzpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5faXNTbWFsbFNjcmVlbiA9IHdpbmRvdy5pbm5lcldpZHRoIDwgNjAwO1xuXG4gICAgICAgICAgICAgICAgICAgIGlubGluZVN2ZyA9IHRoaXMuX2lzU21hbGxTY3JlZW4gPyB0aGlzLnN2Z0NvbmZpZy5kaWFsb2c/LmZpbGUgOiB0aGlzLnN2Z0NvbmZpZy5zY2VuZT8uZmlsZTtcblxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9ocmVmID0gdGhpcy5faXNTbWFsbFNjcmVlblxuICAgICAgICAgICAgICAgICAgICAgICAgPyBgJHt0aGlzLnN2Z0NvbmZpZy5kaWFsb2c/LnVybCB8fCAnJ30jJHt0aGlzLnN2Z0NvbmZpZy5kaWFsb2c/LmlkfWBcbiAgICAgICAgICAgICAgICAgICAgICAgIDogYCR7dGhpcy5zdmdDb25maWcuc2NlbmU/LnVybCB8fCAnJ30jJHt0aGlzLnN2Z0NvbmZpZy5zY2VuZT8uaWR9YDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgICAgICAgICBjYXNlICdkaWFsb2cnOlxuICAgICAgICAgICAgICAgICAgICBpbmxpbmVTdmcgPSB0aGlzLnN2Z0NvbmZpZy5kaWFsb2c/LmZpbGU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2hyZWYgPSBgJHt0aGlzLnN2Z0NvbmZpZy5kaWFsb2c/LnVybCB8fCAnJ30jJHt0aGlzLnN2Z0NvbmZpZy5kaWFsb2c/LmlkfWA7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgICAgICAgICAgY2FzZSAnc3BvdCc6XG4gICAgICAgICAgICAgICAgICAgIGlubGluZVN2ZyA9IHRoaXMuc3ZnQ29uZmlnLnNwb3Q/LmZpbGU7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX2hyZWYgPSBgJHt0aGlzLnN2Z0NvbmZpZy5zcG90Py51cmwgfHwgJyd9IyR7dGhpcy5zdmdDb25maWcuc3BvdD8uaWR9YDtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGlubGluZVN2Zykge1xuICAgICAgICAgICAgdGhpcy5faW5saW5lU3ZnID0gdGhpcy5fc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKGlubGluZVN2Zyk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9jZFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxufVxuIl19
@@ -1,17 +1,19 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Component, ViewEncapsulation, ChangeDetectionStrategy, Input, HostBinding, Directive, NgModule } from '@angular/core';
3
- import * as i1 from '@angular/common';
3
+ import * as i2 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import { __decorate, __metadata } from 'tslib';
6
6
  import { applyCssClass } from '@fundamental-ngx/core/utils';
7
7
  import { Subscription, fromEvent } from 'rxjs';
8
+ import * as i1 from '@angular/platform-browser';
8
9
 
9
10
  let illustratedMessageUniqueId = 0;
10
11
  class IllustratedMessageComponent {
11
12
  /** @hidden */
12
- constructor(_elementRef, _cdRef) {
13
+ constructor(_elementRef, _cdRef, _sanitizer) {
13
14
  this._elementRef = _elementRef;
14
15
  this._cdRef = _cdRef;
16
+ this._sanitizer = _sanitizer;
15
17
  /**
16
18
  * The type of the Illustrated Message
17
19
  * Options include: 'scene' | 'spot' | 'dialog'
@@ -63,40 +65,43 @@ class IllustratedMessageComponent {
63
65
  }
64
66
  /** @hidden */
65
67
  _constructHref() {
66
- var _a, _b, _c, _d, _e, _f, _g, _h;
68
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
69
+ let inlineSvg;
70
+ this._inlineSvg = undefined;
67
71
  if (this.svgConfig) {
68
72
  switch (this.type) {
69
73
  case 'scene':
70
- {
71
- this._isSmallScreen = window.innerWidth < 600;
72
- this._href = this._isSmallScreen
73
- ? `${(_a = this.svgConfig.dialog) === null || _a === void 0 ? void 0 : _a.url}#${(_b = this.svgConfig.dialog) === null || _b === void 0 ? void 0 : _b.id}`
74
- : `${(_c = this.svgConfig.scene) === null || _c === void 0 ? void 0 : _c.url}#${(_d = this.svgConfig.scene) === null || _d === void 0 ? void 0 : _d.id}`;
75
- this._cdRef.detectChanges();
76
- }
74
+ this._isSmallScreen = window.innerWidth < 600;
75
+ inlineSvg = this._isSmallScreen ? (_a = this.svgConfig.dialog) === null || _a === void 0 ? void 0 : _a.file : (_b = this.svgConfig.scene) === null || _b === void 0 ? void 0 : _b.file;
76
+ this._href = this._isSmallScreen
77
+ ? `${((_c = this.svgConfig.dialog) === null || _c === void 0 ? void 0 : _c.url) || ''}#${(_d = this.svgConfig.dialog) === null || _d === void 0 ? void 0 : _d.id}`
78
+ : `${((_e = this.svgConfig.scene) === null || _e === void 0 ? void 0 : _e.url) || ''}#${(_f = this.svgConfig.scene) === null || _f === void 0 ? void 0 : _f.id}`;
77
79
  break;
78
80
  case 'dialog':
79
- {
80
- this._href = `${(_e = this.svgConfig.dialog) === null || _e === void 0 ? void 0 : _e.url}#${(_f = this.svgConfig.dialog) === null || _f === void 0 ? void 0 : _f.id}`;
81
- }
81
+ inlineSvg = (_g = this.svgConfig.dialog) === null || _g === void 0 ? void 0 : _g.file;
82
+ this._href = `${((_h = this.svgConfig.dialog) === null || _h === void 0 ? void 0 : _h.url) || ''}#${(_j = this.svgConfig.dialog) === null || _j === void 0 ? void 0 : _j.id}`;
82
83
  break;
83
84
  case 'spot':
84
- {
85
- this._href = `${(_g = this.svgConfig.spot) === null || _g === void 0 ? void 0 : _g.url}#${(_h = this.svgConfig.spot) === null || _h === void 0 ? void 0 : _h.id}`;
86
- }
85
+ inlineSvg = (_k = this.svgConfig.spot) === null || _k === void 0 ? void 0 : _k.file;
86
+ this._href = `${((_l = this.svgConfig.spot) === null || _l === void 0 ? void 0 : _l.url) || ''}#${(_m = this.svgConfig.spot) === null || _m === void 0 ? void 0 : _m.id}`;
87
87
  break;
88
88
  }
89
89
  }
90
+ if (inlineSvg) {
91
+ this._inlineSvg = this._sanitizer.bypassSecurityTrustHtml(inlineSvg);
92
+ }
93
+ this._cdRef.detectChanges();
90
94
  }
91
95
  }
92
- IllustratedMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: IllustratedMessageComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
96
+ IllustratedMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: IllustratedMessageComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
93
97
  IllustratedMessageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.4", type: IllustratedMessageComponent, selector: "[fd-illustrated-message]", inputs: { type: "type", svgConfig: "svgConfig", noSvg: "noSvg", id: "id", class: "class" }, host: { properties: { "attr.id": "this.id" } }, usesOnChanges: true, ngImport: i0, template: `
94
- <svg class="fd-illustrated-message__illustration" *ngIf="!noSvg">
98
+ <svg class="fd-illustrated-message__illustration" *ngIf="!noSvg || _inlineSvg">
95
99
  <use [attr.href]="_href"></use>
96
100
  </svg>
101
+ <div *ngIf="_inlineSvg" style="display: none;" [innerHTML]="_inlineSvg"></div>
97
102
  <ng-content select="[fd-illustrated-message-figcaption]"></ng-content>
98
103
  <ng-content select="fd-illustrated-message-actions"></ng-content>
99
- `, isInline: true, styles: ["/*!\n * Fundamental Library Styles v0.24.2\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-illustrated-message{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:auto;line-height:var(--sapContent_LineHeight);margin:5rem 0 0;max-width:30rem;padding:1rem;text-align:center;width:100%}.fd-illustrated-message:after,.fd-illustrated-message:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__illustration{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:15rem;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:20rem}.fd-illustrated-message__illustration:after,.fd-illustrated-message__illustration:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__figcaption{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:100%}.fd-illustrated-message__figcaption:after,.fd-illustrated-message__figcaption:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader2Size);font-weight:400;font-weight:var(--sapFontHeaderWeight);line-height:var(--sapContent_LineHeight);line-height:1.3;margin:2rem 0 .5rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__title:after,.fd-illustrated-message__title:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.4;margin:0 0 2rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__text:after,.fd-illustrated-message__text:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 0 2rem;padding:0;width:100%}.fd-illustrated-message__actions:after,.fd-illustrated-message__actions:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions *{margin:0 .25rem}@media screen and (max-width: 599px){.fd-illustrated-message{max-width:20rem}.fd-illustrated-message .fd-illustrated-message__illustration{height:10rem;width:10rem}}.fd-illustrated-message--dialog{margin-top:0;max-width:100%}.fd-illustrated-message--dialog .fd-illustrated-message__illustration{height:10rem;margin-bottom:2rem;margin-top:1rem;width:10rem}.fd-illustrated-message--dialog .fd-illustrated-message__title{font-size:var(--sapFontHeader4Size);margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--dialog .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);max-width:25rem}@media screen and (max-width: 599px){.fd-illustrated-message--dialog .fd-illustrated-message__text,.fd-illustrated-message--dialog .fd-illustrated-message__title{max-width:18rem}}.fd-illustrated-message--spot{margin-top:0;max-width:100%}.fd-illustrated-message--spot .fd-illustrated-message__illustration{height:8rem;margin:.5rem 0;padding:0;width:8rem}.fd-illustrated-message--spot .fd-illustrated-message__title{font-size:var(--sapFontHeader5Size);line-height:1.25;margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);margin:0 0 1rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__actions{margin:.5rem 0 1rem;padding:0}@media screen and (max-width: 599px){.fd-illustrated-message--spot .fd-illustrated-message__text,.fd-illustrated-message--spot .fd-illustrated-message__title{max-width:18rem}}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
104
+ `, isInline: true, styles: ["/*!\n * Fundamental Library Styles v0.24.2\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-illustrated-message{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:auto;line-height:var(--sapContent_LineHeight);margin:5rem 0 0;max-width:30rem;padding:1rem;text-align:center;width:100%}.fd-illustrated-message:after,.fd-illustrated-message:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__illustration{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:15rem;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:20rem}.fd-illustrated-message__illustration:after,.fd-illustrated-message__illustration:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__figcaption{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:100%}.fd-illustrated-message__figcaption:after,.fd-illustrated-message__figcaption:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader2Size);font-weight:400;font-weight:var(--sapFontHeaderWeight);line-height:var(--sapContent_LineHeight);line-height:1.3;margin:2rem 0 .5rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__title:after,.fd-illustrated-message__title:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.4;margin:0 0 2rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__text:after,.fd-illustrated-message__text:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 0 2rem;padding:0;width:100%}.fd-illustrated-message__actions:after,.fd-illustrated-message__actions:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions *{margin:0 .25rem}@media screen and (max-width: 599px){.fd-illustrated-message{max-width:20rem}.fd-illustrated-message .fd-illustrated-message__illustration{height:10rem;width:10rem}}.fd-illustrated-message--dialog{margin-top:0;max-width:100%}.fd-illustrated-message--dialog .fd-illustrated-message__illustration{height:10rem;margin-bottom:2rem;margin-top:1rem;width:10rem}.fd-illustrated-message--dialog .fd-illustrated-message__title{font-size:var(--sapFontHeader4Size);margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--dialog .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);max-width:25rem}@media screen and (max-width: 599px){.fd-illustrated-message--dialog .fd-illustrated-message__text,.fd-illustrated-message--dialog .fd-illustrated-message__title{max-width:18rem}}.fd-illustrated-message--spot{margin-top:0;max-width:100%}.fd-illustrated-message--spot .fd-illustrated-message__illustration{height:8rem;margin:.5rem 0;padding:0;width:8rem}.fd-illustrated-message--spot .fd-illustrated-message__title{font-size:var(--sapFontHeader5Size);line-height:1.25;margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);margin:0 0 1rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__actions{margin:.5rem 0 1rem;padding:0}@media screen and (max-width: 599px){.fd-illustrated-message--spot .fd-illustrated-message__text,.fd-illustrated-message--spot .fd-illustrated-message__title{max-width:18rem}}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
100
105
  __decorate([
101
106
  applyCssClass,
102
107
  __metadata("design:type", Function),
@@ -106,13 +111,14 @@ __decorate([
106
111
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: IllustratedMessageComponent, decorators: [{
107
112
  type: Component,
108
113
  args: [{ selector: '[fd-illustrated-message]', template: `
109
- <svg class="fd-illustrated-message__illustration" *ngIf="!noSvg">
114
+ <svg class="fd-illustrated-message__illustration" *ngIf="!noSvg || _inlineSvg">
110
115
  <use [attr.href]="_href"></use>
111
116
  </svg>
117
+ <div *ngIf="_inlineSvg" style="display: none;" [innerHTML]="_inlineSvg"></div>
112
118
  <ng-content select="[fd-illustrated-message-figcaption]"></ng-content>
113
119
  <ng-content select="fd-illustrated-message-actions"></ng-content>
114
120
  `, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["/*!\n * Fundamental Library Styles v0.24.2\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-illustrated-message{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:auto;line-height:var(--sapContent_LineHeight);margin:5rem 0 0;max-width:30rem;padding:1rem;text-align:center;width:100%}.fd-illustrated-message:after,.fd-illustrated-message:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__illustration{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:15rem;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:20rem}.fd-illustrated-message__illustration:after,.fd-illustrated-message__illustration:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__figcaption{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:100%}.fd-illustrated-message__figcaption:after,.fd-illustrated-message__figcaption:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader2Size);font-weight:400;font-weight:var(--sapFontHeaderWeight);line-height:var(--sapContent_LineHeight);line-height:1.3;margin:2rem 0 .5rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__title:after,.fd-illustrated-message__title:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.4;margin:0 0 2rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__text:after,.fd-illustrated-message__text:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 0 2rem;padding:0;width:100%}.fd-illustrated-message__actions:after,.fd-illustrated-message__actions:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions *{margin:0 .25rem}@media screen and (max-width: 599px){.fd-illustrated-message{max-width:20rem}.fd-illustrated-message .fd-illustrated-message__illustration{height:10rem;width:10rem}}.fd-illustrated-message--dialog{margin-top:0;max-width:100%}.fd-illustrated-message--dialog .fd-illustrated-message__illustration{height:10rem;margin-bottom:2rem;margin-top:1rem;width:10rem}.fd-illustrated-message--dialog .fd-illustrated-message__title{font-size:var(--sapFontHeader4Size);margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--dialog .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);max-width:25rem}@media screen and (max-width: 599px){.fd-illustrated-message--dialog .fd-illustrated-message__text,.fd-illustrated-message--dialog .fd-illustrated-message__title{max-width:18rem}}.fd-illustrated-message--spot{margin-top:0;max-width:100%}.fd-illustrated-message--spot .fd-illustrated-message__illustration{height:8rem;margin:.5rem 0;padding:0;width:8rem}.fd-illustrated-message--spot .fd-illustrated-message__title{font-size:var(--sapFontHeader5Size);line-height:1.25;margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);margin:0 0 1rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__actions{margin:.5rem 0 1rem;padding:0}@media screen and (max-width: 599px){.fd-illustrated-message--spot .fd-illustrated-message__text,.fd-illustrated-message--spot .fd-illustrated-message__title{max-width:18rem}}\n"] }]
115
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { type: [{
121
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.DomSanitizer }]; }, propDecorators: { type: [{
116
122
  type: Input
117
123
  }], svgConfig: [{
118
124
  type: Input
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-illustrated-message.mjs","sources":["../../../../../libs/core/src/lib/illustrated-message/illustrated-message.component.ts","../../../../../libs/core/src/lib/illustrated-message/components/illustrated-message-actions/illustrated-message-actions.component.ts","../../../../../libs/core/src/lib/illustrated-message/components/illustrated-message-figcaption/illustrated-message-figcaption.component.ts","../../../../../libs/core/src/lib/illustrated-message/directives/illustrated-message-text/illustrated-message-text.directive.ts","../../../../../libs/core/src/lib/illustrated-message/directives/illustrated-message-title/illustrated-message-title.directive.ts","../../../../../libs/core/src/lib/illustrated-message/illustrated-message.module.ts","../../../../../libs/core/src/lib/illustrated-message/fundamental-ngx-core-illustrated-message.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectorRef,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n ViewEncapsulation\n} from '@angular/core';\nimport { applyCssClass } from '@fundamental-ngx/core/utils';\nimport { CssClassBuilder } from '@fundamental-ngx/core/utils';\nimport { fromEvent, Subscription } from 'rxjs';\n\nexport interface SvgConfig {\n scene?: { url: string; id: string };\n dialog?: { url: string; id: string };\n spot?: { url: string; id: string };\n}\n\nlet illustratedMessageUniqueId = 0;\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-illustrated-message]',\n template: `\n <svg class=\"fd-illustrated-message__illustration\" *ngIf=\"!noSvg\">\n <use [attr.href]=\"_href\"></use>\n </svg>\n <ng-content select=\"[fd-illustrated-message-figcaption]\"></ng-content>\n <ng-content select=\"fd-illustrated-message-actions\"></ng-content>\n `,\n styleUrls: ['./illustrated-message.component.scss'],\n\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class IllustratedMessageComponent implements AfterViewInit, OnChanges, OnDestroy, OnInit, CssClassBuilder {\n /**\n * The type of the Illustrated Message\n * Options include: 'scene' | 'spot' | 'dialog'\n * The default type is set to 'scene'\n */\n @Input() type: 'scene' | 'dialog' | 'spot' = 'scene';\n\n /**\n * An object containing url and id for each type used to construct the svg href\n * For 'scene' type 'scene' and 'dialog' values are required\n * In small screens (less than 600px) 'dialog' svg will be applied for 'scene' type\n */\n @Input() svgConfig: SvgConfig;\n\n /**\n * When set to true will remove the illustration from the Illustrated Message\n * The default is set to false\n */\n @Input() noSvg = false;\n\n /**\n * Id of the Illustrated Message\n * If not provided, a default one is generated\n */\n @Input()\n @HostBinding('attr.id')\n id: string = 'fd-illustrated-message-' + illustratedMessageUniqueId++;\n\n /** User's custom classes */\n @Input()\n class: string;\n\n /** @hidden */\n _href: string;\n\n /** @hidden */\n _isSmallScreen: boolean;\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** @hidden */\n constructor(private _elementRef: ElementRef, private _cdRef: ChangeDetectorRef) {}\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n this._constructHref();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n if (this.type === 'scene') {\n this._subscriptions.add(fromEvent(window, 'resize').subscribe(() => this._constructHref()));\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n }\n\n /** @hidden */\n elementRef(): ElementRef<any> {\n return this._elementRef;\n }\n\n @applyCssClass\n /** CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n buildComponentCssClass(): string[] {\n return ['fd-illustrated-message', this.type ? `fd-illustrated-message--${this.type}` : '', this.class];\n }\n\n /** @hidden */\n private _constructHref(): void {\n if (this.svgConfig) {\n switch (this.type) {\n case 'scene':\n {\n this._isSmallScreen = window.innerWidth < 600;\n\n this._href = this._isSmallScreen\n ? `${this.svgConfig.dialog?.url}#${this.svgConfig.dialog?.id}`\n : `${this.svgConfig.scene?.url}#${this.svgConfig.scene?.id}`;\n this._cdRef.detectChanges();\n }\n break;\n\n case 'dialog':\n {\n this._href = `${this.svgConfig.dialog?.url}#${this.svgConfig.dialog?.id}`;\n }\n break;\n\n case 'spot':\n {\n this._href = `${this.svgConfig.spot?.url}#${this.svgConfig.spot?.id}`;\n }\n break;\n }\n }\n }\n}\n","import { Component, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n selector: 'fd-illustrated-message-actions',\n template: `<ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-illustrated-message__actions'\n }\n})\nexport class IllustratedMessageActionsComponent {}\n","import { Component, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-illustrated-message-figcaption]',\n template: `\n <ng-content select=\"[fd-illustrated-message-title]\"></ng-content>\n <ng-content select=\"[fd-illustrated-message-text]\"></ng-content>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-illustrated-message__figcaption'\n }\n})\nexport class IllustratedMessageFigcaptionComponent {}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n // TODO to be discussed\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-illustrated-message-text]'\n})\nexport class IllustratedMessageTextDirective {\n /** @hidden */\n @HostBinding('class.fd-illustrated-message__text')\n fdIllustratedMessageTextClass = true;\n}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n // TODO to be discussed\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-illustrated-message-title]'\n})\nexport class IllustratedMessageTitleDirective {\n /** @hidden */\n @HostBinding('class.fd-illustrated-message__title')\n fdIllustratedMessageTitleClass = true;\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { IllustratedMessageComponent } from './illustrated-message.component';\nimport { IllustratedMessageActionsComponent } from './components/illustrated-message-actions/illustrated-message-actions.component';\n// eslint-disable-next-line max-len\nimport { IllustratedMessageFigcaptionComponent } from './components/illustrated-message-figcaption/illustrated-message-figcaption.component';\nimport { IllustratedMessageTextDirective } from './directives/illustrated-message-text/illustrated-message-text.directive';\nimport { IllustratedMessageTitleDirective } from './directives/illustrated-message-title/illustrated-message-title.directive';\n\n@NgModule({\n declarations: [\n IllustratedMessageComponent,\n IllustratedMessageActionsComponent,\n IllustratedMessageFigcaptionComponent,\n IllustratedMessageTextDirective,\n IllustratedMessageTitleDirective\n ],\n imports: [CommonModule],\n exports: [\n IllustratedMessageComponent,\n IllustratedMessageActionsComponent,\n IllustratedMessageFigcaptionComponent,\n IllustratedMessageTextDirective,\n IllustratedMessageTitleDirective\n ]\n})\nexport class IllustratedMessageModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-core-illustrated-message.mjs","sources":["../../../../../libs/core/src/lib/illustrated-message/illustrated-message.component.ts","../../../../../libs/core/src/lib/illustrated-message/components/illustrated-message-actions/illustrated-message-actions.component.ts","../../../../../libs/core/src/lib/illustrated-message/components/illustrated-message-figcaption/illustrated-message-figcaption.component.ts","../../../../../libs/core/src/lib/illustrated-message/directives/illustrated-message-text/illustrated-message-text.directive.ts","../../../../../libs/core/src/lib/illustrated-message/directives/illustrated-message-title/illustrated-message-title.directive.ts","../../../../../libs/core/src/lib/illustrated-message/illustrated-message.module.ts","../../../../../libs/core/src/lib/illustrated-message/fundamental-ngx-core-illustrated-message.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectorRef,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n ViewEncapsulation\n} from '@angular/core';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\nimport { applyCssClass, RequireOnlyOne } from '@fundamental-ngx/core/utils';\nimport { CssClassBuilder } from '@fundamental-ngx/core/utils';\nimport { fromEvent, Subscription } from 'rxjs';\n\nexport interface SvgConfig {\n scene?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n dialog?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n spot?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n}\n\nexport interface SvgItemConfig {\n url: string;\n id: string;\n file: string;\n}\n\nexport type IllustratedMessageType = 'scene' | 'dialog' | 'spot';\n\nlet illustratedMessageUniqueId = 0;\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-illustrated-message]',\n template: `\n <svg class=\"fd-illustrated-message__illustration\" *ngIf=\"!noSvg || _inlineSvg\">\n <use [attr.href]=\"_href\"></use>\n </svg>\n <div *ngIf=\"_inlineSvg\" style=\"display: none;\" [innerHTML]=\"_inlineSvg\"></div>\n <ng-content select=\"[fd-illustrated-message-figcaption]\"></ng-content>\n <ng-content select=\"fd-illustrated-message-actions\"></ng-content>\n `,\n styleUrls: ['./illustrated-message.component.scss'],\n\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class IllustratedMessageComponent implements AfterViewInit, OnChanges, OnDestroy, OnInit, CssClassBuilder {\n /**\n * The type of the Illustrated Message\n * Options include: 'scene' | 'spot' | 'dialog'\n * The default type is set to 'scene'\n */\n @Input()\n type: IllustratedMessageType = 'scene';\n\n /**\n * An object containing url and id for each type used to construct the svg href\n * For 'scene' type 'scene' and 'dialog' values are required\n * In small screens (less than 600px) 'dialog' svg will be applied for 'scene' type\n */\n @Input()\n svgConfig: SvgConfig;\n\n /**\n * When set to true will remove the illustration from the Illustrated Message\n * The default is set to false\n */\n @Input()\n noSvg = false;\n\n /**\n * Id of the Illustrated Message\n * If not provided, a default one is generated\n */\n @Input()\n @HostBinding('attr.id')\n id: string = 'fd-illustrated-message-' + illustratedMessageUniqueId++;\n\n /** User's custom classes */\n @Input()\n class: string;\n\n /** @hidden */\n _href: string;\n\n /** @hidden */\n _isSmallScreen: boolean;\n\n /** @hidden */\n _inlineSvg: SafeHtml | undefined;\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** @hidden */\n constructor(private _elementRef: ElementRef, private _cdRef: ChangeDetectorRef, private _sanitizer: DomSanitizer) {}\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n this._constructHref();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n if (this.type === 'scene') {\n this._subscriptions.add(fromEvent(window, 'resize').subscribe(() => this._constructHref()));\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n }\n\n /** @hidden */\n elementRef(): ElementRef {\n return this._elementRef;\n }\n\n @applyCssClass\n /** CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n buildComponentCssClass(): string[] {\n return ['fd-illustrated-message', this.type ? `fd-illustrated-message--${this.type}` : '', this.class];\n }\n\n /** @hidden */\n private _constructHref(): void {\n let inlineSvg;\n this._inlineSvg = undefined;\n if (this.svgConfig) {\n switch (this.type) {\n case 'scene':\n this._isSmallScreen = window.innerWidth < 600;\n\n inlineSvg = this._isSmallScreen ? this.svgConfig.dialog?.file : this.svgConfig.scene?.file;\n\n this._href = this._isSmallScreen\n ? `${this.svgConfig.dialog?.url || ''}#${this.svgConfig.dialog?.id}`\n : `${this.svgConfig.scene?.url || ''}#${this.svgConfig.scene?.id}`;\n break;\n\n case 'dialog':\n inlineSvg = this.svgConfig.dialog?.file;\n this._href = `${this.svgConfig.dialog?.url || ''}#${this.svgConfig.dialog?.id}`;\n break;\n\n case 'spot':\n inlineSvg = this.svgConfig.spot?.file;\n this._href = `${this.svgConfig.spot?.url || ''}#${this.svgConfig.spot?.id}`;\n break;\n }\n }\n if (inlineSvg) {\n this._inlineSvg = this._sanitizer.bypassSecurityTrustHtml(inlineSvg);\n }\n\n this._cdRef.detectChanges();\n }\n}\n","import { Component, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n selector: 'fd-illustrated-message-actions',\n template: `<ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-illustrated-message__actions'\n }\n})\nexport class IllustratedMessageActionsComponent {}\n","import { Component, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-illustrated-message-figcaption]',\n template: `\n <ng-content select=\"[fd-illustrated-message-title]\"></ng-content>\n <ng-content select=\"[fd-illustrated-message-text]\"></ng-content>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-illustrated-message__figcaption'\n }\n})\nexport class IllustratedMessageFigcaptionComponent {}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n // TODO to be discussed\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-illustrated-message-text]'\n})\nexport class IllustratedMessageTextDirective {\n /** @hidden */\n @HostBinding('class.fd-illustrated-message__text')\n fdIllustratedMessageTextClass = true;\n}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n // TODO to be discussed\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-illustrated-message-title]'\n})\nexport class IllustratedMessageTitleDirective {\n /** @hidden */\n @HostBinding('class.fd-illustrated-message__title')\n fdIllustratedMessageTitleClass = true;\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { IllustratedMessageComponent } from './illustrated-message.component';\nimport { IllustratedMessageActionsComponent } from './components/illustrated-message-actions/illustrated-message-actions.component';\n// eslint-disable-next-line max-len\nimport { IllustratedMessageFigcaptionComponent } from './components/illustrated-message-figcaption/illustrated-message-figcaption.component';\nimport { IllustratedMessageTextDirective } from './directives/illustrated-message-text/illustrated-message-text.directive';\nimport { IllustratedMessageTitleDirective } from './directives/illustrated-message-title/illustrated-message-title.directive';\n\n@NgModule({\n declarations: [\n IllustratedMessageComponent,\n IllustratedMessageActionsComponent,\n IllustratedMessageFigcaptionComponent,\n IllustratedMessageTextDirective,\n IllustratedMessageTitleDirective\n ],\n imports: [CommonModule],\n exports: [\n IllustratedMessageComponent,\n IllustratedMessageActionsComponent,\n IllustratedMessageFigcaptionComponent,\n IllustratedMessageTextDirective,\n IllustratedMessageTitleDirective\n ]\n})\nexport class IllustratedMessageModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
@@ -1,17 +1,19 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Component, ViewEncapsulation, ChangeDetectionStrategy, Input, HostBinding, Directive, NgModule } from '@angular/core';
3
- import * as i1 from '@angular/common';
3
+ import * as i2 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
5
  import { __decorate, __metadata } from 'tslib';
6
+ import * as i1 from '@angular/platform-browser';
6
7
  import { applyCssClass } from '@fundamental-ngx/core/utils';
7
8
  import { Subscription, fromEvent } from 'rxjs';
8
9
 
9
10
  let illustratedMessageUniqueId = 0;
10
11
  class IllustratedMessageComponent {
11
12
  /** @hidden */
12
- constructor(_elementRef, _cdRef) {
13
+ constructor(_elementRef, _cdRef, _sanitizer) {
13
14
  this._elementRef = _elementRef;
14
15
  this._cdRef = _cdRef;
16
+ this._sanitizer = _sanitizer;
15
17
  /**
16
18
  * The type of the Illustrated Message
17
19
  * Options include: 'scene' | 'spot' | 'dialog'
@@ -63,39 +65,42 @@ class IllustratedMessageComponent {
63
65
  }
64
66
  /** @hidden */
65
67
  _constructHref() {
68
+ let inlineSvg;
69
+ this._inlineSvg = undefined;
66
70
  if (this.svgConfig) {
67
71
  switch (this.type) {
68
72
  case 'scene':
69
- {
70
- this._isSmallScreen = window.innerWidth < 600;
71
- this._href = this._isSmallScreen
72
- ? `${this.svgConfig.dialog?.url}#${this.svgConfig.dialog?.id}`
73
- : `${this.svgConfig.scene?.url}#${this.svgConfig.scene?.id}`;
74
- this._cdRef.detectChanges();
75
- }
73
+ this._isSmallScreen = window.innerWidth < 600;
74
+ inlineSvg = this._isSmallScreen ? this.svgConfig.dialog?.file : this.svgConfig.scene?.file;
75
+ this._href = this._isSmallScreen
76
+ ? `${this.svgConfig.dialog?.url || ''}#${this.svgConfig.dialog?.id}`
77
+ : `${this.svgConfig.scene?.url || ''}#${this.svgConfig.scene?.id}`;
76
78
  break;
77
79
  case 'dialog':
78
- {
79
- this._href = `${this.svgConfig.dialog?.url}#${this.svgConfig.dialog?.id}`;
80
- }
80
+ inlineSvg = this.svgConfig.dialog?.file;
81
+ this._href = `${this.svgConfig.dialog?.url || ''}#${this.svgConfig.dialog?.id}`;
81
82
  break;
82
83
  case 'spot':
83
- {
84
- this._href = `${this.svgConfig.spot?.url}#${this.svgConfig.spot?.id}`;
85
- }
84
+ inlineSvg = this.svgConfig.spot?.file;
85
+ this._href = `${this.svgConfig.spot?.url || ''}#${this.svgConfig.spot?.id}`;
86
86
  break;
87
87
  }
88
88
  }
89
+ if (inlineSvg) {
90
+ this._inlineSvg = this._sanitizer.bypassSecurityTrustHtml(inlineSvg);
91
+ }
92
+ this._cdRef.detectChanges();
89
93
  }
90
94
  }
91
- IllustratedMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: IllustratedMessageComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
95
+ IllustratedMessageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: IllustratedMessageComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
92
96
  IllustratedMessageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.4", type: IllustratedMessageComponent, selector: "[fd-illustrated-message]", inputs: { type: "type", svgConfig: "svgConfig", noSvg: "noSvg", id: "id", class: "class" }, host: { properties: { "attr.id": "this.id" } }, usesOnChanges: true, ngImport: i0, template: `
93
- <svg class="fd-illustrated-message__illustration" *ngIf="!noSvg">
97
+ <svg class="fd-illustrated-message__illustration" *ngIf="!noSvg || _inlineSvg">
94
98
  <use [attr.href]="_href"></use>
95
99
  </svg>
100
+ <div *ngIf="_inlineSvg" style="display: none;" [innerHTML]="_inlineSvg"></div>
96
101
  <ng-content select="[fd-illustrated-message-figcaption]"></ng-content>
97
102
  <ng-content select="fd-illustrated-message-actions"></ng-content>
98
- `, isInline: true, styles: ["/*!\n * Fundamental Library Styles v0.24.2\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-illustrated-message{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:auto;line-height:var(--sapContent_LineHeight);margin:5rem 0 0;max-width:30rem;padding:1rem;text-align:center;width:100%}.fd-illustrated-message:after,.fd-illustrated-message:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__illustration{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:15rem;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:20rem}.fd-illustrated-message__illustration:after,.fd-illustrated-message__illustration:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__figcaption{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:100%}.fd-illustrated-message__figcaption:after,.fd-illustrated-message__figcaption:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader2Size);font-weight:400;font-weight:var(--sapFontHeaderWeight);line-height:var(--sapContent_LineHeight);line-height:1.3;margin:2rem 0 .5rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__title:after,.fd-illustrated-message__title:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.4;margin:0 0 2rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__text:after,.fd-illustrated-message__text:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 0 2rem;padding:0;width:100%}.fd-illustrated-message__actions:after,.fd-illustrated-message__actions:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions *{margin:0 .25rem}@media screen and (max-width: 599px){.fd-illustrated-message{max-width:20rem}.fd-illustrated-message .fd-illustrated-message__illustration{height:10rem;width:10rem}}.fd-illustrated-message--dialog{margin-top:0;max-width:100%}.fd-illustrated-message--dialog .fd-illustrated-message__illustration{height:10rem;margin-bottom:2rem;margin-top:1rem;width:10rem}.fd-illustrated-message--dialog .fd-illustrated-message__title{font-size:var(--sapFontHeader4Size);margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--dialog .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);max-width:25rem}@media screen and (max-width: 599px){.fd-illustrated-message--dialog .fd-illustrated-message__text,.fd-illustrated-message--dialog .fd-illustrated-message__title{max-width:18rem}}.fd-illustrated-message--spot{margin-top:0;max-width:100%}.fd-illustrated-message--spot .fd-illustrated-message__illustration{height:8rem;margin:.5rem 0;padding:0;width:8rem}.fd-illustrated-message--spot .fd-illustrated-message__title{font-size:var(--sapFontHeader5Size);line-height:1.25;margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);margin:0 0 1rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__actions{margin:.5rem 0 1rem;padding:0}@media screen and (max-width: 599px){.fd-illustrated-message--spot .fd-illustrated-message__text,.fd-illustrated-message--spot .fd-illustrated-message__title{max-width:18rem}}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
103
+ `, isInline: true, styles: ["/*!\n * Fundamental Library Styles v0.24.2\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-illustrated-message{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:auto;line-height:var(--sapContent_LineHeight);margin:5rem 0 0;max-width:30rem;padding:1rem;text-align:center;width:100%}.fd-illustrated-message:after,.fd-illustrated-message:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__illustration{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:15rem;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:20rem}.fd-illustrated-message__illustration:after,.fd-illustrated-message__illustration:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__figcaption{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:100%}.fd-illustrated-message__figcaption:after,.fd-illustrated-message__figcaption:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader2Size);font-weight:400;font-weight:var(--sapFontHeaderWeight);line-height:var(--sapContent_LineHeight);line-height:1.3;margin:2rem 0 .5rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__title:after,.fd-illustrated-message__title:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.4;margin:0 0 2rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__text:after,.fd-illustrated-message__text:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 0 2rem;padding:0;width:100%}.fd-illustrated-message__actions:after,.fd-illustrated-message__actions:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions *{margin:0 .25rem}@media screen and (max-width: 599px){.fd-illustrated-message{max-width:20rem}.fd-illustrated-message .fd-illustrated-message__illustration{height:10rem;width:10rem}}.fd-illustrated-message--dialog{margin-top:0;max-width:100%}.fd-illustrated-message--dialog .fd-illustrated-message__illustration{height:10rem;margin-bottom:2rem;margin-top:1rem;width:10rem}.fd-illustrated-message--dialog .fd-illustrated-message__title{font-size:var(--sapFontHeader4Size);margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--dialog .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);max-width:25rem}@media screen and (max-width: 599px){.fd-illustrated-message--dialog .fd-illustrated-message__text,.fd-illustrated-message--dialog .fd-illustrated-message__title{max-width:18rem}}.fd-illustrated-message--spot{margin-top:0;max-width:100%}.fd-illustrated-message--spot .fd-illustrated-message__illustration{height:8rem;margin:.5rem 0;padding:0;width:8rem}.fd-illustrated-message--spot .fd-illustrated-message__title{font-size:var(--sapFontHeader5Size);line-height:1.25;margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);margin:0 0 1rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__actions{margin:.5rem 0 1rem;padding:0}@media screen and (max-width: 599px){.fd-illustrated-message--spot .fd-illustrated-message__text,.fd-illustrated-message--spot .fd-illustrated-message__title{max-width:18rem}}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
99
104
  __decorate([
100
105
  applyCssClass,
101
106
  __metadata("design:type", Function),
@@ -105,13 +110,14 @@ __decorate([
105
110
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: IllustratedMessageComponent, decorators: [{
106
111
  type: Component,
107
112
  args: [{ selector: '[fd-illustrated-message]', template: `
108
- <svg class="fd-illustrated-message__illustration" *ngIf="!noSvg">
113
+ <svg class="fd-illustrated-message__illustration" *ngIf="!noSvg || _inlineSvg">
109
114
  <use [attr.href]="_href"></use>
110
115
  </svg>
116
+ <div *ngIf="_inlineSvg" style="display: none;" [innerHTML]="_inlineSvg"></div>
111
117
  <ng-content select="[fd-illustrated-message-figcaption]"></ng-content>
112
118
  <ng-content select="fd-illustrated-message-actions"></ng-content>
113
119
  `, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["/*!\n * Fundamental Library Styles v0.24.2\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-illustrated-message{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:auto;line-height:var(--sapContent_LineHeight);margin:5rem 0 0;max-width:30rem;padding:1rem;text-align:center;width:100%}.fd-illustrated-message:after,.fd-illustrated-message:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__illustration{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:15rem;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:20rem}.fd-illustrated-message__illustration:after,.fd-illustrated-message__illustration:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__figcaption{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:100%}.fd-illustrated-message__figcaption:after,.fd-illustrated-message__figcaption:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader2Size);font-weight:400;font-weight:var(--sapFontHeaderWeight);line-height:var(--sapContent_LineHeight);line-height:1.3;margin:2rem 0 .5rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__title:after,.fd-illustrated-message__title:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__text{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.4;margin:0 0 2rem;padding:0;text-align:center;width:100%}.fd-illustrated-message__text:after,.fd-illustrated-message__text:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions{-webkit-box-sizing:border-box;-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;justify-content:center;line-height:var(--sapContent_LineHeight);margin:0 0 2rem;padding:0;width:100%}.fd-illustrated-message__actions:after,.fd-illustrated-message__actions:before{box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions *{margin:0 .25rem}@media screen and (max-width: 599px){.fd-illustrated-message{max-width:20rem}.fd-illustrated-message .fd-illustrated-message__illustration{height:10rem;width:10rem}}.fd-illustrated-message--dialog{margin-top:0;max-width:100%}.fd-illustrated-message--dialog .fd-illustrated-message__illustration{height:10rem;margin-bottom:2rem;margin-top:1rem;width:10rem}.fd-illustrated-message--dialog .fd-illustrated-message__title{font-size:var(--sapFontHeader4Size);margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--dialog .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);max-width:25rem}@media screen and (max-width: 599px){.fd-illustrated-message--dialog .fd-illustrated-message__text,.fd-illustrated-message--dialog .fd-illustrated-message__title{max-width:18rem}}.fd-illustrated-message--spot{margin-top:0;max-width:100%}.fd-illustrated-message--spot .fd-illustrated-message__illustration{height:8rem;margin:.5rem 0;padding:0;width:8rem}.fd-illustrated-message--spot .fd-illustrated-message__title{font-size:var(--sapFontHeader5Size);line-height:1.25;margin:0 0 .25rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__text{color:var(--sapTile_TextColor);font-size:var(--sapFontSize);margin:0 0 1rem;max-width:25rem;padding:0}.fd-illustrated-message--spot .fd-illustrated-message__actions{margin:.5rem 0 1rem;padding:0}@media screen and (max-width: 599px){.fd-illustrated-message--spot .fd-illustrated-message__text,.fd-illustrated-message--spot .fd-illustrated-message__title{max-width:18rem}}\n"] }]
114
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { type: [{
120
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.DomSanitizer }]; }, propDecorators: { type: [{
115
121
  type: Input
116
122
  }], svgConfig: [{
117
123
  type: Input
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-illustrated-message.mjs","sources":["../../../../../libs/core/src/lib/illustrated-message/illustrated-message.component.ts","../../../../../libs/core/src/lib/illustrated-message/components/illustrated-message-actions/illustrated-message-actions.component.ts","../../../../../libs/core/src/lib/illustrated-message/components/illustrated-message-figcaption/illustrated-message-figcaption.component.ts","../../../../../libs/core/src/lib/illustrated-message/directives/illustrated-message-text/illustrated-message-text.directive.ts","../../../../../libs/core/src/lib/illustrated-message/directives/illustrated-message-title/illustrated-message-title.directive.ts","../../../../../libs/core/src/lib/illustrated-message/illustrated-message.module.ts","../../../../../libs/core/src/lib/illustrated-message/fundamental-ngx-core-illustrated-message.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectorRef,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n ViewEncapsulation\n} from '@angular/core';\nimport { applyCssClass } from '@fundamental-ngx/core/utils';\nimport { CssClassBuilder } from '@fundamental-ngx/core/utils';\nimport { fromEvent, Subscription } from 'rxjs';\n\nexport interface SvgConfig {\n scene?: { url: string; id: string };\n dialog?: { url: string; id: string };\n spot?: { url: string; id: string };\n}\n\nlet illustratedMessageUniqueId = 0;\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-illustrated-message]',\n template: `\n <svg class=\"fd-illustrated-message__illustration\" *ngIf=\"!noSvg\">\n <use [attr.href]=\"_href\"></use>\n </svg>\n <ng-content select=\"[fd-illustrated-message-figcaption]\"></ng-content>\n <ng-content select=\"fd-illustrated-message-actions\"></ng-content>\n `,\n styleUrls: ['./illustrated-message.component.scss'],\n\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class IllustratedMessageComponent implements AfterViewInit, OnChanges, OnDestroy, OnInit, CssClassBuilder {\n /**\n * The type of the Illustrated Message\n * Options include: 'scene' | 'spot' | 'dialog'\n * The default type is set to 'scene'\n */\n @Input() type: 'scene' | 'dialog' | 'spot' = 'scene';\n\n /**\n * An object containing url and id for each type used to construct the svg href\n * For 'scene' type 'scene' and 'dialog' values are required\n * In small screens (less than 600px) 'dialog' svg will be applied for 'scene' type\n */\n @Input() svgConfig: SvgConfig;\n\n /**\n * When set to true will remove the illustration from the Illustrated Message\n * The default is set to false\n */\n @Input() noSvg = false;\n\n /**\n * Id of the Illustrated Message\n * If not provided, a default one is generated\n */\n @Input()\n @HostBinding('attr.id')\n id: string = 'fd-illustrated-message-' + illustratedMessageUniqueId++;\n\n /** User's custom classes */\n @Input()\n class: string;\n\n /** @hidden */\n _href: string;\n\n /** @hidden */\n _isSmallScreen: boolean;\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** @hidden */\n constructor(private _elementRef: ElementRef, private _cdRef: ChangeDetectorRef) {}\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n this._constructHref();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n if (this.type === 'scene') {\n this._subscriptions.add(fromEvent(window, 'resize').subscribe(() => this._constructHref()));\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n }\n\n /** @hidden */\n elementRef(): ElementRef<any> {\n return this._elementRef;\n }\n\n @applyCssClass\n /** CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n buildComponentCssClass(): string[] {\n return ['fd-illustrated-message', this.type ? `fd-illustrated-message--${this.type}` : '', this.class];\n }\n\n /** @hidden */\n private _constructHref(): void {\n if (this.svgConfig) {\n switch (this.type) {\n case 'scene':\n {\n this._isSmallScreen = window.innerWidth < 600;\n\n this._href = this._isSmallScreen\n ? `${this.svgConfig.dialog?.url}#${this.svgConfig.dialog?.id}`\n : `${this.svgConfig.scene?.url}#${this.svgConfig.scene?.id}`;\n this._cdRef.detectChanges();\n }\n break;\n\n case 'dialog':\n {\n this._href = `${this.svgConfig.dialog?.url}#${this.svgConfig.dialog?.id}`;\n }\n break;\n\n case 'spot':\n {\n this._href = `${this.svgConfig.spot?.url}#${this.svgConfig.spot?.id}`;\n }\n break;\n }\n }\n }\n}\n","import { Component, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n selector: 'fd-illustrated-message-actions',\n template: `<ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-illustrated-message__actions'\n }\n})\nexport class IllustratedMessageActionsComponent {}\n","import { Component, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-illustrated-message-figcaption]',\n template: `\n <ng-content select=\"[fd-illustrated-message-title]\"></ng-content>\n <ng-content select=\"[fd-illustrated-message-text]\"></ng-content>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-illustrated-message__figcaption'\n }\n})\nexport class IllustratedMessageFigcaptionComponent {}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n // TODO to be discussed\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-illustrated-message-text]'\n})\nexport class IllustratedMessageTextDirective {\n /** @hidden */\n @HostBinding('class.fd-illustrated-message__text')\n fdIllustratedMessageTextClass = true;\n}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n // TODO to be discussed\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-illustrated-message-title]'\n})\nexport class IllustratedMessageTitleDirective {\n /** @hidden */\n @HostBinding('class.fd-illustrated-message__title')\n fdIllustratedMessageTitleClass = true;\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { IllustratedMessageComponent } from './illustrated-message.component';\nimport { IllustratedMessageActionsComponent } from './components/illustrated-message-actions/illustrated-message-actions.component';\n// eslint-disable-next-line max-len\nimport { IllustratedMessageFigcaptionComponent } from './components/illustrated-message-figcaption/illustrated-message-figcaption.component';\nimport { IllustratedMessageTextDirective } from './directives/illustrated-message-text/illustrated-message-text.directive';\nimport { IllustratedMessageTitleDirective } from './directives/illustrated-message-title/illustrated-message-title.directive';\n\n@NgModule({\n declarations: [\n IllustratedMessageComponent,\n IllustratedMessageActionsComponent,\n IllustratedMessageFigcaptionComponent,\n IllustratedMessageTextDirective,\n IllustratedMessageTitleDirective\n ],\n imports: [CommonModule],\n exports: [\n IllustratedMessageComponent,\n IllustratedMessageActionsComponent,\n IllustratedMessageFigcaptionComponent,\n IllustratedMessageTextDirective,\n IllustratedMessageTitleDirective\n ]\n})\nexport class IllustratedMessageModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-core-illustrated-message.mjs","sources":["../../../../../libs/core/src/lib/illustrated-message/illustrated-message.component.ts","../../../../../libs/core/src/lib/illustrated-message/components/illustrated-message-actions/illustrated-message-actions.component.ts","../../../../../libs/core/src/lib/illustrated-message/components/illustrated-message-figcaption/illustrated-message-figcaption.component.ts","../../../../../libs/core/src/lib/illustrated-message/directives/illustrated-message-text/illustrated-message-text.directive.ts","../../../../../libs/core/src/lib/illustrated-message/directives/illustrated-message-title/illustrated-message-title.directive.ts","../../../../../libs/core/src/lib/illustrated-message/illustrated-message.module.ts","../../../../../libs/core/src/lib/illustrated-message/fundamental-ngx-core-illustrated-message.ts"],"sourcesContent":["import {\n AfterViewInit,\n ChangeDetectorRef,\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n HostBinding,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n ViewEncapsulation\n} from '@angular/core';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\nimport { applyCssClass, RequireOnlyOne } from '@fundamental-ngx/core/utils';\nimport { CssClassBuilder } from '@fundamental-ngx/core/utils';\nimport { fromEvent, Subscription } from 'rxjs';\n\nexport interface SvgConfig {\n scene?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n dialog?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n spot?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n}\n\nexport interface SvgItemConfig {\n url: string;\n id: string;\n file: string;\n}\n\nexport type IllustratedMessageType = 'scene' | 'dialog' | 'spot';\n\nlet illustratedMessageUniqueId = 0;\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-illustrated-message]',\n template: `\n <svg class=\"fd-illustrated-message__illustration\" *ngIf=\"!noSvg || _inlineSvg\">\n <use [attr.href]=\"_href\"></use>\n </svg>\n <div *ngIf=\"_inlineSvg\" style=\"display: none;\" [innerHTML]=\"_inlineSvg\"></div>\n <ng-content select=\"[fd-illustrated-message-figcaption]\"></ng-content>\n <ng-content select=\"fd-illustrated-message-actions\"></ng-content>\n `,\n styleUrls: ['./illustrated-message.component.scss'],\n\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class IllustratedMessageComponent implements AfterViewInit, OnChanges, OnDestroy, OnInit, CssClassBuilder {\n /**\n * The type of the Illustrated Message\n * Options include: 'scene' | 'spot' | 'dialog'\n * The default type is set to 'scene'\n */\n @Input()\n type: IllustratedMessageType = 'scene';\n\n /**\n * An object containing url and id for each type used to construct the svg href\n * For 'scene' type 'scene' and 'dialog' values are required\n * In small screens (less than 600px) 'dialog' svg will be applied for 'scene' type\n */\n @Input()\n svgConfig: SvgConfig;\n\n /**\n * When set to true will remove the illustration from the Illustrated Message\n * The default is set to false\n */\n @Input()\n noSvg = false;\n\n /**\n * Id of the Illustrated Message\n * If not provided, a default one is generated\n */\n @Input()\n @HostBinding('attr.id')\n id: string = 'fd-illustrated-message-' + illustratedMessageUniqueId++;\n\n /** User's custom classes */\n @Input()\n class: string;\n\n /** @hidden */\n _href: string;\n\n /** @hidden */\n _isSmallScreen: boolean;\n\n /** @hidden */\n _inlineSvg: SafeHtml | undefined;\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** @hidden */\n constructor(private _elementRef: ElementRef, private _cdRef: ChangeDetectorRef, private _sanitizer: DomSanitizer) {}\n\n /** @hidden */\n ngOnChanges(): void {\n this.buildComponentCssClass();\n }\n\n /** @hidden */\n ngOnInit(): void {\n this.buildComponentCssClass();\n this._constructHref();\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n if (this.type === 'scene') {\n this._subscriptions.add(fromEvent(window, 'resize').subscribe(() => this._constructHref()));\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n }\n\n /** @hidden */\n elementRef(): ElementRef {\n return this._elementRef;\n }\n\n @applyCssClass\n /** CssClassBuilder interface implementation\n * function must return single string\n * function is responsible for order which css classes are applied\n */\n buildComponentCssClass(): string[] {\n return ['fd-illustrated-message', this.type ? `fd-illustrated-message--${this.type}` : '', this.class];\n }\n\n /** @hidden */\n private _constructHref(): void {\n let inlineSvg;\n this._inlineSvg = undefined;\n if (this.svgConfig) {\n switch (this.type) {\n case 'scene':\n this._isSmallScreen = window.innerWidth < 600;\n\n inlineSvg = this._isSmallScreen ? this.svgConfig.dialog?.file : this.svgConfig.scene?.file;\n\n this._href = this._isSmallScreen\n ? `${this.svgConfig.dialog?.url || ''}#${this.svgConfig.dialog?.id}`\n : `${this.svgConfig.scene?.url || ''}#${this.svgConfig.scene?.id}`;\n break;\n\n case 'dialog':\n inlineSvg = this.svgConfig.dialog?.file;\n this._href = `${this.svgConfig.dialog?.url || ''}#${this.svgConfig.dialog?.id}`;\n break;\n\n case 'spot':\n inlineSvg = this.svgConfig.spot?.file;\n this._href = `${this.svgConfig.spot?.url || ''}#${this.svgConfig.spot?.id}`;\n break;\n }\n }\n if (inlineSvg) {\n this._inlineSvg = this._sanitizer.bypassSecurityTrustHtml(inlineSvg);\n }\n\n this._cdRef.detectChanges();\n }\n}\n","import { Component, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n selector: 'fd-illustrated-message-actions',\n template: `<ng-content></ng-content>`,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-illustrated-message__actions'\n }\n})\nexport class IllustratedMessageActionsComponent {}\n","import { Component, ChangeDetectionStrategy } from '@angular/core';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-illustrated-message-figcaption]',\n template: `\n <ng-content select=\"[fd-illustrated-message-title]\"></ng-content>\n <ng-content select=\"[fd-illustrated-message-text]\"></ng-content>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-illustrated-message__figcaption'\n }\n})\nexport class IllustratedMessageFigcaptionComponent {}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n // TODO to be discussed\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-illustrated-message-text]'\n})\nexport class IllustratedMessageTextDirective {\n /** @hidden */\n @HostBinding('class.fd-illustrated-message__text')\n fdIllustratedMessageTextClass = true;\n}\n","import { Directive, HostBinding } from '@angular/core';\n\n@Directive({\n // TODO to be discussed\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-illustrated-message-title]'\n})\nexport class IllustratedMessageTitleDirective {\n /** @hidden */\n @HostBinding('class.fd-illustrated-message__title')\n fdIllustratedMessageTitleClass = true;\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { IllustratedMessageComponent } from './illustrated-message.component';\nimport { IllustratedMessageActionsComponent } from './components/illustrated-message-actions/illustrated-message-actions.component';\n// eslint-disable-next-line max-len\nimport { IllustratedMessageFigcaptionComponent } from './components/illustrated-message-figcaption/illustrated-message-figcaption.component';\nimport { IllustratedMessageTextDirective } from './directives/illustrated-message-text/illustrated-message-text.directive';\nimport { IllustratedMessageTitleDirective } from './directives/illustrated-message-title/illustrated-message-title.directive';\n\n@NgModule({\n declarations: [\n IllustratedMessageComponent,\n IllustratedMessageActionsComponent,\n IllustratedMessageFigcaptionComponent,\n IllustratedMessageTextDirective,\n IllustratedMessageTitleDirective\n ],\n imports: [CommonModule],\n exports: [\n IllustratedMessageComponent,\n IllustratedMessageActionsComponent,\n IllustratedMessageFigcaptionComponent,\n IllustratedMessageTextDirective,\n IllustratedMessageTitleDirective\n ]\n})\nexport class IllustratedMessageModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;;;AAgCA,IAAI,0BAA0B,GAAG,CAAC,CAAC;MAkBtB,2BAA2B;;IAiDpC,YAAoB,WAAuB,EAAU,MAAyB,EAAU,UAAwB;QAA5F,gBAAW,GAAX,WAAW,CAAY;QAAU,WAAM,GAAN,MAAM,CAAmB;QAAU,eAAU,GAAV,UAAU,CAAc;;;;;;QA1ChH,SAAI,GAA2B,OAAO,CAAC;;;;;QAevC,UAAK,GAAG,KAAK,CAAC;;;;;QAQd,OAAE,GAAW,yBAAyB,GAAG,0BAA0B,EAAE,CAAC;;QAgB9D,mBAAc,GAAG,IAAI,YAAY,EAAE,CAAC;KAGwE;;IAGpH,WAAW;QACP,IAAI,CAAC,sBAAsB,EAAE,CAAC;KACjC;;IAGD,QAAQ;QACJ,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,IAAI,CAAC,cAAc,EAAE,CAAC;KACzB;;IAGD,eAAe;QACX,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;YACvB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,SAAS,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;SAC/F;KACJ;;IAGD,WAAW;QACP,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;KACrC;;IAGD,UAAU;QACN,OAAO,IAAI,CAAC,WAAW,CAAC;KAC3B;;;;;IAOD,sBAAsB;QAClB,OAAO,CAAC,wBAAwB,EAAE,IAAI,CAAC,IAAI,GAAG,2BAA2B,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;KAC1G;;IAGO,cAAc;QAClB,IAAI,SAAS,CAAC;QACd,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,IAAI,CAAC,SAAS,EAAE;YAChB,QAAQ,IAAI,CAAC,IAAI;gBACb,KAAK,OAAO;oBACR,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,UAAU,GAAG,GAAG,CAAC;oBAE9C,SAAS,GAAG,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC;oBAE3F,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,cAAc;0BAC1B,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,EAAE;0BAClE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,IAAI,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC;oBACvE,MAAM;gBAEV,KAAK,QAAQ;oBACT,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC;oBACxC,IAAI,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,EAAE,CAAC;oBAChF,MAAM;gBAEV,KAAK,MAAM;oBACP,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC;oBACtC,IAAI,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC;oBAC5E,MAAM;aACb;SACJ;QACD,IAAI,SAAS,EAAE;YACX,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;SACxE;QAED,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;KAC/B;;wHAxHQ,2BAA2B;4GAA3B,2BAA2B,iOAb1B;;;;;;;KAOT;AA0FD;IALC,aAAa;;;;yEAOb;2FAtFQ,2BAA2B;kBAhBvC,SAAS;+BAEI,0BAA0B,YAC1B;;;;;;;KAOT,iBAGc,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM;4JAS/C,IAAI;sBADH,KAAK;gBASN,SAAS;sBADR,KAAK;gBAQN,KAAK;sBADJ,KAAK;gBASN,EAAE;sBAFD,KAAK;;sBACL,WAAW;uBAAC,SAAS;gBAKtB,KAAK;sBADJ,KAAK;;;;;;QAmDN,sBAAsB;;MC5Hb,kCAAkC;;+HAAlC,kCAAkC;mHAAlC,kCAAkC,mIANjC,2BAA2B;2FAM5B,kCAAkC;kBAR9C,SAAS;mBAAC;oBACP,QAAQ,EAAE,gCAAgC;oBAC1C,QAAQ,EAAE,2BAA2B;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,IAAI,EAAE;wBACF,KAAK,EAAE,iCAAiC;qBAC3C;iBACJ;;;MCKY,qCAAqC;;kIAArC,qCAAqC;sHAArC,qCAAqC,2IATpC;;;KAGT;2FAMQ,qCAAqC;kBAZjD,SAAS;mBAAC;;oBAEP,QAAQ,EAAE,qCAAqC;oBAC/C,QAAQ,EAAE;;;KAGT;oBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;oBAC/C,IAAI,EAAE;wBACF,KAAK,EAAE,oCAAoC;qBAC9C;iBACJ;;;MCNY,+BAA+B;IAL5C;;QAQI,kCAA6B,GAAG,IAAI,CAAC;KACxC;;4HAJY,+BAA+B;gHAA/B,+BAA+B;2FAA/B,+BAA+B;kBAL3C,SAAS;mBAAC;;;oBAGP,QAAQ,EAAE,+BAA+B;iBAC5C;8BAIG,6BAA6B;sBAD5B,WAAW;uBAAC,oCAAoC;;;MCFxC,gCAAgC;IAL7C;;QAQI,mCAA8B,GAAG,IAAI,CAAC;KACzC;;6HAJY,gCAAgC;iHAAhC,gCAAgC;2FAAhC,gCAAgC;kBAL5C,SAAS;mBAAC;;;oBAGP,QAAQ,EAAE,gCAAgC;iBAC7C;8BAIG,8BAA8B;sBAD7B,WAAW;uBAAC,qCAAqC;;;MCkBzC,wBAAwB;;qHAAxB,wBAAwB;sHAAxB,wBAAwB,iBAf7B,2BAA2B;QAC3B,kCAAkC;QAClC,qCAAqC;QACrC,+BAA+B;QAC/B,gCAAgC,aAE1B,YAAY,aAElB,2BAA2B;QAC3B,kCAAkC;QAClC,qCAAqC;QACrC,+BAA+B;QAC/B,gCAAgC;sHAG3B,wBAAwB,YATxB,CAAC,YAAY,CAAC;2FASd,wBAAwB;kBAjBpC,QAAQ;mBAAC;oBACN,YAAY,EAAE;wBACV,2BAA2B;wBAC3B,kCAAkC;wBAClC,qCAAqC;wBACrC,+BAA+B;wBAC/B,gCAAgC;qBACnC;oBACD,OAAO,EAAE,CAAC,YAAY,CAAC;oBACvB,OAAO,EAAE;wBACL,2BAA2B;wBAC3B,kCAAkC;wBAClC,qCAAqC;wBACrC,+BAA+B;wBAC/B,gCAAgC;qBACnC;iBACJ;;;AC1BD;;;;;;"}