@fundamental-ngx/core 0.63.2-rc.7 → 0.63.2

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 (204) hide show
  1. package/README.md +1 -1
  2. package/fesm2022/fundamental-ngx-core-action-bar.mjs +26 -27
  3. package/fesm2022/fundamental-ngx-core-action-bar.mjs.map +1 -1
  4. package/fesm2022/fundamental-ngx-core-action-sheet.mjs +22 -25
  5. package/fesm2022/fundamental-ngx-core-action-sheet.mjs.map +1 -1
  6. package/fesm2022/fundamental-ngx-core-avatar-group-legacy.mjs +31 -35
  7. package/fesm2022/fundamental-ngx-core-avatar-group-legacy.mjs.map +1 -1
  8. package/fesm2022/fundamental-ngx-core-avatar-group.mjs +43 -52
  9. package/fesm2022/fundamental-ngx-core-avatar-group.mjs.map +1 -1
  10. package/fesm2022/fundamental-ngx-core-avatar.mjs +43 -67
  11. package/fesm2022/fundamental-ngx-core-avatar.mjs.map +1 -1
  12. package/fesm2022/fundamental-ngx-core-bar.mjs +41 -50
  13. package/fesm2022/fundamental-ngx-core-bar.mjs.map +1 -1
  14. package/fesm2022/fundamental-ngx-core-breadcrumb.mjs +14 -18
  15. package/fesm2022/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
  16. package/fesm2022/fundamental-ngx-core-busy-indicator.mjs +23 -34
  17. package/fesm2022/fundamental-ngx-core-busy-indicator.mjs.map +1 -1
  18. package/fesm2022/fundamental-ngx-core-button.mjs +37 -56
  19. package/fesm2022/fundamental-ngx-core-button.mjs.map +1 -1
  20. package/fesm2022/fundamental-ngx-core-calendar.mjs +62 -87
  21. package/fesm2022/fundamental-ngx-core-calendar.mjs.map +1 -1
  22. package/fesm2022/fundamental-ngx-core-card.mjs +188 -264
  23. package/fesm2022/fundamental-ngx-core-card.mjs.map +1 -1
  24. package/fesm2022/fundamental-ngx-core-carousel.mjs +26 -35
  25. package/fesm2022/fundamental-ngx-core-carousel.mjs.map +1 -1
  26. package/fesm2022/fundamental-ngx-core-checkbox.mjs +7 -7
  27. package/fesm2022/fundamental-ngx-core-combobox.mjs +18 -19
  28. package/fesm2022/fundamental-ngx-core-combobox.mjs.map +1 -1
  29. package/fesm2022/fundamental-ngx-core-content-density.mjs +36 -46
  30. package/fesm2022/fundamental-ngx-core-content-density.mjs.map +1 -1
  31. package/fesm2022/fundamental-ngx-core-date-picker.mjs +13 -13
  32. package/fesm2022/fundamental-ngx-core-date-picker.mjs.map +1 -1
  33. package/fesm2022/fundamental-ngx-core-datetime-picker.mjs +14 -15
  34. package/fesm2022/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
  35. package/fesm2022/fundamental-ngx-core-datetime.mjs +31 -32
  36. package/fesm2022/fundamental-ngx-core-datetime.mjs.map +1 -1
  37. package/fesm2022/fundamental-ngx-core-dialog.mjs +89 -116
  38. package/fesm2022/fundamental-ngx-core-dialog.mjs.map +1 -1
  39. package/fesm2022/fundamental-ngx-core-dynamic-page.mjs +77 -100
  40. package/fesm2022/fundamental-ngx-core-dynamic-page.mjs.map +1 -1
  41. package/fesm2022/fundamental-ngx-core-dynamic-side-content.mjs +13 -13
  42. package/fesm2022/fundamental-ngx-core-facets.mjs +20 -24
  43. package/fesm2022/fundamental-ngx-core-facets.mjs.map +1 -1
  44. package/fesm2022/fundamental-ngx-core-feed-input.mjs +17 -18
  45. package/fesm2022/fundamental-ngx-core-feed-input.mjs.map +1 -1
  46. package/fesm2022/fundamental-ngx-core-feed-list-item.mjs +24 -24
  47. package/fesm2022/fundamental-ngx-core-feed-list-item.mjs.map +1 -1
  48. package/fesm2022/fundamental-ngx-core-file-uploader.mjs +16 -16
  49. package/fesm2022/fundamental-ngx-core-fixed-card-layout.mjs +15 -17
  50. package/fesm2022/fundamental-ngx-core-fixed-card-layout.mjs.map +1 -1
  51. package/fesm2022/fundamental-ngx-core-flexible-column-layout.mjs +7 -7
  52. package/fesm2022/fundamental-ngx-core-form.mjs +74 -74
  53. package/fesm2022/fundamental-ngx-core-form.mjs.map +1 -1
  54. package/fesm2022/fundamental-ngx-core-formatted-text.mjs +12 -17
  55. package/fesm2022/fundamental-ngx-core-formatted-text.mjs.map +1 -1
  56. package/fesm2022/fundamental-ngx-core-generic-tag.mjs +13 -19
  57. package/fesm2022/fundamental-ngx-core-generic-tag.mjs.map +1 -1
  58. package/fesm2022/fundamental-ngx-core-grid-list.mjs +51 -56
  59. package/fesm2022/fundamental-ngx-core-grid-list.mjs.map +1 -1
  60. package/fesm2022/fundamental-ngx-core-icon.mjs +20 -33
  61. package/fesm2022/fundamental-ngx-core-icon.mjs.map +1 -1
  62. package/fesm2022/fundamental-ngx-core-illustrated-message.mjs +31 -42
  63. package/fesm2022/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
  64. package/fesm2022/fundamental-ngx-core-infinite-scroll.mjs +9 -11
  65. package/fesm2022/fundamental-ngx-core-infinite-scroll.mjs.map +1 -1
  66. package/fesm2022/fundamental-ngx-core-info-label.mjs +18 -29
  67. package/fesm2022/fundamental-ngx-core-info-label.mjs.map +1 -1
  68. package/fesm2022/fundamental-ngx-core-inline-help.mjs +25 -35
  69. package/fesm2022/fundamental-ngx-core-inline-help.mjs.map +1 -1
  70. package/fesm2022/fundamental-ngx-core-input-group.mjs +21 -21
  71. package/fesm2022/fundamental-ngx-core-input-group.mjs.map +1 -1
  72. package/fesm2022/fundamental-ngx-core-layout-grid.mjs +27 -40
  73. package/fesm2022/fundamental-ngx-core-layout-grid.mjs.map +1 -1
  74. package/fesm2022/fundamental-ngx-core-layout-panel.mjs +37 -41
  75. package/fesm2022/fundamental-ngx-core-layout-panel.mjs.map +1 -1
  76. package/fesm2022/fundamental-ngx-core-link.mjs +19 -24
  77. package/fesm2022/fundamental-ngx-core-link.mjs.map +1 -1
  78. package/fesm2022/fundamental-ngx-core-list.mjs +91 -100
  79. package/fesm2022/fundamental-ngx-core-list.mjs.map +1 -1
  80. package/fesm2022/fundamental-ngx-core-menu.mjs +101 -125
  81. package/fesm2022/fundamental-ngx-core-menu.mjs.map +1 -1
  82. package/fesm2022/fundamental-ngx-core-message-box.mjs +38 -39
  83. package/fesm2022/fundamental-ngx-core-message-box.mjs.map +1 -1
  84. package/fesm2022/fundamental-ngx-core-message-page.mjs +19 -19
  85. package/fesm2022/fundamental-ngx-core-message-strip.mjs +55 -79
  86. package/fesm2022/fundamental-ngx-core-message-strip.mjs.map +1 -1
  87. package/fesm2022/fundamental-ngx-core-message-toast.mjs +17 -17
  88. package/fesm2022/fundamental-ngx-core-message-toast.mjs.map +1 -1
  89. package/fesm2022/fundamental-ngx-core-micro-process-flow.mjs +20 -21
  90. package/fesm2022/fundamental-ngx-core-micro-process-flow.mjs.map +1 -1
  91. package/fesm2022/fundamental-ngx-core-mobile-mode.mjs +3 -3
  92. package/fesm2022/fundamental-ngx-core-multi-combobox.mjs +66 -98
  93. package/fesm2022/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
  94. package/fesm2022/fundamental-ngx-core-multi-input.mjs +21 -27
  95. package/fesm2022/fundamental-ngx-core-multi-input.mjs.map +1 -1
  96. package/fesm2022/fundamental-ngx-core-nested-list.mjs +43 -46
  97. package/fesm2022/fundamental-ngx-core-nested-list.mjs.map +1 -1
  98. package/fesm2022/fundamental-ngx-core-notification.mjs +132 -178
  99. package/fesm2022/fundamental-ngx-core-notification.mjs.map +1 -1
  100. package/fesm2022/fundamental-ngx-core-object-attribute.mjs +7 -7
  101. package/fesm2022/fundamental-ngx-core-object-identifier.mjs +17 -24
  102. package/fesm2022/fundamental-ngx-core-object-identifier.mjs.map +1 -1
  103. package/fesm2022/fundamental-ngx-core-object-marker.mjs +24 -41
  104. package/fesm2022/fundamental-ngx-core-object-marker.mjs.map +1 -1
  105. package/fesm2022/fundamental-ngx-core-object-number.mjs +21 -33
  106. package/fesm2022/fundamental-ngx-core-object-number.mjs.map +1 -1
  107. package/fesm2022/fundamental-ngx-core-object-status.mjs +26 -41
  108. package/fesm2022/fundamental-ngx-core-object-status.mjs.map +1 -1
  109. package/fesm2022/fundamental-ngx-core-overflow-layout.mjs +32 -33
  110. package/fesm2022/fundamental-ngx-core-overflow-layout.mjs.map +1 -1
  111. package/fesm2022/fundamental-ngx-core-pagination.mjs +10 -10
  112. package/fesm2022/fundamental-ngx-core-pagination.mjs.map +1 -1
  113. package/fesm2022/fundamental-ngx-core-panel.mjs +35 -51
  114. package/fesm2022/fundamental-ngx-core-panel.mjs.map +1 -1
  115. package/fesm2022/fundamental-ngx-core-popover.mjs +164 -267
  116. package/fesm2022/fundamental-ngx-core-popover.mjs.map +1 -1
  117. package/fesm2022/fundamental-ngx-core-product-switch.mjs +32 -46
  118. package/fesm2022/fundamental-ngx-core-product-switch.mjs.map +1 -1
  119. package/fesm2022/fundamental-ngx-core-progress-indicator.mjs +7 -7
  120. package/fesm2022/fundamental-ngx-core-quick-view.mjs +44 -47
  121. package/fesm2022/fundamental-ngx-core-quick-view.mjs.map +1 -1
  122. package/fesm2022/fundamental-ngx-core-radio.mjs +8 -8
  123. package/fesm2022/fundamental-ngx-core-radio.mjs.map +1 -1
  124. package/fesm2022/fundamental-ngx-core-rating-indicator.mjs +39 -61
  125. package/fesm2022/fundamental-ngx-core-rating-indicator.mjs.map +1 -1
  126. package/fesm2022/fundamental-ngx-core-resizable-card-layout.mjs +11 -12
  127. package/fesm2022/fundamental-ngx-core-resizable-card-layout.mjs.map +1 -1
  128. package/fesm2022/fundamental-ngx-core-scroll-spy.mjs +12 -17
  129. package/fesm2022/fundamental-ngx-core-scroll-spy.mjs.map +1 -1
  130. package/fesm2022/fundamental-ngx-core-scrollbar.mjs +12 -14
  131. package/fesm2022/fundamental-ngx-core-scrollbar.mjs.map +1 -1
  132. package/fesm2022/fundamental-ngx-core-segmented-button.mjs +8 -9
  133. package/fesm2022/fundamental-ngx-core-segmented-button.mjs.map +1 -1
  134. package/fesm2022/fundamental-ngx-core-select.mjs +21 -22
  135. package/fesm2022/fundamental-ngx-core-select.mjs.map +1 -1
  136. package/fesm2022/fundamental-ngx-core-settings.mjs +60 -70
  137. package/fesm2022/fundamental-ngx-core-settings.mjs.map +1 -1
  138. package/fesm2022/fundamental-ngx-core-shared.mjs +3 -3
  139. package/fesm2022/fundamental-ngx-core-shellbar.mjs +63 -77
  140. package/fesm2022/fundamental-ngx-core-shellbar.mjs.map +1 -1
  141. package/fesm2022/fundamental-ngx-core-side-navigation.mjs +13 -13
  142. package/fesm2022/fundamental-ngx-core-skeleton.mjs +16 -24
  143. package/fesm2022/fundamental-ngx-core-skeleton.mjs.map +1 -1
  144. package/fesm2022/fundamental-ngx-core-slider.mjs +13 -15
  145. package/fesm2022/fundamental-ngx-core-slider.mjs.map +1 -1
  146. package/fesm2022/fundamental-ngx-core-split-button.mjs +10 -10
  147. package/fesm2022/fundamental-ngx-core-status-indicator.mjs +35 -62
  148. package/fesm2022/fundamental-ngx-core-status-indicator.mjs.map +1 -1
  149. package/fesm2022/fundamental-ngx-core-step-input.mjs +9 -11
  150. package/fesm2022/fundamental-ngx-core-step-input.mjs.map +1 -1
  151. package/fesm2022/fundamental-ngx-core-switch.mjs +8 -8
  152. package/fesm2022/fundamental-ngx-core-switch.mjs.map +1 -1
  153. package/fesm2022/fundamental-ngx-core-table.mjs +50 -51
  154. package/fesm2022/fundamental-ngx-core-table.mjs.map +1 -1
  155. package/fesm2022/fundamental-ngx-core-tabs.mjs +55 -56
  156. package/fesm2022/fundamental-ngx-core-tabs.mjs.map +1 -1
  157. package/fesm2022/fundamental-ngx-core-text.mjs +19 -29
  158. package/fesm2022/fundamental-ngx-core-text.mjs.map +1 -1
  159. package/fesm2022/fundamental-ngx-core-theming.mjs +7 -7
  160. package/fesm2022/fundamental-ngx-core-tile.mjs +136 -171
  161. package/fesm2022/fundamental-ngx-core-tile.mjs.map +1 -1
  162. package/fesm2022/fundamental-ngx-core-time-picker.mjs +8 -9
  163. package/fesm2022/fundamental-ngx-core-time-picker.mjs.map +1 -1
  164. package/fesm2022/fundamental-ngx-core-time.mjs +14 -17
  165. package/fesm2022/fundamental-ngx-core-time.mjs.map +1 -1
  166. package/fesm2022/fundamental-ngx-core-timeline.mjs +43 -43
  167. package/fesm2022/fundamental-ngx-core-title.mjs +10 -12
  168. package/fesm2022/fundamental-ngx-core-title.mjs.map +1 -1
  169. package/fesm2022/fundamental-ngx-core-token.mjs +25 -34
  170. package/fesm2022/fundamental-ngx-core-token.mjs.map +1 -1
  171. package/fesm2022/fundamental-ngx-core-toolbar.mjs +32 -35
  172. package/fesm2022/fundamental-ngx-core-toolbar.mjs.map +1 -1
  173. package/fesm2022/fundamental-ngx-core-tree.mjs +36 -41
  174. package/fesm2022/fundamental-ngx-core-tree.mjs.map +1 -1
  175. package/fesm2022/fundamental-ngx-core-upload-collection.mjs +57 -43
  176. package/fesm2022/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  177. package/fesm2022/fundamental-ngx-core-user-menu.mjs +84 -108
  178. package/fesm2022/fundamental-ngx-core-user-menu.mjs.map +1 -1
  179. package/fesm2022/fundamental-ngx-core-vertical-navigation.mjs +17 -20
  180. package/fesm2022/fundamental-ngx-core-vertical-navigation.mjs.map +1 -1
  181. package/fesm2022/fundamental-ngx-core-wizard.mjs +32 -41
  182. package/fesm2022/fundamental-ngx-core-wizard.mjs.map +1 -1
  183. package/fesm2022/fundamental-ngx-core.mjs +4 -4
  184. package/package.json +10 -11
  185. package/schematics/add-styles/index.js +3 -3
  186. package/schematics/add-styles/index.js.map +1 -1
  187. package/schematics/add-theming/index.js +1 -1
  188. package/schematics/add-theming/index.js.map +1 -1
  189. package/schematics/tsconfig.json +6 -12
  190. package/schematics/tsconfig.spec.json +0 -2
  191. package/schematics/utils/calls-providers-function.js +1 -34
  192. package/schematics/utils/calls-providers-function.js.map +1 -1
  193. package/schematics/utils/ng-module-utils.js +1 -34
  194. package/schematics/utils/ng-module-utils.js.map +1 -1
  195. package/types/fundamental-ngx-core-avatar-group-legacy.d.ts +0 -1
  196. package/types/fundamental-ngx-core-carousel.d.ts +0 -2
  197. package/types/fundamental-ngx-core-list.d.ts +2 -2
  198. package/types/fundamental-ngx-core-menu.d.ts +4 -4
  199. package/types/fundamental-ngx-core-notification.d.ts +2 -0
  200. package/types/fundamental-ngx-core-popover.d.ts +6 -8
  201. package/types/fundamental-ngx-core-product-switch.d.ts +3 -6
  202. package/types/fundamental-ngx-core-upload-collection.d.ts +2 -0
  203. package/types/fundamental-ngx-core-wizard.d.ts +1 -4
  204. package/schematics/package.json +0 -7
@@ -7,10 +7,10 @@ import { DomSanitizer } from '@angular/platform-browser';
7
7
  * Typically contains buttons or links for user actions.
8
8
  */
9
9
  class IllustratedMessageActionsComponent {
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: IllustratedMessageActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.5", type: IllustratedMessageActionsComponent, isStandalone: true, selector: "fd-illustrated-message-actions", host: { classAttribute: "fd-illustrated-message__actions" }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: IllustratedMessageActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.0", type: IllustratedMessageActionsComponent, isStandalone: true, selector: "fd-illustrated-message-actions", host: { classAttribute: "fd-illustrated-message__actions" }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12
12
  }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: IllustratedMessageActionsComponent, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: IllustratedMessageActionsComponent, decorators: [{
14
14
  type: Component,
15
15
  args: [{
16
16
  selector: 'fd-illustrated-message-actions',
@@ -27,13 +27,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
27
27
  * Contains title and text content slots.
28
28
  */
29
29
  class IllustratedMessageFigcaptionComponent {
30
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: IllustratedMessageFigcaptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
31
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.0.5", type: IllustratedMessageFigcaptionComponent, isStandalone: true, selector: "[fd-illustrated-message-figcaption]", host: { classAttribute: "fd-illustrated-message__figcaption" }, ngImport: i0, template: `
30
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: IllustratedMessageFigcaptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
31
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.0", type: IllustratedMessageFigcaptionComponent, isStandalone: true, selector: "[fd-illustrated-message-figcaption]", host: { classAttribute: "fd-illustrated-message__figcaption" }, ngImport: i0, template: `
32
32
  <ng-content select="[fd-illustrated-message-title]"></ng-content>
33
33
  <ng-content select="[fd-illustrated-message-text]"></ng-content>
34
34
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
35
35
  }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: IllustratedMessageFigcaptionComponent, decorators: [{
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: IllustratedMessageFigcaptionComponent, decorators: [{
37
37
  type: Component,
38
38
  args: [{
39
39
  // eslint-disable-next-line @angular-eslint/component-selector
@@ -53,10 +53,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
53
53
  * Directive for the text/description element within an illustrated message figcaption.
54
54
  */
55
55
  class IllustratedMessageTextDirective {
56
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: IllustratedMessageTextDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
57
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.5", type: IllustratedMessageTextDirective, isStandalone: true, selector: "[fd-illustrated-message-text]", host: { classAttribute: "fd-illustrated-message__text" }, ngImport: i0 }); }
56
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: IllustratedMessageTextDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
57
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.0", type: IllustratedMessageTextDirective, isStandalone: true, selector: "[fd-illustrated-message-text]", host: { classAttribute: "fd-illustrated-message__text" }, ngImport: i0 }); }
58
58
  }
59
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: IllustratedMessageTextDirective, decorators: [{
59
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: IllustratedMessageTextDirective, decorators: [{
60
60
  type: Directive,
61
61
  args: [{
62
62
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -71,10 +71,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
71
71
  * Directive for the title element within an illustrated message figcaption.
72
72
  */
73
73
  class IllustratedMessageTitleDirective {
74
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: IllustratedMessageTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
75
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.5", type: IllustratedMessageTitleDirective, isStandalone: true, selector: "[fd-illustrated-message-title]", host: { classAttribute: "fd-illustrated-message__title" }, ngImport: i0 }); }
74
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: IllustratedMessageTitleDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
75
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.1.0", type: IllustratedMessageTitleDirective, isStandalone: true, selector: "[fd-illustrated-message-title]", host: { classAttribute: "fd-illustrated-message__title" }, ngImport: i0 }); }
76
76
  }
77
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: IllustratedMessageTitleDirective, decorators: [{
77
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: IllustratedMessageTitleDirective, decorators: [{
78
78
  type: Directive,
79
79
  args: [{
80
80
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -133,27 +133,23 @@ class IllustratedMessageComponent {
133
133
  /**
134
134
  * Explicitly set the illustration type. If not provided, type is determined by container width.
135
135
  */
136
- this.type = input(/* @ts-ignore */
137
- ...(ngDevMode ? [undefined, { debugName: "type" }] : /* istanbul ignore next */ []));
136
+ this.type = input(...(ngDevMode ? [undefined, { debugName: "type" }] : []));
138
137
  /**
139
138
  * Configuration for SVG illustrations at different sizes.
140
139
  */
141
- this.svgConfig = input(/* @ts-ignore */
142
- ...(ngDevMode ? [undefined, { debugName: "svgConfig" }] : /* istanbul ignore next */ []));
140
+ this.svgConfig = input(...(ngDevMode ? [undefined, { debugName: "svgConfig" }] : []));
143
141
  /**
144
142
  * Accessible label for the SVG illustration.
145
143
  */
146
- this.svgAriaLabel = input(null, /* @ts-ignore */
147
- ...(ngDevMode ? [{ debugName: "svgAriaLabel" }] : /* istanbul ignore next */ []));
144
+ this.svgAriaLabel = input(null, ...(ngDevMode ? [{ debugName: "svgAriaLabel" }] : []));
148
145
  /**
149
146
  * When true, hides the SVG illustration entirely.
150
147
  */
151
- this.noSvg = input(false, { ...(ngDevMode ? { debugName: "noSvg" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
148
+ this.noSvg = input(false, { ...(ngDevMode ? { debugName: "noSvg" } : {}), transform: booleanAttribute });
152
149
  /**
153
150
  * Unique identifier for the illustrated message component.
154
151
  */
155
- this.id = input(`fd-illustrated-message-${++illustratedMessageUniqueId}`, /* @ts-ignore */
156
- ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
152
+ this.id = input(`fd-illustrated-message-${++illustratedMessageUniqueId}`, ...(ngDevMode ? [{ debugName: "id" }] : []));
157
153
  /**
158
154
  * Reference to the host element.
159
155
  */
@@ -162,8 +158,7 @@ class IllustratedMessageComponent {
162
158
  * Signal tracking container width for responsive behavior.
163
159
  * @hidden
164
160
  */
165
- this.containerWidth = signal(0, /* @ts-ignore */
166
- ...(ngDevMode ? [{ debugName: "containerWidth" }] : /* istanbul ignore next */ []));
161
+ this.containerWidth = signal(0, ...(ngDevMode ? [{ debugName: "containerWidth" }] : []));
167
162
  /**
168
163
  * Normalized illustration type from explicit input or legacy names.
169
164
  * @hidden
@@ -171,14 +166,12 @@ class IllustratedMessageComponent {
171
166
  this.normalizedInputType = computed(() => {
172
167
  const explicitType = this.type();
173
168
  return explicitType ? this._normalizeType(explicitType) : undefined;
174
- }, /* @ts-ignore */
175
- ...(ngDevMode ? [{ debugName: "normalizedInputType" }] : /* istanbul ignore next */ []));
169
+ }, ...(ngDevMode ? [{ debugName: "normalizedInputType" }] : []));
176
170
  /**
177
171
  * Current illustration type based on explicit type or container width.
178
172
  * @hidden
179
173
  */
180
- this.currentType = computed(() => this.normalizedInputType() || this._determineTypeByWidth(this.containerWidth()), /* @ts-ignore */
181
- ...(ngDevMode ? [{ debugName: "currentType" }] : /* istanbul ignore next */ []));
174
+ this.currentType = computed(() => this.normalizedInputType() || this._determineTypeByWidth(this.containerWidth()), ...(ngDevMode ? [{ debugName: "currentType" }] : []));
182
175
  /**
183
176
  * Normalized SVG configuration with legacy keys mapped to modern keys.
184
177
  * @hidden
@@ -186,8 +179,7 @@ class IllustratedMessageComponent {
186
179
  this.normalizedConfig = computed(() => {
187
180
  const config = this.svgConfig();
188
181
  return config ? this._normalizeSvgConfig(config) : null;
189
- }, /* @ts-ignore */
190
- ...(ngDevMode ? [{ debugName: "normalizedConfig" }] : /* istanbul ignore next */ []));
182
+ }, ...(ngDevMode ? [{ debugName: "normalizedConfig" }] : []));
191
183
  /**
192
184
  * Inline SVG content for the current type.
193
185
  * @hidden
@@ -197,8 +189,7 @@ class IllustratedMessageComponent {
197
189
  const type = this.currentType();
198
190
  const inlineSvg = config?.[type]?.file;
199
191
  return inlineSvg ? this._sanitizer.bypassSecurityTrustHtml(inlineSvg) : undefined;
200
- }, /* @ts-ignore */
201
- ...(ngDevMode ? [{ debugName: "inlineSvg" }] : /* istanbul ignore next */ []));
192
+ }, ...(ngDevMode ? [{ debugName: "inlineSvg" }] : []));
202
193
  /**
203
194
  * SVG href attribute for the current type.
204
195
  * @hidden
@@ -209,8 +200,7 @@ class IllustratedMessageComponent {
209
200
  return '';
210
201
  }
211
202
  return this._getHrefByType(this.currentType(), config);
212
- }, /* @ts-ignore */
213
- ...(ngDevMode ? [{ debugName: "href" }] : /* istanbul ignore next */ []));
203
+ }, ...(ngDevMode ? [{ debugName: "href" }] : []));
214
204
  /**
215
205
  * Computed CSS class string for the component.
216
206
  * @hidden
@@ -222,8 +212,7 @@ class IllustratedMessageComponent {
222
212
  classes.push(`fd-illustrated-message--${currentTypeValue}`);
223
213
  }
224
214
  return classes.join(' ');
225
- }, /* @ts-ignore */
226
- ...(ngDevMode ? [{ debugName: "cssClass" }] : /* istanbul ignore next */ []));
215
+ }, ...(ngDevMode ? [{ debugName: "cssClass" }] : []));
227
216
  /** @hidden */
228
217
  this._sanitizer = inject(DomSanitizer);
229
218
  /** @hidden */
@@ -322,10 +311,10 @@ class IllustratedMessageComponent {
322
311
  return '';
323
312
  }
324
313
  }
325
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: IllustratedMessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
326
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.5", type: IllustratedMessageComponent, isStandalone: true, selector: "[fd-illustrated-message]", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, svgConfig: { classPropertyName: "svgConfig", publicName: "svgConfig", isSignal: true, isRequired: false, transformFunction: null }, svgAriaLabel: { classPropertyName: "svgAriaLabel", publicName: "svgAriaLabel", isSignal: true, isRequired: false, transformFunction: null }, noSvg: { classPropertyName: "noSvg", publicName: "noSvg", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.id": "id()", "class": "cssClass()" } }, ngImport: i0, template: "<div class=\"fd-illustrated-message__container\">\n @if (!noSvg()) {\n <svg\n class=\"fd-illustrated-message__illustration\"\n [attr.aria-label]=\"svgAriaLabel()\"\n preserveAspectRatio=\"xMidYMid meet\"\n >\n <use [attr.href]=\"href()\"></use>\n </svg>\n }\n @if (inlineSvg()) {\n <div [style.display]=\"'none'\" [innerHTML]=\"inlineSvg()\"></div>\n }\n <ng-content select=\"[fd-illustrated-message-figcaption]\"></ng-content>\n</div>\n<ng-content select=\"fd-illustrated-message-actions\"></ng-content>\n", styles: [".fd-illustrated-message{--illustratedMessagePadding: 1rem;--actionsMarginBlockStart: .5rem;--illustrationMaxWidth: 20rem;--illustrationMaxHeight: 15rem;--illustrationMarginBlock: 1rem;--illustrationDisplay: flex;--figcaptionMaxWidth: 40.625rem;--titleFontSize: 2rem;--titleMarginBottom: 1rem;--textFontSize: var(--sapFontLargeSize);font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;text-align:center;padding-block:var(--illustratedMessagePadding);padding-inline:var(--illustratedMessagePadding)}.fd-illustrated-message:before,.fd-illustrated-message:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message-responsive-container{font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;min-height:100%;height:100%;container-type:inline-size}.fd-illustrated-message-responsive-container:before,.fd-illustrated-message-responsive-container:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message__container{font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;flex-direction:column;-webkit-box-align:var(--containerFlexAlignment, center);-ms-flex-align:var(--containerFlexAlignment, center);align-items:var(--containerFlexAlignment, center)}.fd-illustrated-message__container:before,.fd-illustrated-message__container:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message__illustration{font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;display:var(--illustrationDisplay);width:var(--illustrationMaxWidth);height:var(--illustrationMaxHeight);max-width:var(--illustrationMaxWidth);max-height:var(--illustrationMaxHeight);-webkit-margin-after:var(--illustrationMarginBlock);margin-block-end:var(--illustrationMarginBlock)}.fd-illustrated-message__illustration:before,.fd-illustrated-message__illustration:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message__figcaption{font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;overflow:hidden;max-width:var(--figcaptionMaxWidth)}.fd-illustrated-message__figcaption:before,.fd-illustrated-message__figcaption:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message__title{font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;width:100%;text-align:center;font-size:var(--titleFontSize);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontBoldFamily);-webkit-margin-after:var(--titleMarginBottom);margin-block-end:var(--titleMarginBottom)}.fd-illustrated-message__title:before,.fd-illustrated-message__title:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message__text{font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;text-wrap:wrap;text-align:center;font-size:var(--textFontSize)}.fd-illustrated-message__text:before,.fd-illustrated-message__text:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions{font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:.5rem;-webkit-margin-before:var(--actionsMarginBlockStart);margin-block-start:var(--actionsMarginBlockStart)}.fd-illustrated-message__actions:before,.fd-illustrated-message__actions:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message--dialog,.fd-illustrated-message--medium{--illustrationMaxWidth: 10rem;--illustrationMaxHeight: 10rem;--illustrationMarginBlock: .5rem;--titleFontSize: 1.5rem;--titleMarginBottom: .5rem;--textFontSize: var(--sapFontSize);--figcaptionMaxWidth: 19.938rem;--actionsMarginBlockStart: .5rem}.fd-illustrated-message--spot,.fd-illustrated-message--small{--illustratedMessagePadding: .5rem;--illustrationMaxWidth: 8rem;--illustrationMaxHeight: 8rem;--illustrationMarginBlock: .5rem;--titleMarginBottom: .5rem;--titleFontSize: 1.25rem;--textFontSize: var(--sapFontSize);--figcaptionMaxWidth: 10.938rem;--actionsMarginBlockStart: .5rem}.fd-illustrated-message--dot,.fd-illustrated-message--xsmall{--illustratedMessagePadding: .25rem;--illustrationMaxWidth: 2.8125rem;--illustrationMaxHeight: 2.8125rem;--illustrationMarginBlock: .25rem;--figcaptionMaxWidth: 8.438rem;--titleMarginBottom: .25rem;--titleFontSize: 1rem;--textFontSize: var(--sapFontSize);--actionsMarginBlockStart: .25rem}.fd-illustrated-message--base{--illustratedMessagePadding: .25rem;--illustrationDisplay: none;--figcaptionMaxWidth: 8.375rem;--titleMarginBottom: .25rem;--titleFontSize: 1rem;--textFontSize: var(--sapFontSize);--actionsMarginBlockStart: .25rem}@container (width < 22rem){.fd-illustrated-message{--illustrationMaxWidth: 10rem;--illustrationMaxHeight: 10rem;--illustrationMarginBlock: .5rem;--titleFontSize: 1.5rem;--titleMarginBottom: .5rem;--textFontSize: var(--sapFontSize);--figcaptionMaxWidth: 19.938rem;--actionsMarginBlockStart: .5rem}}@container (width < 21.938rem){.fd-illustrated-message{--illustratedMessagePadding: .5rem;--illustrationMaxWidth: 8rem;--illustrationMaxHeight: 8rem;--illustrationMarginBlock: .5rem;--titleMarginBottom: .5rem;--titleFontSize: 1.25rem;--textFontSize: var(--sapFontSize);--figcaptionMaxWidth: 10.938rem;--actionsMarginBlockStart: .5rem}}@container (width < 11.938rem){.fd-illustrated-message{--illustratedMessagePadding: .25rem;--illustrationMaxWidth: 2.8125rem;--illustrationMaxHeight: 2.8125rem;--illustrationMarginBlock: .25rem;--figcaptionMaxWidth: 8.438rem;--titleMarginBottom: .25rem;--titleFontSize: 1rem;--textFontSize: var(--sapFontSize);--actionsMarginBlockStart: .25rem}}@container (width < 8.938rem){.fd-illustrated-message{--illustratedMessagePadding: .25rem;--illustrationDisplay: none;--figcaptionMaxWidth: 8.375rem;--titleMarginBottom: .25rem;--titleFontSize: 1rem;--textFontSize: var(--sapFontSize);--actionsMarginBlockStart: .25rem}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
314
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: IllustratedMessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
315
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.0", type: IllustratedMessageComponent, isStandalone: true, selector: "[fd-illustrated-message]", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, svgConfig: { classPropertyName: "svgConfig", publicName: "svgConfig", isSignal: true, isRequired: false, transformFunction: null }, svgAriaLabel: { classPropertyName: "svgAriaLabel", publicName: "svgAriaLabel", isSignal: true, isRequired: false, transformFunction: null }, noSvg: { classPropertyName: "noSvg", publicName: "noSvg", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.id": "id()", "class": "cssClass()" } }, ngImport: i0, template: "<div class=\"fd-illustrated-message__container\">\n @if (!noSvg()) {\n <svg\n class=\"fd-illustrated-message__illustration\"\n [attr.aria-label]=\"svgAriaLabel()\"\n preserveAspectRatio=\"xMidYMid meet\"\n >\n <use [attr.href]=\"href()\"></use>\n </svg>\n }\n @if (inlineSvg()) {\n <div [style.display]=\"'none'\" [innerHTML]=\"inlineSvg()\"></div>\n }\n <ng-content select=\"[fd-illustrated-message-figcaption]\"></ng-content>\n</div>\n<ng-content select=\"fd-illustrated-message-actions\"></ng-content>\n", styles: [".fd-illustrated-message{--illustratedMessagePadding: 1rem;--actionsMarginBlockStart: .5rem;--illustrationMaxWidth: 20rem;--illustrationMaxHeight: 15rem;--illustrationMarginBlock: 1rem;--illustrationDisplay: flex;--figcaptionMaxWidth: 40.625rem;--titleFontSize: 2rem;--titleMarginBottom: 1rem;--textFontSize: var(--sapFontLargeSize);font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;text-align:center;padding-block:var(--illustratedMessagePadding);padding-inline:var(--illustratedMessagePadding)}.fd-illustrated-message:before,.fd-illustrated-message:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message-responsive-container{font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;min-height:100%;height:100%;container-type:inline-size}.fd-illustrated-message-responsive-container:before,.fd-illustrated-message-responsive-container:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message__container{font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;flex-direction:column;-webkit-box-align:var(--containerFlexAlignment, center);-ms-flex-align:var(--containerFlexAlignment, center);align-items:var(--containerFlexAlignment, center)}.fd-illustrated-message__container:before,.fd-illustrated-message__container:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message__illustration{font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;display:var(--illustrationDisplay);width:var(--illustrationMaxWidth);height:var(--illustrationMaxHeight);max-width:var(--illustrationMaxWidth);max-height:var(--illustrationMaxHeight);-webkit-margin-after:var(--illustrationMarginBlock);margin-block-end:var(--illustrationMarginBlock)}.fd-illustrated-message__illustration:before,.fd-illustrated-message__illustration:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message__figcaption{font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;overflow:hidden;max-width:var(--figcaptionMaxWidth)}.fd-illustrated-message__figcaption:before,.fd-illustrated-message__figcaption:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message__title{font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;width:100%;text-align:center;font-size:var(--titleFontSize);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontBoldFamily);-webkit-margin-after:var(--titleMarginBottom);margin-block-end:var(--titleMarginBottom)}.fd-illustrated-message__title:before,.fd-illustrated-message__title:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message__text{font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;text-wrap:wrap;text-align:center;font-size:var(--textFontSize)}.fd-illustrated-message__text:before,.fd-illustrated-message__text:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message__actions{font-size:var(--sapFontSize);line-height:normal;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;-webkit-box-sizing:border-box;box-sizing:border-box;forced-color-adjust:none;padding-inline:0;padding-block:0;margin-inline:0;margin-block:0;border:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:.5rem;-webkit-margin-before:var(--actionsMarginBlockStart);margin-block-start:var(--actionsMarginBlockStart)}.fd-illustrated-message__actions:before,.fd-illustrated-message__actions:after{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-illustrated-message--dialog,.fd-illustrated-message--medium{--illustrationMaxWidth: 10rem;--illustrationMaxHeight: 10rem;--illustrationMarginBlock: .5rem;--titleFontSize: 1.5rem;--titleMarginBottom: .5rem;--textFontSize: var(--sapFontSize);--figcaptionMaxWidth: 19.938rem;--actionsMarginBlockStart: .5rem}.fd-illustrated-message--spot,.fd-illustrated-message--small{--illustratedMessagePadding: .5rem;--illustrationMaxWidth: 8rem;--illustrationMaxHeight: 8rem;--illustrationMarginBlock: .5rem;--titleMarginBottom: .5rem;--titleFontSize: 1.25rem;--textFontSize: var(--sapFontSize);--figcaptionMaxWidth: 10.938rem;--actionsMarginBlockStart: .5rem}.fd-illustrated-message--dot,.fd-illustrated-message--xsmall{--illustratedMessagePadding: .25rem;--illustrationMaxWidth: 2.8125rem;--illustrationMaxHeight: 2.8125rem;--illustrationMarginBlock: .25rem;--figcaptionMaxWidth: 8.438rem;--titleMarginBottom: .25rem;--titleFontSize: 1rem;--textFontSize: var(--sapFontSize);--actionsMarginBlockStart: .25rem}.fd-illustrated-message--base{--illustratedMessagePadding: .25rem;--illustrationDisplay: none;--figcaptionMaxWidth: 8.375rem;--titleMarginBottom: .25rem;--titleFontSize: 1rem;--textFontSize: var(--sapFontSize);--actionsMarginBlockStart: .25rem}@container (width < 22rem){.fd-illustrated-message{--illustrationMaxWidth: 10rem;--illustrationMaxHeight: 10rem;--illustrationMarginBlock: .5rem;--titleFontSize: 1.5rem;--titleMarginBottom: .5rem;--textFontSize: var(--sapFontSize);--figcaptionMaxWidth: 19.938rem;--actionsMarginBlockStart: .5rem}}@container (width < 21.938rem){.fd-illustrated-message{--illustratedMessagePadding: .5rem;--illustrationMaxWidth: 8rem;--illustrationMaxHeight: 8rem;--illustrationMarginBlock: .5rem;--titleMarginBottom: .5rem;--titleFontSize: 1.25rem;--textFontSize: var(--sapFontSize);--figcaptionMaxWidth: 10.938rem;--actionsMarginBlockStart: .5rem}}@container (width < 11.938rem){.fd-illustrated-message{--illustratedMessagePadding: .25rem;--illustrationMaxWidth: 2.8125rem;--illustrationMaxHeight: 2.8125rem;--illustrationMarginBlock: .25rem;--figcaptionMaxWidth: 8.438rem;--titleMarginBottom: .25rem;--titleFontSize: 1rem;--textFontSize: var(--sapFontSize);--actionsMarginBlockStart: .25rem}}@container (width < 8.938rem){.fd-illustrated-message{--illustratedMessagePadding: .25rem;--illustrationDisplay: none;--figcaptionMaxWidth: 8.375rem;--titleMarginBottom: .25rem;--titleFontSize: 1rem;--textFontSize: var(--sapFontSize);--actionsMarginBlockStart: .25rem}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
327
316
  }
328
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: IllustratedMessageComponent, decorators: [{
317
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: IllustratedMessageComponent, decorators: [{
329
318
  type: Component,
330
319
  args: [{ selector: '[fd-illustrated-message]', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [], host: {
331
320
  '[attr.id]': 'id()',
@@ -345,8 +334,8 @@ const components = [
345
334
  * Use direct imports of components and directives.
346
335
  */
347
336
  class IllustratedMessageModule {
348
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: IllustratedMessageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
349
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.5", ngImport: i0, type: IllustratedMessageModule, imports: [IllustratedMessageComponent,
337
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: IllustratedMessageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
338
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.0", ngImport: i0, type: IllustratedMessageModule, imports: [IllustratedMessageComponent,
350
339
  IllustratedMessageActionsComponent,
351
340
  IllustratedMessageFigcaptionComponent,
352
341
  IllustratedMessageTextDirective,
@@ -355,9 +344,9 @@ class IllustratedMessageModule {
355
344
  IllustratedMessageFigcaptionComponent,
356
345
  IllustratedMessageTextDirective,
357
346
  IllustratedMessageTitleDirective] }); }
358
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: IllustratedMessageModule }); }
347
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: IllustratedMessageModule }); }
359
348
  }
360
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: IllustratedMessageModule, decorators: [{
349
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: IllustratedMessageModule, decorators: [{
361
350
  type: NgModule,
362
351
  args: [{
363
352
  imports: [...components],
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-illustrated-message.mjs","sources":["../../../../libs/core/illustrated-message/components/illustrated-message-actions/illustrated-message-actions.component.ts","../../../../libs/core/illustrated-message/components/illustrated-message-figcaption/illustrated-message-figcaption.component.ts","../../../../libs/core/illustrated-message/directives/illustrated-message-text/illustrated-message-text.directive.ts","../../../../libs/core/illustrated-message/directives/illustrated-message-title/illustrated-message-title.directive.ts","../../../../libs/core/illustrated-message/illustrated-message.component.ts","../../../../libs/core/illustrated-message/illustrated-message.component.html","../../../../libs/core/illustrated-message/illustrated-message.module.ts","../../../../libs/core/illustrated-message/fundamental-ngx-core-illustrated-message.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n/**\n * Component representing the actions section of an illustrated message.\n * Typically contains buttons or links for user actions.\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 { ChangeDetectionStrategy, Component } from '@angular/core';\n\n/**\n * Component representing the figcaption section of an illustrated message.\n * Contains title and text content slots.\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 } from '@angular/core';\n\n/**\n * Directive for the text/description element within an illustrated message figcaption.\n */\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-illustrated-message-text]',\n host: {\n class: 'fd-illustrated-message__text'\n }\n})\nexport class IllustratedMessageTextDirective {}\n","import { Directive } from '@angular/core';\n\n/**\n * Directive for the title element within an illustrated message figcaption.\n */\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-illustrated-message-title]',\n host: {\n class: 'fd-illustrated-message__title'\n }\n})\nexport class IllustratedMessageTitleDirective {}\n","import {\n afterNextRender,\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n computed,\n DestroyRef,\n ElementRef,\n inject,\n input,\n signal,\n ViewEncapsulation\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { HasElementRef, RequireOnlyOne } from '@fundamental-ngx/cdk/utils';\n\n/**\n * Configuration for an SVG item in the illustrated message.\n */\nexport interface SvgItemConfig {\n /** URL to the SVG sprite file */\n url: string;\n /** ID of the symbol within the SVG sprite */\n id: string;\n /** Inline SVG file content */\n file: string;\n}\n\n/**\n * Configuration for different SVG sizes in the illustrated message.\n * Supports both modern (large, medium, small, xsmall) and legacy (scene, dialog, spot, dot) naming.\n */\nexport interface SvgConfig {\n /** Configuration for large/scene size (>= 682px) */\n large?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n /** Configuration for medium/dialog size (361px - 681px) */\n medium?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n /** Configuration for small/spot size (261px - 360px) */\n small?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n /** Configuration for extra small/dot size (161px - 260px) */\n xsmall?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n\n /** @deprecated Use 'large' instead */\n scene?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n /** @deprecated Use 'medium' instead */\n dialog?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n /** @deprecated Use 'small' instead */\n spot?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n /** @deprecated Use 'xsmall' instead */\n dot?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n}\n\n/**\n * Type of illustrated message based on container width or explicit configuration.\n * Modern types: large, medium, small, xsmall, base\n * Legacy types: scene, dialog, spot, dot\n */\nexport type IllustratedMessageType =\n | 'large'\n | 'medium'\n | 'small'\n | 'xsmall'\n | 'base'\n | 'scene'\n | 'dialog'\n | 'spot'\n | 'dot';\n\n/**\n * Enumeration of illustrated message types with their string values.\n */\nexport enum IllustratedMessageTypes {\n LARGE = 'large',\n MEDIUM = 'medium',\n SMALL = 'small',\n EXTRA_SMALL = 'xsmall',\n BASE = 'base',\n /** @deprecated Use LARGE instead */\n SCENE = 'scene',\n /** @deprecated Use MEDIUM instead */\n DIALOG = 'dialog',\n /** @deprecated Use SMALL instead */\n SPOT = 'spot',\n /** @deprecated Use EXTRA_SMALL instead */\n DOT = 'dot'\n}\n\nlet illustratedMessageUniqueId = 0;\n\n/**\n * Component representing an illustrated message with responsive SVG illustration.\n *\n * The component automatically adjusts its illustration size based on container width:\n * - Large (>= 682px)\n * - Medium (361px - 681px)\n * - Small (261px - 360px)\n * - Extra Small (161px - 260px)\n * - Base (< 161px)\n *\n * Supports both URL-based SVG sprites and inline SVG content.\n *\n * @example\n * ```html\n * <div fd-illustrated-message [svgConfig]=\"svgConfig\">\n * <figcaption fd-illustrated-message-figcaption>\n * <h3>No Data Available</h3>\n * <p>Please check back later</p>\n * </figcaption>\n * </div>\n * ```\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-illustrated-message]',\n templateUrl: './illustrated-message.component.html',\n styleUrl: './illustrated-message.component.scss',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [],\n host: {\n '[attr.id]': 'id()',\n '[class]': 'cssClass()'\n }\n})\nexport class IllustratedMessageComponent implements HasElementRef {\n /**\n * Explicitly set the illustration type. If not provided, type is determined by container width.\n */\n readonly type = input<IllustratedMessageType>();\n\n /**\n * Configuration for SVG illustrations at different sizes.\n */\n readonly svgConfig = input<SvgConfig>();\n\n /**\n * Accessible label for the SVG illustration.\n */\n readonly svgAriaLabel = input<string | null | undefined>(null);\n\n /**\n * When true, hides the SVG illustration entirely.\n */\n readonly noSvg = input(false, { transform: booleanAttribute });\n\n /**\n * Unique identifier for the illustrated message component.\n */\n readonly id = input<string>(`fd-illustrated-message-${++illustratedMessageUniqueId}`);\n\n /**\n * Reference to the host element.\n */\n readonly elementRef = inject(ElementRef);\n\n /**\n * Signal tracking container width for responsive behavior.\n * @hidden\n */\n protected readonly containerWidth = signal<number>(0);\n\n /**\n * Normalized illustration type from explicit input or legacy names.\n * @hidden\n */\n protected readonly normalizedInputType = computed(() => {\n const explicitType = this.type();\n return explicitType ? this._normalizeType(explicitType) : undefined;\n });\n\n /**\n * Current illustration type based on explicit type or container width.\n * @hidden\n */\n protected readonly currentType = computed(\n () => this.normalizedInputType() || this._determineTypeByWidth(this.containerWidth())\n );\n\n /**\n * Normalized SVG configuration with legacy keys mapped to modern keys.\n * @hidden\n */\n protected readonly normalizedConfig = computed(() => {\n const config = this.svgConfig();\n return config ? this._normalizeSvgConfig(config) : null;\n });\n\n /**\n * Inline SVG content for the current type.\n * @hidden\n */\n protected readonly inlineSvg = computed(() => {\n const config = this.normalizedConfig();\n const type = this.currentType();\n const inlineSvg = config?.[type]?.file;\n return inlineSvg ? this._sanitizer.bypassSecurityTrustHtml(inlineSvg) : undefined;\n });\n\n /**\n * SVG href attribute for the current type.\n * @hidden\n */\n protected readonly href = computed(() => {\n const config = this.normalizedConfig();\n if (!config) {\n return '';\n }\n return this._getHrefByType(this.currentType(), config);\n });\n\n /**\n * Computed CSS class string for the component.\n * @hidden\n */\n protected readonly cssClass = computed(() => {\n const classes: string[] = ['fd-illustrated-message'];\n\n const currentTypeValue = this.currentType();\n if (currentTypeValue) {\n classes.push(`fd-illustrated-message--${currentTypeValue}`);\n }\n\n return classes.join(' ');\n });\n\n /** @hidden */\n private readonly _sanitizer = inject(DomSanitizer);\n\n /** @hidden */\n private readonly _destroyRef = inject(DestroyRef);\n\n /** @hidden */\n constructor() {\n afterNextRender(() => {\n const observer = new ResizeObserver(() => {\n this._measureContainerWidth();\n });\n observer.observe(this.elementRef.nativeElement);\n this._destroyRef.onDestroy(() => observer.disconnect());\n });\n }\n\n /**\n * Measures and updates the container width.\n * @private\n */\n private _measureContainerWidth(): void {\n const width = this.elementRef.nativeElement.offsetWidth;\n\n if (this.containerWidth() !== width) {\n this.containerWidth.set(width);\n }\n }\n\n /**\n * Determines the illustration type based on container width.\n * @param width - Container width in pixels\n * @returns Appropriate illustration type\n * @private\n */\n private _determineTypeByWidth(width: number): IllustratedMessageType {\n if (width >= 682) {\n return IllustratedMessageTypes.LARGE;\n } else if (width >= 361) {\n return IllustratedMessageTypes.MEDIUM;\n } else if (width >= 261) {\n return IllustratedMessageTypes.SMALL;\n } else if (width >= 161) {\n return IllustratedMessageTypes.EXTRA_SMALL;\n }\n\n return IllustratedMessageTypes.BASE;\n }\n\n /**\n * Normalizes legacy type names to modern equivalents.\n * @param type - Illustration type to normalize\n * @returns Normalized illustration type\n * @private\n */\n private _normalizeType(type: IllustratedMessageType): IllustratedMessageType {\n switch (type) {\n case 'scene':\n return 'large';\n case 'dialog':\n return 'medium';\n case 'spot':\n return 'small';\n case 'dot':\n return 'xsmall';\n default:\n return type;\n }\n }\n\n /**\n * Normalizes SVG configuration, mapping legacy keys to modern keys.\n * @param config - SVG configuration to normalize\n * @returns Normalized SVG configuration\n * @private\n */\n private _normalizeSvgConfig(config: SvgConfig): SvgConfig {\n return {\n large: config.large || config.scene,\n medium: config.medium || config.dialog,\n small: config.small || config.spot,\n xsmall: config.xsmall || config.dot\n };\n }\n\n /**\n * Constructs the SVG href attribute value for the given type.\n * @param type - Illustration type\n * @param svgConfig - Normalized SVG configuration\n * @returns SVG href string\n * @private\n */\n private _getHrefByType(type: IllustratedMessageType, svgConfig: SvgConfig): string {\n switch (type) {\n case 'large':\n return `${svgConfig.large?.url || ''}#${svgConfig.large?.id}`;\n case 'medium':\n return `${svgConfig.medium?.url || ''}#${svgConfig.medium?.id}`;\n case 'small':\n return `${svgConfig.small?.url || ''}#${svgConfig.small?.id}`;\n case 'xsmall':\n return `${svgConfig.xsmall?.url || ''}#${svgConfig.xsmall?.id}`;\n default:\n return '';\n }\n }\n}\n","<div class=\"fd-illustrated-message__container\">\n @if (!noSvg()) {\n <svg\n class=\"fd-illustrated-message__illustration\"\n [attr.aria-label]=\"svgAriaLabel()\"\n preserveAspectRatio=\"xMidYMid meet\"\n >\n <use [attr.href]=\"href()\"></use>\n </svg>\n }\n @if (inlineSvg()) {\n <div [style.display]=\"'none'\" [innerHTML]=\"inlineSvg()\"></div>\n }\n <ng-content select=\"[fd-illustrated-message-figcaption]\"></ng-content>\n</div>\n<ng-content select=\"fd-illustrated-message-actions\"></ng-content>\n","import { NgModule } from '@angular/core';\n\nimport { IllustratedMessageActionsComponent } from './components/illustrated-message-actions/illustrated-message-actions.component';\nimport { IllustratedMessageComponent } from './illustrated-message.component';\n\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\nconst components = [\n IllustratedMessageComponent,\n IllustratedMessageActionsComponent,\n IllustratedMessageFigcaptionComponent,\n IllustratedMessageTextDirective,\n IllustratedMessageTitleDirective\n];\n\n/**\n * @deprecated\n * Use direct imports of components and directives.\n */\n@NgModule({\n imports: [...components],\n exports: [...components]\n})\nexport class IllustratedMessageModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-core-illustrated-message.mjs","sources":["../../../../libs/core/illustrated-message/components/illustrated-message-actions/illustrated-message-actions.component.ts","../../../../libs/core/illustrated-message/components/illustrated-message-figcaption/illustrated-message-figcaption.component.ts","../../../../libs/core/illustrated-message/directives/illustrated-message-text/illustrated-message-text.directive.ts","../../../../libs/core/illustrated-message/directives/illustrated-message-title/illustrated-message-title.directive.ts","../../../../libs/core/illustrated-message/illustrated-message.component.ts","../../../../libs/core/illustrated-message/illustrated-message.component.html","../../../../libs/core/illustrated-message/illustrated-message.module.ts","../../../../libs/core/illustrated-message/fundamental-ngx-core-illustrated-message.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n/**\n * Component representing the actions section of an illustrated message.\n * Typically contains buttons or links for user actions.\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 { ChangeDetectionStrategy, Component } from '@angular/core';\n\n/**\n * Component representing the figcaption section of an illustrated message.\n * Contains title and text content slots.\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 } from '@angular/core';\n\n/**\n * Directive for the text/description element within an illustrated message figcaption.\n */\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-illustrated-message-text]',\n host: {\n class: 'fd-illustrated-message__text'\n }\n})\nexport class IllustratedMessageTextDirective {}\n","import { Directive } from '@angular/core';\n\n/**\n * Directive for the title element within an illustrated message figcaption.\n */\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-illustrated-message-title]',\n host: {\n class: 'fd-illustrated-message__title'\n }\n})\nexport class IllustratedMessageTitleDirective {}\n","import {\n afterNextRender,\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n computed,\n DestroyRef,\n ElementRef,\n inject,\n input,\n signal,\n ViewEncapsulation\n} from '@angular/core';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { HasElementRef, RequireOnlyOne } from '@fundamental-ngx/cdk/utils';\n\n/**\n * Configuration for an SVG item in the illustrated message.\n */\nexport interface SvgItemConfig {\n /** URL to the SVG sprite file */\n url: string;\n /** ID of the symbol within the SVG sprite */\n id: string;\n /** Inline SVG file content */\n file: string;\n}\n\n/**\n * Configuration for different SVG sizes in the illustrated message.\n * Supports both modern (large, medium, small, xsmall) and legacy (scene, dialog, spot, dot) naming.\n */\nexport interface SvgConfig {\n /** Configuration for large/scene size (>= 682px) */\n large?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n /** Configuration for medium/dialog size (361px - 681px) */\n medium?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n /** Configuration for small/spot size (261px - 360px) */\n small?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n /** Configuration for extra small/dot size (161px - 260px) */\n xsmall?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n\n /** @deprecated Use 'large' instead */\n scene?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n /** @deprecated Use 'medium' instead */\n dialog?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n /** @deprecated Use 'small' instead */\n spot?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n /** @deprecated Use 'xsmall' instead */\n dot?: RequireOnlyOne<SvgItemConfig, 'url' | 'file'>;\n}\n\n/**\n * Type of illustrated message based on container width or explicit configuration.\n * Modern types: large, medium, small, xsmall, base\n * Legacy types: scene, dialog, spot, dot\n */\nexport type IllustratedMessageType =\n | 'large'\n | 'medium'\n | 'small'\n | 'xsmall'\n | 'base'\n | 'scene'\n | 'dialog'\n | 'spot'\n | 'dot';\n\n/**\n * Enumeration of illustrated message types with their string values.\n */\nexport enum IllustratedMessageTypes {\n LARGE = 'large',\n MEDIUM = 'medium',\n SMALL = 'small',\n EXTRA_SMALL = 'xsmall',\n BASE = 'base',\n /** @deprecated Use LARGE instead */\n SCENE = 'scene',\n /** @deprecated Use MEDIUM instead */\n DIALOG = 'dialog',\n /** @deprecated Use SMALL instead */\n SPOT = 'spot',\n /** @deprecated Use EXTRA_SMALL instead */\n DOT = 'dot'\n}\n\nlet illustratedMessageUniqueId = 0;\n\n/**\n * Component representing an illustrated message with responsive SVG illustration.\n *\n * The component automatically adjusts its illustration size based on container width:\n * - Large (>= 682px)\n * - Medium (361px - 681px)\n * - Small (261px - 360px)\n * - Extra Small (161px - 260px)\n * - Base (< 161px)\n *\n * Supports both URL-based SVG sprites and inline SVG content.\n *\n * @example\n * ```html\n * <div fd-illustrated-message [svgConfig]=\"svgConfig\">\n * <figcaption fd-illustrated-message-figcaption>\n * <h3>No Data Available</h3>\n * <p>Please check back later</p>\n * </figcaption>\n * </div>\n * ```\n */\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: '[fd-illustrated-message]',\n templateUrl: './illustrated-message.component.html',\n styleUrl: './illustrated-message.component.scss',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [],\n host: {\n '[attr.id]': 'id()',\n '[class]': 'cssClass()'\n }\n})\nexport class IllustratedMessageComponent implements HasElementRef {\n /**\n * Explicitly set the illustration type. If not provided, type is determined by container width.\n */\n readonly type = input<IllustratedMessageType>();\n\n /**\n * Configuration for SVG illustrations at different sizes.\n */\n readonly svgConfig = input<SvgConfig>();\n\n /**\n * Accessible label for the SVG illustration.\n */\n readonly svgAriaLabel = input<string | null | undefined>(null);\n\n /**\n * When true, hides the SVG illustration entirely.\n */\n readonly noSvg = input(false, { transform: booleanAttribute });\n\n /**\n * Unique identifier for the illustrated message component.\n */\n readonly id = input<string>(`fd-illustrated-message-${++illustratedMessageUniqueId}`);\n\n /**\n * Reference to the host element.\n */\n readonly elementRef = inject(ElementRef);\n\n /**\n * Signal tracking container width for responsive behavior.\n * @hidden\n */\n protected readonly containerWidth = signal<number>(0);\n\n /**\n * Normalized illustration type from explicit input or legacy names.\n * @hidden\n */\n protected readonly normalizedInputType = computed(() => {\n const explicitType = this.type();\n return explicitType ? this._normalizeType(explicitType) : undefined;\n });\n\n /**\n * Current illustration type based on explicit type or container width.\n * @hidden\n */\n protected readonly currentType = computed(\n () => this.normalizedInputType() || this._determineTypeByWidth(this.containerWidth())\n );\n\n /**\n * Normalized SVG configuration with legacy keys mapped to modern keys.\n * @hidden\n */\n protected readonly normalizedConfig = computed(() => {\n const config = this.svgConfig();\n return config ? this._normalizeSvgConfig(config) : null;\n });\n\n /**\n * Inline SVG content for the current type.\n * @hidden\n */\n protected readonly inlineSvg = computed(() => {\n const config = this.normalizedConfig();\n const type = this.currentType();\n const inlineSvg = config?.[type]?.file;\n return inlineSvg ? this._sanitizer.bypassSecurityTrustHtml(inlineSvg) : undefined;\n });\n\n /**\n * SVG href attribute for the current type.\n * @hidden\n */\n protected readonly href = computed(() => {\n const config = this.normalizedConfig();\n if (!config) {\n return '';\n }\n return this._getHrefByType(this.currentType(), config);\n });\n\n /**\n * Computed CSS class string for the component.\n * @hidden\n */\n protected readonly cssClass = computed(() => {\n const classes: string[] = ['fd-illustrated-message'];\n\n const currentTypeValue = this.currentType();\n if (currentTypeValue) {\n classes.push(`fd-illustrated-message--${currentTypeValue}`);\n }\n\n return classes.join(' ');\n });\n\n /** @hidden */\n private readonly _sanitizer = inject(DomSanitizer);\n\n /** @hidden */\n private readonly _destroyRef = inject(DestroyRef);\n\n /** @hidden */\n constructor() {\n afterNextRender(() => {\n const observer = new ResizeObserver(() => {\n this._measureContainerWidth();\n });\n observer.observe(this.elementRef.nativeElement);\n this._destroyRef.onDestroy(() => observer.disconnect());\n });\n }\n\n /**\n * Measures and updates the container width.\n * @private\n */\n private _measureContainerWidth(): void {\n const width = this.elementRef.nativeElement.offsetWidth;\n\n if (this.containerWidth() !== width) {\n this.containerWidth.set(width);\n }\n }\n\n /**\n * Determines the illustration type based on container width.\n * @param width - Container width in pixels\n * @returns Appropriate illustration type\n * @private\n */\n private _determineTypeByWidth(width: number): IllustratedMessageType {\n if (width >= 682) {\n return IllustratedMessageTypes.LARGE;\n } else if (width >= 361) {\n return IllustratedMessageTypes.MEDIUM;\n } else if (width >= 261) {\n return IllustratedMessageTypes.SMALL;\n } else if (width >= 161) {\n return IllustratedMessageTypes.EXTRA_SMALL;\n }\n\n return IllustratedMessageTypes.BASE;\n }\n\n /**\n * Normalizes legacy type names to modern equivalents.\n * @param type - Illustration type to normalize\n * @returns Normalized illustration type\n * @private\n */\n private _normalizeType(type: IllustratedMessageType): IllustratedMessageType {\n switch (type) {\n case 'scene':\n return 'large';\n case 'dialog':\n return 'medium';\n case 'spot':\n return 'small';\n case 'dot':\n return 'xsmall';\n default:\n return type;\n }\n }\n\n /**\n * Normalizes SVG configuration, mapping legacy keys to modern keys.\n * @param config - SVG configuration to normalize\n * @returns Normalized SVG configuration\n * @private\n */\n private _normalizeSvgConfig(config: SvgConfig): SvgConfig {\n return {\n large: config.large || config.scene,\n medium: config.medium || config.dialog,\n small: config.small || config.spot,\n xsmall: config.xsmall || config.dot\n };\n }\n\n /**\n * Constructs the SVG href attribute value for the given type.\n * @param type - Illustration type\n * @param svgConfig - Normalized SVG configuration\n * @returns SVG href string\n * @private\n */\n private _getHrefByType(type: IllustratedMessageType, svgConfig: SvgConfig): string {\n switch (type) {\n case 'large':\n return `${svgConfig.large?.url || ''}#${svgConfig.large?.id}`;\n case 'medium':\n return `${svgConfig.medium?.url || ''}#${svgConfig.medium?.id}`;\n case 'small':\n return `${svgConfig.small?.url || ''}#${svgConfig.small?.id}`;\n case 'xsmall':\n return `${svgConfig.xsmall?.url || ''}#${svgConfig.xsmall?.id}`;\n default:\n return '';\n }\n }\n}\n","<div class=\"fd-illustrated-message__container\">\n @if (!noSvg()) {\n <svg\n class=\"fd-illustrated-message__illustration\"\n [attr.aria-label]=\"svgAriaLabel()\"\n preserveAspectRatio=\"xMidYMid meet\"\n >\n <use [attr.href]=\"href()\"></use>\n </svg>\n }\n @if (inlineSvg()) {\n <div [style.display]=\"'none'\" [innerHTML]=\"inlineSvg()\"></div>\n }\n <ng-content select=\"[fd-illustrated-message-figcaption]\"></ng-content>\n</div>\n<ng-content select=\"fd-illustrated-message-actions\"></ng-content>\n","import { NgModule } from '@angular/core';\n\nimport { IllustratedMessageActionsComponent } from './components/illustrated-message-actions/illustrated-message-actions.component';\nimport { IllustratedMessageComponent } from './illustrated-message.component';\n\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\nconst components = [\n IllustratedMessageComponent,\n IllustratedMessageActionsComponent,\n IllustratedMessageFigcaptionComponent,\n IllustratedMessageTextDirective,\n IllustratedMessageTitleDirective\n];\n\n/**\n * @deprecated\n * Use direct imports of components and directives.\n */\n@NgModule({\n imports: [...components],\n exports: [...components]\n})\nexport class IllustratedMessageModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -10,11 +10,9 @@ import { debounceTime, filter } from 'rxjs/operators';
10
10
  class InfiniteScrollDirective {
11
11
  constructor() {
12
12
  /** Scroll percentage at which the onScrollAction event is fired. */
13
- this.scrollPercent = input(75, /* @ts-ignore */
14
- ...(ngDevMode ? [{ debugName: "scrollPercent" }] : /* istanbul ignore next */ []));
13
+ this.scrollPercent = input(75, ...(ngDevMode ? [{ debugName: "scrollPercent" }] : []));
15
14
  /** Scroll PX at which the onScrollAction event is fired. */
16
- this.scrollOffset = input(null, /* @ts-ignore */
17
- ...(ngDevMode ? [{ debugName: "scrollOffset" }] : /* istanbul ignore next */ []));
15
+ this.scrollOffset = input(null, ...(ngDevMode ? [{ debugName: "scrollOffset" }] : []));
18
16
  /** Event emitted when the scrollPercent threshold is met. */
19
17
  // eslint-disable-next-line @angular-eslint/no-output-on-prefix
20
18
  this.onScrollAction = output();
@@ -42,10 +40,10 @@ class InfiniteScrollDirective {
42
40
  .pipe(debounceTime(50), filter(() => this.shouldTriggerAction()), takeUntilDestroyed(this._destroyRef))
43
41
  .subscribe(() => this.onScrollAction.emit());
44
42
  }
45
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: InfiniteScrollDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
46
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.5", type: InfiniteScrollDirective, isStandalone: true, selector: "[fdInfiniteScroll]", inputs: { scrollPercent: { classPropertyName: "scrollPercent", publicName: "scrollPercent", isSignal: true, isRequired: false, transformFunction: null }, scrollOffset: { classPropertyName: "scrollOffset", publicName: "scrollOffset", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onScrollAction: "onScrollAction" }, ngImport: i0 }); }
43
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: InfiniteScrollDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
44
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.0", type: InfiniteScrollDirective, isStandalone: true, selector: "[fdInfiniteScroll]", inputs: { scrollPercent: { classPropertyName: "scrollPercent", publicName: "scrollPercent", isSignal: true, isRequired: false, transformFunction: null }, scrollOffset: { classPropertyName: "scrollOffset", publicName: "scrollOffset", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onScrollAction: "onScrollAction" }, ngImport: i0 }); }
47
45
  }
48
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: InfiniteScrollDirective, decorators: [{
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: InfiniteScrollDirective, decorators: [{
49
47
  type: Directive,
50
48
  args: [{
51
49
  selector: '[fdInfiniteScroll]'
@@ -57,11 +55,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
57
55
  * Use direct imports of components and directives.
58
56
  */
59
57
  class InfiniteScrollModule {
60
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: InfiniteScrollModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
61
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.5", ngImport: i0, type: InfiniteScrollModule, imports: [InfiniteScrollDirective], exports: [InfiniteScrollDirective] }); }
62
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: InfiniteScrollModule }); }
58
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: InfiniteScrollModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
59
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.0", ngImport: i0, type: InfiniteScrollModule, imports: [InfiniteScrollDirective], exports: [InfiniteScrollDirective] }); }
60
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: InfiniteScrollModule }); }
63
61
  }
64
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: InfiniteScrollModule, decorators: [{
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: InfiniteScrollModule, decorators: [{
65
63
  type: NgModule,
66
64
  args: [{
67
65
  imports: [InfiniteScrollDirective],
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-infinite-scroll.mjs","sources":["../../../../libs/core/infinite-scroll/infinite-scroll.directive.ts","../../../../libs/core/infinite-scroll/infinite-scroll.module.ts","../../../../libs/core/infinite-scroll/fundamental-ngx-core-infinite-scroll.ts"],"sourcesContent":["import { DestroyRef, Directive, ElementRef, inject, input, output } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Nullable } from '@fundamental-ngx/cdk/utils';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime, filter } from 'rxjs/operators';\n\n/**\n * Tool directive used to achieve the infinite scroll mechanism.\n */\n@Directive({\n selector: '[fdInfiniteScroll]'\n})\nexport class InfiniteScrollDirective {\n /** Scroll percentage at which the onScrollAction event is fired. */\n readonly scrollPercent = input(75);\n\n /** Scroll PX at which the onScrollAction event is fired. */\n readonly scrollOffset = input<Nullable<number>>(null);\n\n /** Event emitted when the scrollPercent threshold is met. */\n // eslint-disable-next-line @angular-eslint/no-output-on-prefix\n readonly onScrollAction = output<void>();\n\n /** @hidden */\n private readonly _element = inject(ElementRef);\n\n /** @hidden */\n private readonly _destroyRef = inject(DestroyRef);\n\n constructor() {\n this._listenOnScroll();\n }\n\n /** @hidden */\n shouldTriggerAction(): boolean {\n const element = this._element.nativeElement;\n const offset: number = element.scrollTop + element.offsetHeight;\n const scrollOffsetValue = this.scrollOffset();\n if (scrollOffsetValue) {\n return offset > element.scrollHeight - scrollOffsetValue;\n } else {\n return offset / element.scrollHeight > this.scrollPercent() / 100;\n }\n }\n\n /** @hidden */\n private _listenOnScroll(): void {\n fromEvent(this._element.nativeElement, 'scroll')\n .pipe(\n debounceTime(50),\n filter(() => this.shouldTriggerAction()),\n takeUntilDestroyed(this._destroyRef)\n )\n .subscribe(() => this.onScrollAction.emit());\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { InfiniteScrollDirective } from './infinite-scroll.directive';\n\n/**\n * @deprecated\n * Use direct imports of components and directives.\n */\n@NgModule({\n imports: [InfiniteScrollDirective],\n exports: [InfiniteScrollDirective]\n})\nexport class InfiniteScrollModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAMA;;AAEG;MAIU,uBAAuB,CAAA;AAiBhC,IAAA,WAAA,GAAA;;QAfS,IAAA,CAAA,aAAa,GAAG,KAAK,CAAC,EAAE;0FAAC;;QAGzB,IAAA,CAAA,YAAY,GAAG,KAAK,CAAmB,IAAI;yFAAC;;;QAI5C,IAAA,CAAA,cAAc,GAAG,MAAM,EAAQ;;AAGvB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC;;AAG7B,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;QAG7C,IAAI,CAAC,eAAe,EAAE;IAC1B;;IAGA,mBAAmB,GAAA;AACf,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa;QAC3C,MAAM,MAAM,GAAW,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,YAAY;AAC/D,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,EAAE;QAC7C,IAAI,iBAAiB,EAAE;AACnB,YAAA,OAAO,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,iBAAiB;QAC5D;aAAO;AACH,YAAA,OAAO,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,GAAG;QACrE;IACJ;;IAGQ,eAAe,GAAA;QACnB,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ;aAC1C,IAAI,CACD,YAAY,CAAC,EAAE,CAAC,EAChB,MAAM,CAAC,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC,EACxC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC;aAEvC,SAAS,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;IACpD;8GA1CS,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAvB,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAHnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE;AACb,iBAAA;;;ACPD;;;AAGG;MAKU,oBAAoB,CAAA;8GAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAApB,oBAAoB,EAAA,OAAA,EAAA,CAHnB,uBAAuB,CAAA,EAAA,OAAA,EAAA,CACvB,uBAAuB,CAAA,EAAA,CAAA,CAAA;+GAExB,oBAAoB,EAAA,CAAA,CAAA;;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACN,OAAO,EAAE,CAAC,uBAAuB,CAAC;oBAClC,OAAO,EAAE,CAAC,uBAAuB;AACpC,iBAAA;;;ACXD;;AAEG;;;;"}
1
+ {"version":3,"file":"fundamental-ngx-core-infinite-scroll.mjs","sources":["../../../../libs/core/infinite-scroll/infinite-scroll.directive.ts","../../../../libs/core/infinite-scroll/infinite-scroll.module.ts","../../../../libs/core/infinite-scroll/fundamental-ngx-core-infinite-scroll.ts"],"sourcesContent":["import { DestroyRef, Directive, ElementRef, inject, input, output } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Nullable } from '@fundamental-ngx/cdk/utils';\nimport { fromEvent } from 'rxjs';\nimport { debounceTime, filter } from 'rxjs/operators';\n\n/**\n * Tool directive used to achieve the infinite scroll mechanism.\n */\n@Directive({\n selector: '[fdInfiniteScroll]'\n})\nexport class InfiniteScrollDirective {\n /** Scroll percentage at which the onScrollAction event is fired. */\n readonly scrollPercent = input(75);\n\n /** Scroll PX at which the onScrollAction event is fired. */\n readonly scrollOffset = input<Nullable<number>>(null);\n\n /** Event emitted when the scrollPercent threshold is met. */\n // eslint-disable-next-line @angular-eslint/no-output-on-prefix\n readonly onScrollAction = output<void>();\n\n /** @hidden */\n private readonly _element = inject(ElementRef);\n\n /** @hidden */\n private readonly _destroyRef = inject(DestroyRef);\n\n constructor() {\n this._listenOnScroll();\n }\n\n /** @hidden */\n shouldTriggerAction(): boolean {\n const element = this._element.nativeElement;\n const offset: number = element.scrollTop + element.offsetHeight;\n const scrollOffsetValue = this.scrollOffset();\n if (scrollOffsetValue) {\n return offset > element.scrollHeight - scrollOffsetValue;\n } else {\n return offset / element.scrollHeight > this.scrollPercent() / 100;\n }\n }\n\n /** @hidden */\n private _listenOnScroll(): void {\n fromEvent(this._element.nativeElement, 'scroll')\n .pipe(\n debounceTime(50),\n filter(() => this.shouldTriggerAction()),\n takeUntilDestroyed(this._destroyRef)\n )\n .subscribe(() => this.onScrollAction.emit());\n }\n}\n","import { NgModule } from '@angular/core';\n\nimport { InfiniteScrollDirective } from './infinite-scroll.directive';\n\n/**\n * @deprecated\n * Use direct imports of components and directives.\n */\n@NgModule({\n imports: [InfiniteScrollDirective],\n exports: [InfiniteScrollDirective]\n})\nexport class InfiniteScrollModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAMA;;AAEG;MAIU,uBAAuB,CAAA;AAiBhC,IAAA,WAAA,GAAA;;AAfS,QAAA,IAAA,CAAA,aAAa,GAAG,KAAK,CAAC,EAAE,yDAAC;;AAGzB,QAAA,IAAA,CAAA,YAAY,GAAG,KAAK,CAAmB,IAAI,wDAAC;;;QAI5C,IAAA,CAAA,cAAc,GAAG,MAAM,EAAQ;;AAGvB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,UAAU,CAAC;;AAG7B,QAAA,IAAA,CAAA,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;QAG7C,IAAI,CAAC,eAAe,EAAE;IAC1B;;IAGA,mBAAmB,GAAA;AACf,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa;QAC3C,MAAM,MAAM,GAAW,OAAO,CAAC,SAAS,GAAG,OAAO,CAAC,YAAY;AAC/D,QAAA,MAAM,iBAAiB,GAAG,IAAI,CAAC,YAAY,EAAE;QAC7C,IAAI,iBAAiB,EAAE;AACnB,YAAA,OAAO,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,iBAAiB;QAC5D;aAAO;AACH,YAAA,OAAO,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,GAAG;QACrE;IACJ;;IAGQ,eAAe,GAAA;QACnB,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,QAAQ;aAC1C,IAAI,CACD,YAAY,CAAC,EAAE,CAAC,EAChB,MAAM,CAAC,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC,EACxC,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC;aAEvC,SAAS,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;IACpD;8GA1CS,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAvB,uBAAuB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,aAAA,EAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,UAAA,EAAA,eAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBAHnC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE;AACb,iBAAA;;;ACPD;;;AAGG;MAKU,oBAAoB,CAAA;8GAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;+GAApB,oBAAoB,EAAA,OAAA,EAAA,CAHnB,uBAAuB,CAAA,EAAA,OAAA,EAAA,CACvB,uBAAuB,CAAA,EAAA,CAAA,CAAA;+GAExB,oBAAoB,EAAA,CAAA,CAAA;;2FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAJhC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACN,OAAO,EAAE,CAAC,uBAAuB,CAAC;oBAClC,OAAO,EAAE,CAAC,uBAAuB;AACpC,iBAAA;;;ACXD;;AAEG;;;;"}
@@ -14,56 +14,47 @@ class InfoLabelComponent {
14
14
  * - `undefined`: Default text-only label (omit this property for default)
15
15
  * @default undefined
16
16
  */
17
- this.type = input(/* @ts-ignore */
18
- ...(ngDevMode ? [undefined, { debugName: "type" }] : /* istanbul ignore next */ []));
17
+ this.type = input(...(ngDevMode ? [undefined, { debugName: "type" }] : []));
19
18
  /**
20
19
  * The icon name to display when `type` is set to `'icon'`.
21
20
  * @default null
22
21
  */
23
- this.glyph = input(/* @ts-ignore */
24
- ...(ngDevMode ? [undefined, { debugName: "glyph" }] : /* istanbul ignore next */ []));
22
+ this.glyph = input(...(ngDevMode ? [undefined, { debugName: "glyph" }] : []));
25
23
  /**
26
24
  * The icon font family to use for the icon.
27
25
  * @default 'SAP-icons'
28
26
  */
29
- this.font = input('SAP-icons', /* @ts-ignore */
30
- ...(ngDevMode ? [{ debugName: "font" }] : /* istanbul ignore next */ []));
27
+ this.font = input('SAP-icons', ...(ngDevMode ? [{ debugName: "font" }] : []));
31
28
  /**
32
29
  * Accent color of the info label, ranging from 1 to 10.
33
30
  * Invalid values default to 7 with a console warning in development mode.
34
31
  * @default 7
35
32
  */
36
- this.color = input(defaultColor, /* @ts-ignore */
37
- ...(ngDevMode ? [{ debugName: "color" }] : /* istanbul ignore next */ []));
33
+ this.color = input(defaultColor, ...(ngDevMode ? [{ debugName: "color" }] : []));
38
34
  /**
39
35
  * The text content displayed in the info label.
40
36
  */
41
- this.label = input(/* @ts-ignore */
42
- ...(ngDevMode ? [undefined, { debugName: "label" }] : /* istanbul ignore next */ []));
37
+ this.label = input(...(ngDevMode ? [undefined, { debugName: "label" }] : []));
43
38
  /**
44
39
  * Tooltip text displayed on hover.
45
40
  * Provides additional context about the label.
46
41
  */
47
- this.title = input(/* @ts-ignore */
48
- ...(ngDevMode ? [undefined, { debugName: "title" }] : /* istanbul ignore next */ []));
42
+ this.title = input(...(ngDevMode ? [undefined, { debugName: "title" }] : []));
49
43
  /**
50
44
  * ARIA label for accessibility.
51
45
  * Overrides the visible label for screen readers when provided.
52
46
  */
53
- this.ariaLabel = input(/* @ts-ignore */
54
- ...(ngDevMode ? [undefined, { debugName: "ariaLabel" }] : /* istanbul ignore next */ []));
47
+ this.ariaLabel = input(...(ngDevMode ? [undefined, { debugName: "ariaLabel" }] : []));
55
48
  /**
56
49
  * ARIA labelledby for accessibility.
57
50
  * Used when the label is provided by another element.
58
51
  */
59
- this.ariaLabelledBy = input(/* @ts-ignore */
60
- ...(ngDevMode ? [undefined, { debugName: "ariaLabelledBy" }] : /* istanbul ignore next */ []));
52
+ this.ariaLabelledBy = input(...(ngDevMode ? [undefined, { debugName: "ariaLabelledBy" }] : []));
61
53
  /**
62
54
  * Screen reader only text for additional context.
63
55
  * Defaults to translated "Info Label" if not provided.
64
56
  */
65
- this.srText = input(/* @ts-ignore */
66
- ...(ngDevMode ? [undefined, { debugName: "srText" }] : /* istanbul ignore next */ []));
57
+ this.srText = input(...(ngDevMode ? [undefined, { debugName: "srText" }] : []));
67
58
  /** @hidden */
68
59
  this.elementRef = inject(ElementRef);
69
60
  /** @hidden Validated color with fallback to default */
@@ -74,8 +65,7 @@ class InfoLabelComponent {
74
65
  return numericColor;
75
66
  }
76
67
  return defaultColor; // Default fallback for invalid values
77
- }, /* @ts-ignore */
78
- ...(ngDevMode ? [{ debugName: "validatedColor" }] : /* istanbul ignore next */ []));
68
+ }, ...(ngDevMode ? [{ debugName: "validatedColor" }] : []));
79
69
  /** @hidden */
80
70
  this.cssClass = computed(() => [
81
71
  'fd-info-label',
@@ -83,13 +73,12 @@ class InfoLabelComponent {
83
73
  `fd-info-label--accent-color-${this.validatedColor()}`
84
74
  ]
85
75
  .filter(Boolean)
86
- .join(' '), /* @ts-ignore */
87
- ...(ngDevMode ? [{ debugName: "cssClass" }] : /* istanbul ignore next */ []));
76
+ .join(' '), ...(ngDevMode ? [{ debugName: "cssClass" }] : []));
88
77
  }
89
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: InfoLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
90
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.5", type: InfoLabelComponent, isStandalone: true, selector: "fd-info-label", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, glyph: { classPropertyName: "glyph", publicName: "glyph", isSignal: true, isRequired: false, transformFunction: null }, font: { classPropertyName: "font", publicName: "font", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, srText: { classPropertyName: "srText", publicName: "srText", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "cssClass()" } }, ngImport: i0, template: "@if (glyph()) {\n <fd-icon\n class=\"fd-info-label__icon\"\n [glyph]=\"glyph()\"\n [font]=\"font()\"\n role=\"presentation\"\n aria-hidden=\"true\"\n ></fd-icon>\n}\n@if (label()) {\n <span\n class=\"fd-info-label__text\"\n [attr.title]=\"title()\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n >{{ label() }}</span\n >\n}\n<span class=\"fd-info-label__sr-only\">{{ srText() || ('coreInfoLabel.srOnlyText' | fdTranslate)() }}</span>\n", styles: [".fd-info-label{--fdInfoLabel_Margin:.25rem;--fdInfoLabel_Padding:.375rem;--fdInfoLabel_Icon_Size:.75rem;--fdInfoLabel_Height:var(--fdInfo_Label_Height);--fdInfoLabel_Label_Font_Size:var(--sapFontSize);--fdInfoLabel_Color:var(--fdInfoLabel_Color_Accent_7);--fdInfoLabel_Border_Radius:var(--fdInfo_Label_Border_Radius);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Background_Color7);--fdInfoLabel_Background:var(--fdInfoLabel_Background_Color_Accent_7);border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-inline:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:var(--fdInfoLabel_Background);border:.0625rem solid var(--fdInfoLabel_Border_Color);border-radius:var(--fdInfoLabel_Border_Radius);color:var(--fdInfoLabel_Color);gap:var(--fdInfoLabel_Margin);height:var(--fdInfoLabel_Height);padding-block:0;padding-inline:var(--fdInfoLabel_Padding);width:auto}.fd-info-label:after,.fd-info-label:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-info-label__icon [class*=sap-icon],.fd-info-label__icon[class*=sap-icon]{color:inherit;font-size:var(--fdInfoLabel_Icon_Size);height:var(--fdInfoLabel_Height);line-height:var(--fdInfoLabel_Height)}.fd-info-label__text{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:inherit;font-family:var(--sapFontFamily);font-family:var(--sapFontSemiboldDuplexFamily);font-size:var(--sapFontSize);font-size:var(--fdInfoLabel_Label_Font_Size);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-info-label__text:after,.fd-info-label__text:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-info-label__sr-only{position:absolute;clip:rect(0 0 0 0);border:0;height:1px;margin-block:-1px;margin-inline:-1px;overflow:hidden;padding-block:0;padding-inline:0;white-space:nowrap;width:1px}.fd-info-label--accent-color-1{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color1);--fdInfoLabel_Color:var(--fdInfo_Label_Color1);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color1)}.fd-info-label--accent-color-2{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color2);--fdInfoLabel_Color:var(--fdInfo_Label_Color2);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color2)}.fd-info-label--accent-color-3{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color3);--fdInfoLabel_Color:var(--fdInfo_Label_Color3);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color3)}.fd-info-label--accent-color-4{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color4);--fdInfoLabel_Color:var(--fdInfo_Label_Color4);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color4)}.fd-info-label--accent-color-5{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color5);--fdInfoLabel_Color:var(--fdInfo_Label_Color5);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color5)}.fd-info-label--accent-color-6{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color6);--fdInfoLabel_Color:var(--fdInfo_Label_Color6);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color6)}.fd-info-label--accent-color-7{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color7);--fdInfoLabel_Color:var(--fdInfo_Label_Color7);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color7)}.fd-info-label--accent-color-8{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color8);--fdInfoLabel_Color:var(--fdInfo_Label_Color8);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color8)}.fd-info-label--accent-color-9{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color9);--fdInfoLabel_Color:var(--fdInfo_Label_Color9);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color9)}.fd-info-label--accent-color-10{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color10);--fdInfoLabel_Color:var(--fdInfo_Label_Color10);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color10)}.fd-info-label--display{--fdInfoLabel_Padding:.25rem;--fdInfoLabel_Margin:.125rem;--fdInfoLabel_Icon_Size:.625rem;--fdInfoLabel_Label_Font_Size:var(--sapFontSmallSize);--fdInfoLabel_Height:var(--fdInfo_Label_Height_Display);--fdInfoLabel_Border_Radius:var(--fdInfo_Label_Border_Radius_Display)}.fd-info-label__sr-only{position:absolute;clip:rect(0 0 0 0);height:1px;width:1px;border:0;margin-inline:-1px;margin-block:-1px;padding-inline:0;padding-block:0;overflow:hidden;white-space:nowrap}\n/*! Bundled license information:\n\nfundamental-styles/dist/info-label.css:\n (*!\n * Fundamental Library Styles v0.41.8\n * Copyright (c) 2026 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"], dependencies: [{ kind: "component", type: IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "size", "class", "ariaLabel", "ariaHidden"], outputs: ["ariaHiddenChange"] }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
78
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: InfoLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
79
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.0", type: InfoLabelComponent, isStandalone: true, selector: "fd-info-label", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, glyph: { classPropertyName: "glyph", publicName: "glyph", isSignal: true, isRequired: false, transformFunction: null }, font: { classPropertyName: "font", publicName: "font", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "ariaLabel", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledBy: { classPropertyName: "ariaLabelledBy", publicName: "ariaLabelledBy", isSignal: true, isRequired: false, transformFunction: null }, srText: { classPropertyName: "srText", publicName: "srText", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "cssClass()" } }, ngImport: i0, template: "@if (glyph()) {\n <fd-icon\n class=\"fd-info-label__icon\"\n [glyph]=\"glyph()\"\n [font]=\"font()\"\n role=\"presentation\"\n aria-hidden=\"true\"\n ></fd-icon>\n}\n@if (label()) {\n <span\n class=\"fd-info-label__text\"\n [attr.title]=\"title()\"\n [attr.aria-label]=\"ariaLabel()\"\n [attr.aria-labelledby]=\"ariaLabelledBy()\"\n >{{ label() }}</span\n >\n}\n<span class=\"fd-info-label__sr-only\">{{ srText() || ('coreInfoLabel.srOnlyText' | fdTranslate)() }}</span>\n", styles: [".fd-info-label{--fdInfoLabel_Margin:.25rem;--fdInfoLabel_Padding:.375rem;--fdInfoLabel_Icon_Size:.75rem;--fdInfoLabel_Height:var(--fdInfo_Label_Height);--fdInfoLabel_Label_Font_Size:var(--sapFontSize);--fdInfoLabel_Color:var(--fdInfoLabel_Color_Accent_7);--fdInfoLabel_Border_Radius:var(--fdInfo_Label_Border_Radius);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Background_Color7);--fdInfoLabel_Background:var(--fdInfoLabel_Background_Color_Accent_7);border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-inline:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:var(--fdInfoLabel_Background);border:.0625rem solid var(--fdInfoLabel_Border_Color);border-radius:var(--fdInfoLabel_Border_Radius);color:var(--fdInfoLabel_Color);gap:var(--fdInfoLabel_Margin);height:var(--fdInfoLabel_Height);padding-block:0;padding-inline:var(--fdInfoLabel_Padding);width:auto}.fd-info-label:after,.fd-info-label:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-info-label__icon [class*=sap-icon],.fd-info-label__icon[class*=sap-icon]{color:inherit;font-size:var(--fdInfoLabel_Icon_Size);height:var(--fdInfoLabel_Height);line-height:var(--fdInfoLabel_Height)}.fd-info-label__text{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:inherit;font-family:var(--sapFontFamily);font-family:var(--sapFontSemiboldDuplexFamily);font-size:var(--sapFontSize);font-size:var(--fdInfoLabel_Label_Font_Size);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-info-label__text:after,.fd-info-label__text:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-info-label__sr-only{position:absolute;clip:rect(0 0 0 0);border:0;height:1px;margin-block:-1px;margin-inline:-1px;overflow:hidden;padding-block:0;padding-inline:0;white-space:nowrap;width:1px}.fd-info-label--accent-color-1{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color1);--fdInfoLabel_Color:var(--fdInfo_Label_Color1);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color1)}.fd-info-label--accent-color-2{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color2);--fdInfoLabel_Color:var(--fdInfo_Label_Color2);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color2)}.fd-info-label--accent-color-3{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color3);--fdInfoLabel_Color:var(--fdInfo_Label_Color3);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color3)}.fd-info-label--accent-color-4{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color4);--fdInfoLabel_Color:var(--fdInfo_Label_Color4);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color4)}.fd-info-label--accent-color-5{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color5);--fdInfoLabel_Color:var(--fdInfo_Label_Color5);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color5)}.fd-info-label--accent-color-6{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color6);--fdInfoLabel_Color:var(--fdInfo_Label_Color6);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color6)}.fd-info-label--accent-color-7{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color7);--fdInfoLabel_Color:var(--fdInfo_Label_Color7);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color7)}.fd-info-label--accent-color-8{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color8);--fdInfoLabel_Color:var(--fdInfo_Label_Color8);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color8)}.fd-info-label--accent-color-9{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color9);--fdInfoLabel_Color:var(--fdInfo_Label_Color9);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color9)}.fd-info-label--accent-color-10{--fdInfoLabel_Background:var(--fdInfo_Label_Background_Color10);--fdInfoLabel_Color:var(--fdInfo_Label_Color10);--fdInfoLabel_Border_Color:var(--fdInfo_Label_Border_Color10)}.fd-info-label--display{--fdInfoLabel_Padding:.25rem;--fdInfoLabel_Margin:.125rem;--fdInfoLabel_Icon_Size:.625rem;--fdInfoLabel_Label_Font_Size:var(--sapFontSmallSize);--fdInfoLabel_Height:var(--fdInfo_Label_Height_Display);--fdInfoLabel_Border_Radius:var(--fdInfo_Label_Border_Radius_Display)}.fd-info-label__sr-only{position:absolute;clip:rect(0 0 0 0);height:1px;width:1px;border:0;margin-inline:-1px;margin-block:-1px;padding-inline:0;padding-block:0;overflow:hidden;white-space:nowrap}\n/*! Bundled license information:\n\nfundamental-styles/dist/info-label.css:\n (*!\n * Fundamental Library Styles v0.41.8\n * Copyright (c) 2026 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *)\n*/\n"], dependencies: [{ kind: "component", type: IconComponent, selector: "fd-icon", inputs: ["glyph", "font", "color", "background", "size", "class", "ariaLabel", "ariaHidden"], outputs: ["ariaHiddenChange"] }, { kind: "pipe", type: FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
91
80
  }
92
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: InfoLabelComponent, decorators: [{
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: InfoLabelComponent, decorators: [{
93
82
  type: Component,
94
83
  args: [{ selector: 'fd-info-label', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [IconComponent, FdTranslatePipe], host: {
95
84
  '[class]': 'cssClass()'
@@ -101,11 +90,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImpor
101
90
  * Use direct imports of components and directives.
102
91
  */
103
92
  class InfoLabelModule {
104
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: InfoLabelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
105
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.5", ngImport: i0, type: InfoLabelModule, imports: [InfoLabelComponent], exports: [InfoLabelComponent] }); }
106
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: InfoLabelModule, imports: [InfoLabelComponent] }); }
93
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: InfoLabelModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
94
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.0", ngImport: i0, type: InfoLabelModule, imports: [InfoLabelComponent], exports: [InfoLabelComponent] }); }
95
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: InfoLabelModule, imports: [InfoLabelComponent] }); }
107
96
  }
108
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.5", ngImport: i0, type: InfoLabelModule, decorators: [{
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: InfoLabelModule, decorators: [{
109
98
  type: NgModule,
110
99
  args: [{
111
100
  imports: [InfoLabelComponent],