@fundamental-ngx/ui5-webcomponents 0.61.0-rc.8 → 0.61.0

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 (370) hide show
  1. package/fesm2022/fundamental-ngx-ui5-webcomponents-avatar-badge.mjs +17 -1
  2. package/fesm2022/fundamental-ngx-ui5-webcomponents-avatar-badge.mjs.map +1 -1
  3. package/fesm2022/fundamental-ngx-ui5-webcomponents-avatar-group.mjs +30 -14
  4. package/fesm2022/fundamental-ngx-ui5-webcomponents-avatar-group.mjs.map +1 -1
  5. package/fesm2022/fundamental-ngx-ui5-webcomponents-avatar.mjs +91 -55
  6. package/fesm2022/fundamental-ngx-ui5-webcomponents-avatar.mjs.map +1 -1
  7. package/fesm2022/fundamental-ngx-ui5-webcomponents-bar.mjs +33 -17
  8. package/fesm2022/fundamental-ngx-ui5-webcomponents-bar.mjs.map +1 -1
  9. package/fesm2022/fundamental-ngx-ui5-webcomponents-breadcrumbs-item.mjs +24 -8
  10. package/fesm2022/fundamental-ngx-ui5-webcomponents-breadcrumbs-item.mjs.map +1 -1
  11. package/fesm2022/fundamental-ngx-ui5-webcomponents-breadcrumbs.mjs +17 -1
  12. package/fesm2022/fundamental-ngx-ui5-webcomponents-breadcrumbs.mjs.map +1 -1
  13. package/fesm2022/fundamental-ngx-ui5-webcomponents-busy-indicator.mjs +28 -12
  14. package/fesm2022/fundamental-ngx-ui5-webcomponents-busy-indicator.mjs.map +1 -1
  15. package/fesm2022/fundamental-ngx-ui5-webcomponents-button-badge.mjs +17 -1
  16. package/fesm2022/fundamental-ngx-ui5-webcomponents-button-badge.mjs.map +1 -1
  17. package/fesm2022/fundamental-ngx-ui5-webcomponents-button.mjs +87 -71
  18. package/fesm2022/fundamental-ngx-ui5-webcomponents-button.mjs.map +1 -1
  19. package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-date-range.mjs +23 -7
  20. package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-date-range.mjs.map +1 -1
  21. package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-date.mjs +17 -1
  22. package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-date.mjs.map +1 -1
  23. package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-legend-item.mjs +17 -1
  24. package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-legend-item.mjs.map +1 -1
  25. package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-legend.mjs +24 -8
  26. package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar-legend.mjs.map +1 -1
  27. package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar.mjs +61 -45
  28. package/fesm2022/fundamental-ngx-ui5-webcomponents-calendar.mjs.map +1 -1
  29. package/fesm2022/fundamental-ngx-ui5-webcomponents-card-header.mjs +34 -18
  30. package/fesm2022/fundamental-ngx-ui5-webcomponents-card-header.mjs.map +1 -1
  31. package/fesm2022/fundamental-ngx-ui5-webcomponents-card.mjs +17 -1
  32. package/fesm2022/fundamental-ngx-ui5-webcomponents-card.mjs.map +1 -1
  33. package/fesm2022/fundamental-ngx-ui5-webcomponents-carousel.mjs +47 -31
  34. package/fesm2022/fundamental-ngx-ui5-webcomponents-carousel.mjs.map +1 -1
  35. package/fesm2022/fundamental-ngx-ui5-webcomponents-check-box.mjs +57 -44
  36. package/fesm2022/fundamental-ngx-ui5-webcomponents-check-box.mjs.map +1 -1
  37. package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette-item.mjs +26 -10
  38. package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette-item.mjs.map +1 -1
  39. package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette-popover.mjs +43 -17
  40. package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette-popover.mjs.map +1 -1
  41. package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette.mjs +49 -4
  42. package/fesm2022/fundamental-ngx-ui5-webcomponents-color-palette.mjs.map +1 -1
  43. package/fesm2022/fundamental-ngx-ui5-webcomponents-color-picker.mjs +34 -8
  44. package/fesm2022/fundamental-ngx-ui5-webcomponents-color-picker.mjs.map +1 -1
  45. package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box-item-group.mjs +30 -14
  46. package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box-item-group.mjs.map +1 -1
  47. package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box-item.mjs +44 -5
  48. package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box-item.mjs.map +1 -1
  49. package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box.mjs +76 -46
  50. package/fesm2022/fundamental-ngx-ui5-webcomponents-combo-box.mjs.map +1 -1
  51. package/fesm2022/fundamental-ngx-ui5-webcomponents-date-picker.mjs +94 -76
  52. package/fesm2022/fundamental-ngx-ui5-webcomponents-date-picker.mjs.map +1 -1
  53. package/fesm2022/fundamental-ngx-ui5-webcomponents-date-range-picker.mjs +106 -88
  54. package/fesm2022/fundamental-ngx-ui5-webcomponents-date-range-picker.mjs.map +1 -1
  55. package/fesm2022/fundamental-ngx-ui5-webcomponents-date-time-input.mjs +297 -0
  56. package/fesm2022/fundamental-ngx-ui5-webcomponents-date-time-input.mjs.map +1 -0
  57. package/fesm2022/fundamental-ngx-ui5-webcomponents-date-time-picker.mjs +94 -76
  58. package/fesm2022/fundamental-ngx-ui5-webcomponents-date-time-picker.mjs.map +1 -1
  59. package/fesm2022/fundamental-ngx-ui5-webcomponents-day-picker.mjs +118 -0
  60. package/fesm2022/fundamental-ngx-ui5-webcomponents-day-picker.mjs.map +1 -0
  61. package/fesm2022/fundamental-ngx-ui5-webcomponents-dialog.mjs +87 -71
  62. package/fesm2022/fundamental-ngx-ui5-webcomponents-dialog.mjs.map +1 -1
  63. package/fesm2022/fundamental-ngx-ui5-webcomponents-drop-indicator.mjs +91 -0
  64. package/fesm2022/fundamental-ngx-ui5-webcomponents-drop-indicator.mjs.map +1 -0
  65. package/fesm2022/fundamental-ngx-ui5-webcomponents-dynamic-date-range.mjs +24 -8
  66. package/fesm2022/fundamental-ngx-ui5-webcomponents-dynamic-date-range.mjs.map +1 -1
  67. package/fesm2022/fundamental-ngx-ui5-webcomponents-expandable-text.mjs +24 -8
  68. package/fesm2022/fundamental-ngx-ui5-webcomponents-expandable-text.mjs.map +1 -1
  69. package/fesm2022/fundamental-ngx-ui5-webcomponents-file-uploader.mjs +50 -37
  70. package/fesm2022/fundamental-ngx-ui5-webcomponents-file-uploader.mjs.map +1 -1
  71. package/fesm2022/fundamental-ngx-ui5-webcomponents-form-group.mjs +30 -14
  72. package/fesm2022/fundamental-ngx-ui5-webcomponents-form-group.mjs.map +1 -1
  73. package/fesm2022/fundamental-ngx-ui5-webcomponents-form-item.mjs +22 -6
  74. package/fesm2022/fundamental-ngx-ui5-webcomponents-form-item.mjs.map +1 -1
  75. package/fesm2022/fundamental-ngx-ui5-webcomponents-form.mjs +60 -44
  76. package/fesm2022/fundamental-ngx-ui5-webcomponents-form.mjs.map +1 -1
  77. package/fesm2022/fundamental-ngx-ui5-webcomponents-icon.mjs +33 -17
  78. package/fesm2022/fundamental-ngx-ui5-webcomponents-icon.mjs.map +1 -1
  79. package/fesm2022/fundamental-ngx-ui5-webcomponents-input.mjs +85 -72
  80. package/fesm2022/fundamental-ngx-ui5-webcomponents-input.mjs.map +1 -1
  81. package/fesm2022/fundamental-ngx-ui5-webcomponents-label.mjs +25 -9
  82. package/fesm2022/fundamental-ngx-ui5-webcomponents-label.mjs.map +1 -1
  83. package/fesm2022/fundamental-ngx-ui5-webcomponents-link.mjs +88 -72
  84. package/fesm2022/fundamental-ngx-ui5-webcomponents-link.mjs.map +1 -1
  85. package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-custom.mjs +47 -31
  86. package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-custom.mjs.map +1 -1
  87. package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-group-header.mjs +120 -0
  88. package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-group-header.mjs.map +1 -0
  89. package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-group.mjs +30 -14
  90. package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-group.mjs.map +1 -1
  91. package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-standard.mjs +86 -70
  92. package/fesm2022/fundamental-ngx-ui5-webcomponents-list-item-standard.mjs.map +1 -1
  93. package/fesm2022/fundamental-ngx-ui5-webcomponents-list.mjs +94 -78
  94. package/fesm2022/fundamental-ngx-ui5-webcomponents-list.mjs.map +1 -1
  95. package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-item-group.mjs +17 -1
  96. package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-item-group.mjs.map +1 -1
  97. package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-item.mjs +86 -70
  98. package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-item.mjs.map +1 -1
  99. package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-separator.mjs +17 -1
  100. package/fesm2022/fundamental-ngx-ui5-webcomponents-menu-separator.mjs.map +1 -1
  101. package/fesm2022/fundamental-ngx-ui5-webcomponents-menu.mjs +42 -26
  102. package/fesm2022/fundamental-ngx-ui5-webcomponents-menu.mjs.map +1 -1
  103. package/fesm2022/fundamental-ngx-ui5-webcomponents-message-strip.mjs +29 -13
  104. package/fesm2022/fundamental-ngx-ui5-webcomponents-message-strip.mjs.map +1 -1
  105. package/fesm2022/fundamental-ngx-ui5-webcomponents-month-picker.mjs +118 -0
  106. package/fesm2022/fundamental-ngx-ui5-webcomponents-month-picker.mjs.map +1 -0
  107. package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box-item-group.mjs +30 -14
  108. package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box-item-group.mjs.map +1 -1
  109. package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box-item.mjs +30 -5
  110. package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box-item.mjs.map +1 -1
  111. package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box.mjs +73 -46
  112. package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-combo-box.mjs.map +1 -1
  113. package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-input.mjs +99 -86
  114. package/fesm2022/fundamental-ngx-ui5-webcomponents-multi-input.mjs.map +1 -1
  115. package/fesm2022/fundamental-ngx-ui5-webcomponents-option-custom.mjs +25 -9
  116. package/fesm2022/fundamental-ngx-ui5-webcomponents-option-custom.mjs.map +1 -1
  117. package/fesm2022/fundamental-ngx-ui5-webcomponents-option.mjs +28 -12
  118. package/fesm2022/fundamental-ngx-ui5-webcomponents-option.mjs.map +1 -1
  119. package/fesm2022/fundamental-ngx-ui5-webcomponents-panel.mjs +41 -25
  120. package/fesm2022/fundamental-ngx-ui5-webcomponents-panel.mjs.map +1 -1
  121. package/fesm2022/fundamental-ngx-ui5-webcomponents-popover.mjs +86 -70
  122. package/fesm2022/fundamental-ngx-ui5-webcomponents-popover.mjs.map +1 -1
  123. package/fesm2022/fundamental-ngx-ui5-webcomponents-progress-indicator.mjs +28 -12
  124. package/fesm2022/fundamental-ngx-ui5-webcomponents-progress-indicator.mjs.map +1 -1
  125. package/fesm2022/fundamental-ngx-ui5-webcomponents-radio-button.mjs +48 -35
  126. package/fesm2022/fundamental-ngx-ui5-webcomponents-radio-button.mjs.map +1 -1
  127. package/fesm2022/fundamental-ngx-ui5-webcomponents-range-slider.mjs +54 -41
  128. package/fesm2022/fundamental-ngx-ui5-webcomponents-range-slider.mjs.map +1 -1
  129. package/fesm2022/fundamental-ngx-ui5-webcomponents-rating-indicator.mjs +55 -29
  130. package/fesm2022/fundamental-ngx-ui5-webcomponents-rating-indicator.mjs.map +1 -1
  131. package/fesm2022/fundamental-ngx-ui5-webcomponents-responsive-popover.mjs +86 -70
  132. package/fesm2022/fundamental-ngx-ui5-webcomponents-responsive-popover.mjs.map +1 -1
  133. package/fesm2022/fundamental-ngx-ui5-webcomponents-segmented-button-item.mjs +42 -26
  134. package/fesm2022/fundamental-ngx-ui5-webcomponents-segmented-button-item.mjs.map +1 -1
  135. package/fesm2022/fundamental-ngx-ui5-webcomponents-segmented-button.mjs +32 -16
  136. package/fesm2022/fundamental-ngx-ui5-webcomponents-segmented-button.mjs.map +1 -1
  137. package/fesm2022/fundamental-ngx-ui5-webcomponents-select.mjs +64 -51
  138. package/fesm2022/fundamental-ngx-ui5-webcomponents-select.mjs.map +1 -1
  139. package/fesm2022/fundamental-ngx-ui5-webcomponents-slider-handle.mjs +106 -0
  140. package/fesm2022/fundamental-ngx-ui5-webcomponents-slider-handle.mjs.map +1 -0
  141. package/fesm2022/fundamental-ngx-ui5-webcomponents-slider-tooltip.mjs +52 -0
  142. package/fesm2022/fundamental-ngx-ui5-webcomponents-slider-tooltip.mjs.map +1 -0
  143. package/fesm2022/fundamental-ngx-ui5-webcomponents-slider.mjs +50 -37
  144. package/fesm2022/fundamental-ngx-ui5-webcomponents-slider.mjs.map +1 -1
  145. package/fesm2022/fundamental-ngx-ui5-webcomponents-special-calendar-date.mjs +24 -8
  146. package/fesm2022/fundamental-ngx-ui5-webcomponents-special-calendar-date.mjs.map +1 -1
  147. package/fesm2022/fundamental-ngx-ui5-webcomponents-split-button.mjs +51 -35
  148. package/fesm2022/fundamental-ngx-ui5-webcomponents-split-button.mjs.map +1 -1
  149. package/fesm2022/fundamental-ngx-ui5-webcomponents-step-input.mjs +58 -42
  150. package/fesm2022/fundamental-ngx-ui5-webcomponents-step-input.mjs.map +1 -1
  151. package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item-custom.mjs +17 -1
  152. package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item-custom.mjs.map +1 -1
  153. package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item-group.mjs +30 -14
  154. package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item-group.mjs.map +1 -1
  155. package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item.mjs +23 -7
  156. package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-item.mjs.map +1 -1
  157. package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-list-item.mjs +246 -0
  158. package/fesm2022/fundamental-ngx-ui5-webcomponents-suggestion-list-item.mjs.map +1 -0
  159. package/fesm2022/fundamental-ngx-ui5-webcomponents-switch.mjs +49 -36
  160. package/fesm2022/fundamental-ngx-ui5-webcomponents-switch.mjs.map +1 -1
  161. package/fesm2022/fundamental-ngx-ui5-webcomponents-tab-container.mjs +46 -30
  162. package/fesm2022/fundamental-ngx-ui5-webcomponents-tab-container.mjs.map +1 -1
  163. package/fesm2022/fundamental-ngx-ui5-webcomponents-tab-separator.mjs +17 -1
  164. package/fesm2022/fundamental-ngx-ui5-webcomponents-tab-separator.mjs.map +1 -1
  165. package/fesm2022/fundamental-ngx-ui5-webcomponents-tab.mjs +38 -22
  166. package/fesm2022/fundamental-ngx-ui5-webcomponents-tab.mjs.map +1 -1
  167. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-cell.mjs +17 -1
  168. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-cell.mjs.map +1 -1
  169. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-growing.mjs +25 -9
  170. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-growing.mjs.map +1 -1
  171. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-cell-action-a-i.mjs +17 -1
  172. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-cell-action-a-i.mjs.map +1 -1
  173. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-cell.mjs +42 -26
  174. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-cell.mjs.map +1 -1
  175. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-row.mjs +17 -1
  176. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-header-row.mjs.map +1 -1
  177. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row-action-navigation.mjs +17 -1
  178. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row-action-navigation.mjs.map +1 -1
  179. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row-action.mjs +25 -9
  180. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row-action.mjs.map +1 -1
  181. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row.mjs +40 -24
  182. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-row.mjs.map +1 -1
  183. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection-multi.mjs +24 -8
  184. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection-multi.mjs.map +1 -1
  185. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection-single.mjs +23 -7
  186. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection-single.mjs.map +1 -1
  187. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection.mjs +17 -1
  188. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-selection.mjs.map +1 -1
  189. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-virtualizer.mjs +26 -10
  190. package/fesm2022/fundamental-ngx-ui5-webcomponents-table-virtualizer.mjs.map +1 -1
  191. package/fesm2022/fundamental-ngx-ui5-webcomponents-table.mjs +57 -41
  192. package/fesm2022/fundamental-ngx-ui5-webcomponents-table.mjs.map +1 -1
  193. package/fesm2022/fundamental-ngx-ui5-webcomponents-tag.mjs +29 -13
  194. package/fesm2022/fundamental-ngx-ui5-webcomponents-tag.mjs.map +1 -1
  195. package/fesm2022/fundamental-ngx-ui5-webcomponents-text-area.mjs +74 -61
  196. package/fesm2022/fundamental-ngx-ui5-webcomponents-text-area.mjs.map +1 -1
  197. package/fesm2022/fundamental-ngx-ui5-webcomponents-text.mjs +23 -7
  198. package/fesm2022/fundamental-ngx-ui5-webcomponents-text.mjs.map +1 -1
  199. package/fesm2022/fundamental-ngx-ui5-webcomponents-time-picker-clock.mjs +52 -0
  200. package/fesm2022/fundamental-ngx-ui5-webcomponents-time-picker-clock.mjs.map +1 -0
  201. package/fesm2022/fundamental-ngx-ui5-webcomponents-time-picker.mjs +59 -46
  202. package/fesm2022/fundamental-ngx-ui5-webcomponents-time-picker.mjs.map +1 -1
  203. package/fesm2022/fundamental-ngx-ui5-webcomponents-time-selection-clocks.mjs +86 -0
  204. package/fesm2022/fundamental-ngx-ui5-webcomponents-time-selection-clocks.mjs.map +1 -0
  205. package/fesm2022/fundamental-ngx-ui5-webcomponents-time-selection-inputs.mjs +86 -0
  206. package/fesm2022/fundamental-ngx-ui5-webcomponents-time-selection-inputs.mjs.map +1 -0
  207. package/fesm2022/fundamental-ngx-ui5-webcomponents-title.mjs +26 -10
  208. package/fesm2022/fundamental-ngx-ui5-webcomponents-title.mjs.map +1 -1
  209. package/fesm2022/fundamental-ngx-ui5-webcomponents-toast.mjs +23 -7
  210. package/fesm2022/fundamental-ngx-ui5-webcomponents-toast.mjs.map +1 -1
  211. package/fesm2022/fundamental-ngx-ui5-webcomponents-toggle-button.mjs +88 -72
  212. package/fesm2022/fundamental-ngx-ui5-webcomponents-toggle-button.mjs.map +1 -1
  213. package/fesm2022/fundamental-ngx-ui5-webcomponents-toggle-spin-button.mjs +240 -0
  214. package/fesm2022/fundamental-ngx-ui5-webcomponents-toggle-spin-button.mjs.map +1 -0
  215. package/fesm2022/fundamental-ngx-ui5-webcomponents-token.mjs +23 -7
  216. package/fesm2022/fundamental-ngx-ui5-webcomponents-token.mjs.map +1 -1
  217. package/fesm2022/fundamental-ngx-ui5-webcomponents-tokenizer.mjs +43 -27
  218. package/fesm2022/fundamental-ngx-ui5-webcomponents-tokenizer.mjs.map +1 -1
  219. package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-button.mjs +69 -53
  220. package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-button.mjs.map +1 -1
  221. package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-item.mjs +109 -0
  222. package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-item.mjs.map +1 -0
  223. package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-select-option.mjs +17 -1
  224. package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-select-option.mjs.map +1 -1
  225. package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-select.mjs +43 -27
  226. package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-select.mjs.map +1 -1
  227. package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-separator.mjs +18 -2
  228. package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-separator.mjs.map +1 -1
  229. package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-spacer.mjs +27 -11
  230. package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar-spacer.mjs.map +1 -1
  231. package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar.mjs +23 -7
  232. package/fesm2022/fundamental-ngx-ui5-webcomponents-toolbar.mjs.map +1 -1
  233. package/fesm2022/fundamental-ngx-ui5-webcomponents-tree-item-custom.mjs +84 -68
  234. package/fesm2022/fundamental-ngx-ui5-webcomponents-tree-item-custom.mjs.map +1 -1
  235. package/fesm2022/fundamental-ngx-ui5-webcomponents-tree-item.mjs +84 -68
  236. package/fesm2022/fundamental-ngx-ui5-webcomponents-tree-item.mjs.map +1 -1
  237. package/fesm2022/fundamental-ngx-ui5-webcomponents-tree.mjs +61 -45
  238. package/fesm2022/fundamental-ngx-ui5-webcomponents-tree.mjs.map +1 -1
  239. package/fesm2022/fundamental-ngx-ui5-webcomponents-types.mjs +1 -0
  240. package/fesm2022/fundamental-ngx-ui5-webcomponents-types.mjs.map +1 -1
  241. package/fesm2022/fundamental-ngx-ui5-webcomponents-year-picker.mjs +118 -0
  242. package/fesm2022/fundamental-ngx-ui5-webcomponents-year-picker.mjs.map +1 -0
  243. package/fesm2022/fundamental-ngx-ui5-webcomponents-year-range-picker.mjs +118 -0
  244. package/fesm2022/fundamental-ngx-ui5-webcomponents-year-range-picker.mjs.map +1 -0
  245. package/fesm2022/fundamental-ngx-ui5-webcomponents.mjs +6494 -2988
  246. package/fesm2022/fundamental-ngx-ui5-webcomponents.mjs.map +1 -1
  247. package/package.json +64 -3
  248. package/types/fundamental-ngx-ui5-webcomponents-avatar-badge.d.ts +6 -0
  249. package/types/fundamental-ngx-ui5-webcomponents-avatar-group.d.ts +14 -8
  250. package/types/fundamental-ngx-ui5-webcomponents-avatar.d.ts +68 -43
  251. package/types/fundamental-ngx-ui5-webcomponents-bar.d.ts +16 -10
  252. package/types/fundamental-ngx-ui5-webcomponents-breadcrumbs-item.d.ts +11 -5
  253. package/types/fundamental-ngx-ui5-webcomponents-breadcrumbs.d.ts +6 -0
  254. package/types/fundamental-ngx-ui5-webcomponents-busy-indicator.d.ts +15 -9
  255. package/types/fundamental-ngx-ui5-webcomponents-button-badge.d.ts +6 -0
  256. package/types/fundamental-ngx-ui5-webcomponents-button.d.ts +65 -59
  257. package/types/fundamental-ngx-ui5-webcomponents-calendar-date-range.d.ts +11 -5
  258. package/types/fundamental-ngx-ui5-webcomponents-calendar-date.d.ts +6 -0
  259. package/types/fundamental-ngx-ui5-webcomponents-calendar-legend-item.d.ts +6 -0
  260. package/types/fundamental-ngx-ui5-webcomponents-calendar-legend.d.ts +11 -5
  261. package/types/fundamental-ngx-ui5-webcomponents-calendar.d.ts +38 -32
  262. package/types/fundamental-ngx-ui5-webcomponents-card-header.d.ts +16 -10
  263. package/types/fundamental-ngx-ui5-webcomponents-card.d.ts +6 -0
  264. package/types/fundamental-ngx-ui5-webcomponents-carousel.d.ts +32 -26
  265. package/types/fundamental-ngx-ui5-webcomponents-check-box.d.ts +42 -36
  266. package/types/fundamental-ngx-ui5-webcomponents-color-palette-item.d.ts +13 -7
  267. package/types/fundamental-ngx-ui5-webcomponents-color-palette-popover.d.ts +25 -11
  268. package/types/fundamental-ngx-ui5-webcomponents-color-palette.d.ts +18 -4
  269. package/types/fundamental-ngx-ui5-webcomponents-color-picker.d.ts +19 -5
  270. package/types/fundamental-ngx-ui5-webcomponents-combo-box-item-group.d.ts +17 -11
  271. package/types/fundamental-ngx-ui5-webcomponents-combo-box-item.d.ts +31 -3
  272. package/types/fundamental-ngx-ui5-webcomponents-combo-box.d.ts +54 -32
  273. package/types/fundamental-ngx-ui5-webcomponents-date-picker.d.ts +68 -58
  274. package/types/fundamental-ngx-ui5-webcomponents-date-range-picker.d.ts +77 -67
  275. package/types/fundamental-ngx-ui5-webcomponents-date-time-input.d.ts +185 -0
  276. package/types/fundamental-ngx-ui5-webcomponents-date-time-picker.d.ts +68 -58
  277. package/types/fundamental-ngx-ui5-webcomponents-day-picker.d.ts +59 -0
  278. package/types/fundamental-ngx-ui5-webcomponents-dialog.d.ts +60 -54
  279. package/types/fundamental-ngx-ui5-webcomponents-drop-indicator.d.ts +36 -0
  280. package/types/fundamental-ngx-ui5-webcomponents-dynamic-date-range.d.ts +11 -5
  281. package/types/fundamental-ngx-ui5-webcomponents-expandable-text.d.ts +11 -5
  282. package/types/fundamental-ngx-ui5-webcomponents-file-uploader.d.ts +35 -29
  283. package/types/fundamental-ngx-ui5-webcomponents-form-group.d.ts +16 -10
  284. package/types/fundamental-ngx-ui5-webcomponents-form-item.d.ts +7 -1
  285. package/types/fundamental-ngx-ui5-webcomponents-form.d.ts +40 -34
  286. package/types/fundamental-ngx-ui5-webcomponents-icon.d.ts +19 -13
  287. package/types/fundamental-ngx-ui5-webcomponents-input.d.ts +63 -57
  288. package/types/fundamental-ngx-ui5-webcomponents-label.d.ts +13 -7
  289. package/types/fundamental-ngx-ui5-webcomponents-link.d.ts +67 -61
  290. package/types/fundamental-ngx-ui5-webcomponents-list-item-custom.d.ts +31 -25
  291. package/types/fundamental-ngx-ui5-webcomponents-list-item-group-header.d.ts +65 -0
  292. package/types/fundamental-ngx-ui5-webcomponents-list-item-group.d.ts +17 -11
  293. package/types/fundamental-ngx-ui5-webcomponents-list-item-standard.d.ts +61 -55
  294. package/types/fundamental-ngx-ui5-webcomponents-list.d.ts +70 -64
  295. package/types/fundamental-ngx-ui5-webcomponents-menu-item-group.d.ts +6 -0
  296. package/types/fundamental-ngx-ui5-webcomponents-menu-item.d.ts +58 -52
  297. package/types/fundamental-ngx-ui5-webcomponents-menu-separator.d.ts +6 -0
  298. package/types/fundamental-ngx-ui5-webcomponents-menu.d.ts +26 -20
  299. package/types/fundamental-ngx-ui5-webcomponents-message-strip.d.ts +15 -9
  300. package/types/fundamental-ngx-ui5-webcomponents-month-picker.d.ts +59 -0
  301. package/types/fundamental-ngx-ui5-webcomponents-multi-combo-box-item-group.d.ts +17 -11
  302. package/types/fundamental-ngx-ui5-webcomponents-multi-combo-box-item.d.ts +17 -3
  303. package/types/fundamental-ngx-ui5-webcomponents-multi-combo-box.d.ts +54 -35
  304. package/types/fundamental-ngx-ui5-webcomponents-multi-input.d.ts +70 -64
  305. package/types/fundamental-ngx-ui5-webcomponents-option-custom.d.ts +12 -6
  306. package/types/fundamental-ngx-ui5-webcomponents-option.d.ts +14 -8
  307. package/types/fundamental-ngx-ui5-webcomponents-panel.d.ts +25 -19
  308. package/types/fundamental-ngx-ui5-webcomponents-popover.d.ts +57 -51
  309. package/types/fundamental-ngx-ui5-webcomponents-progress-indicator.d.ts +16 -10
  310. package/types/fundamental-ngx-ui5-webcomponents-radio-button.d.ts +34 -28
  311. package/types/fundamental-ngx-ui5-webcomponents-range-slider.d.ts +37 -31
  312. package/types/fundamental-ngx-ui5-webcomponents-rating-indicator.d.ts +37 -23
  313. package/types/fundamental-ngx-ui5-webcomponents-responsive-popover.d.ts +57 -51
  314. package/types/fundamental-ngx-ui5-webcomponents-segmented-button-item.d.ts +25 -19
  315. package/types/fundamental-ngx-ui5-webcomponents-segmented-button.d.ts +17 -11
  316. package/types/fundamental-ngx-ui5-webcomponents-select.d.ts +43 -37
  317. package/types/fundamental-ngx-ui5-webcomponents-slider-handle.d.ts +50 -0
  318. package/types/fundamental-ngx-ui5-webcomponents-slider-tooltip.d.ts +20 -0
  319. package/types/fundamental-ngx-ui5-webcomponents-slider.d.ts +35 -29
  320. package/types/fundamental-ngx-ui5-webcomponents-special-calendar-date.d.ts +11 -5
  321. package/types/fundamental-ngx-ui5-webcomponents-split-button.d.ts +36 -30
  322. package/types/fundamental-ngx-ui5-webcomponents-step-input.d.ts +37 -31
  323. package/types/fundamental-ngx-ui5-webcomponents-suggestion-item-custom.d.ts +6 -0
  324. package/types/fundamental-ngx-ui5-webcomponents-suggestion-item-group.d.ts +17 -11
  325. package/types/fundamental-ngx-ui5-webcomponents-suggestion-item.d.ts +11 -5
  326. package/types/fundamental-ngx-ui5-webcomponents-suggestion-list-item.d.ts +155 -0
  327. package/types/fundamental-ngx-ui5-webcomponents-switch.d.ts +35 -29
  328. package/types/fundamental-ngx-ui5-webcomponents-tab-container.d.ts +30 -24
  329. package/types/fundamental-ngx-ui5-webcomponents-tab-separator.d.ts +6 -0
  330. package/types/fundamental-ngx-ui5-webcomponents-tab.d.ts +23 -17
  331. package/types/fundamental-ngx-ui5-webcomponents-table-cell.d.ts +6 -0
  332. package/types/fundamental-ngx-ui5-webcomponents-table-growing.d.ts +12 -6
  333. package/types/fundamental-ngx-ui5-webcomponents-table-header-cell-action-a-i.d.ts +6 -0
  334. package/types/fundamental-ngx-ui5-webcomponents-table-header-cell.d.ts +27 -21
  335. package/types/fundamental-ngx-ui5-webcomponents-table-header-row.d.ts +6 -0
  336. package/types/fundamental-ngx-ui5-webcomponents-table-row-action-navigation.d.ts +6 -0
  337. package/types/fundamental-ngx-ui5-webcomponents-table-row-action.d.ts +13 -7
  338. package/types/fundamental-ngx-ui5-webcomponents-table-row.d.ts +24 -18
  339. package/types/fundamental-ngx-ui5-webcomponents-table-selection-multi.d.ts +11 -5
  340. package/types/fundamental-ngx-ui5-webcomponents-table-selection-single.d.ts +11 -5
  341. package/types/fundamental-ngx-ui5-webcomponents-table-selection.d.ts +6 -0
  342. package/types/fundamental-ngx-ui5-webcomponents-table-virtualizer.d.ts +13 -7
  343. package/types/fundamental-ngx-ui5-webcomponents-table.d.ts +37 -31
  344. package/types/fundamental-ngx-ui5-webcomponents-tag.d.ts +15 -9
  345. package/types/fundamental-ngx-ui5-webcomponents-text-area.d.ts +54 -48
  346. package/types/fundamental-ngx-ui5-webcomponents-text.d.ts +11 -5
  347. package/types/fundamental-ngx-ui5-webcomponents-time-picker-clock.d.ts +20 -0
  348. package/types/fundamental-ngx-ui5-webcomponents-time-picker.d.ts +41 -35
  349. package/types/fundamental-ngx-ui5-webcomponents-time-selection-clocks.d.ts +33 -0
  350. package/types/fundamental-ngx-ui5-webcomponents-time-selection-inputs.d.ts +33 -0
  351. package/types/fundamental-ngx-ui5-webcomponents-title.d.ts +13 -7
  352. package/types/fundamental-ngx-ui5-webcomponents-toast.d.ts +11 -5
  353. package/types/fundamental-ngx-ui5-webcomponents-toggle-button.d.ts +65 -59
  354. package/types/fundamental-ngx-ui5-webcomponents-toggle-spin-button.d.ts +159 -0
  355. package/types/fundamental-ngx-ui5-webcomponents-token.d.ts +11 -5
  356. package/types/fundamental-ngx-ui5-webcomponents-tokenizer.d.ts +27 -21
  357. package/types/fundamental-ngx-ui5-webcomponents-toolbar-button.d.ts +49 -43
  358. package/types/fundamental-ngx-ui5-webcomponents-toolbar-item.d.ts +54 -0
  359. package/types/fundamental-ngx-ui5-webcomponents-toolbar-select-option.d.ts +6 -0
  360. package/types/fundamental-ngx-ui5-webcomponents-toolbar-select.d.ts +27 -21
  361. package/types/fundamental-ngx-ui5-webcomponents-toolbar-separator.d.ts +7 -1
  362. package/types/fundamental-ngx-ui5-webcomponents-toolbar-spacer.d.ts +14 -8
  363. package/types/fundamental-ngx-ui5-webcomponents-toolbar.d.ts +11 -5
  364. package/types/fundamental-ngx-ui5-webcomponents-tree-item-custom.d.ts +58 -52
  365. package/types/fundamental-ngx-ui5-webcomponents-tree-item.d.ts +58 -52
  366. package/types/fundamental-ngx-ui5-webcomponents-tree.d.ts +40 -34
  367. package/types/fundamental-ngx-ui5-webcomponents-types.d.ts +1 -0
  368. package/types/fundamental-ngx-ui5-webcomponents-year-picker.d.ts +59 -0
  369. package/types/fundamental-ngx-ui5-webcomponents-year-range-picker.d.ts +59 -0
  370. package/types/fundamental-ngx-ui5-webcomponents.d.ts +3844 -2105
@@ -1,6 +1,7 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { input, inject, ElementRef, Injector, runInInjectionContext, effect, ChangeDetectionStrategy, Component } from '@angular/core';
3
3
  import '@ui5/webcomponents/dist/AvatarBadge.js';
4
+ import { ContentDensityObserver, contentDensityObserverProviders, ContentDensityMode } from '@fundamental-ngx/core/content-density';
4
5
 
5
6
  class AvatarBadge {
6
7
  constructor() {
@@ -25,6 +26,12 @@ class AvatarBadge {
25
26
  this.state = input("None", ...(ngDevMode ? [{ debugName: "state" }] : [])); // className is now passed
26
27
  this.elementRef = inject(ElementRef);
27
28
  this.injector = inject(Injector);
29
+ /**
30
+ * Content density observer is injected to activate automatic CSS class and
31
+ * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.
32
+ * @private
33
+ */
34
+ this._contentDensityObserver = inject(ContentDensityObserver);
28
35
  }
29
36
  get element() {
30
37
  return this.elementRef.nativeElement;
@@ -55,7 +62,11 @@ class AvatarBadge {
55
62
  }
56
63
  }
57
64
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: AvatarBadge, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
58
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.0", type: AvatarBadge, isStandalone: true, selector: "ui5-avatar-badge, [ui5-avatar-badge]", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, state: { classPropertyName: "state", publicName: "state", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["ui5AvatarBadge"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
65
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.0", type: AvatarBadge, isStandalone: true, selector: "ui5-avatar-badge, [ui5-avatar-badge]", inputs: { icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, state: { classPropertyName: "state", publicName: "state", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
66
+ contentDensityObserverProviders({
67
+ supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
68
+ })
69
+ ], exportAs: ["ui5AvatarBadge"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
59
70
  }
60
71
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: AvatarBadge, decorators: [{
61
72
  type: Component,
@@ -64,6 +75,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImpor
64
75
  selector: 'ui5-avatar-badge, [ui5-avatar-badge]',
65
76
  template: '<ng-content></ng-content>',
66
77
  exportAs: 'ui5AvatarBadge',
78
+ providers: [
79
+ contentDensityObserverProviders({
80
+ supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
81
+ })
82
+ ],
67
83
  changeDetection: ChangeDetectionStrategy.OnPush,
68
84
  }]
69
85
  }], propDecorators: { icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], state: [{ type: i0.Input, args: [{ isSignal: true, alias: "state", required: false }] }] } });
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-ui5-webcomponents-avatar-badge.mjs","sources":["../../../../libs/ui5-webcomponents/avatar-badge/index.ts","../../../../libs/ui5-webcomponents/avatar-badge/fundamental-ngx-ui5-webcomponents-avatar-badge.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/AvatarBadge.js';\nimport { default as _AvatarBadge } from '@ui5/webcomponents/dist/AvatarBadge.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\n\nimport { default as ValueState } from '@ui5/webcomponents-base/dist/types/ValueState.js';\n\n@Component({\n standalone: true,\n selector: 'ui5-avatar-badge, [ui5-avatar-badge]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5AvatarBadge',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AvatarBadge implements AfterViewInit {\n\n /**\n * Defines the icon name to be displayed inside the badge.\n\n**Note:** You should import the desired icon first, then use its name as \"icon\".\n\n`import \"@ui5/webcomponents-icons/dist/{icon_name}.js\"`\n */\n icon = input<typeof _AvatarBadge.prototype.icon | undefined>();\n\n /**\n * Defines the state of the badge, which determines its styling.\n\nAvailable options:\n- `None` (default) - Standard appearance\n- `Positive` - Green, used for success/approved states\n- `Critical` - Orange, used for warning states\n- `Negative` - Red, used for error/rejected states\n- `Information` - Blue, used for informational states\n */\n state = input<typeof _AvatarBadge.prototype.state | undefined>(\"None\"); // className is now passed\n\n\n\n\n\n public elementRef: ElementRef<_AvatarBadge> = inject(ElementRef);\n public injector = inject(Injector);\n\n get element(): _AvatarBadge {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'icon',\n 'state',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, () => {\n effect(() => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;MA6Ba,WAAW,CAAA;AAPxB,IAAA,WAAA,GAAA;AASE;;;;;;AAMG;QACH,IAAA,CAAA,IAAI,GAAG,KAAK,CAAA,IAAA,SAAA,GAAA,CAAA,SAAA,EAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAkD;AAE9D;;;;;;;;;AASG;AACH,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAkD,MAAM,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,OAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC,CAAC;AAMhE,QAAA,IAAA,CAAA,UAAU,GAA6B,MAAM,CAAC,UAAU,CAAC;AACzD,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAsCnC,IAAA;AApCC,IAAA,IAAI,OAAO,GAAA;AACT,QAAA,OAAO,IAAI,CAAC,UAAU,CAAC,aAAa;IACtC;IAEA,eAAe,GAAA;AACb,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO;AAE9B,QAAA,MAAM,YAAY,GAAG;YACnB,MAAM;YACN,OAAO;SACR;;AAGD,QAAA,KAAK,MAAM,SAAS,IAAI,YAAY,EAAE;;YAEpC,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;;AAG9E,YAAA,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,UAAU,EAAE;AAC9D,gBAAA,qBAAqB,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAK;oBACxC,MAAM,CAAC,MAAK;;AAEV,wBAAA,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,EAAE;wBAChC,IAAI,SAAS,EAAE;;AAEb,4BAAA,SAAS,CAAC,SAAS,CAAC,GAAG,KAAK;wBAC9B;AACF,oBAAA,CAAC,CAAC;AACJ,gBAAA,CAAC,CAAC;YACJ;QACF;IAKF;8GAjEW,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAX,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,WAAW,uXAJZ,2BAA2B,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAI1B,WAAW,EAAA,UAAA,EAAA,CAAA;kBAPvB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,sCAAsC;AAChD,oBAAA,QAAQ,EAAE,2BAA2B;AACrC,oBAAA,QAAQ,EAAE,gBAAgB;oBAC1B,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAChD,iBAAA;;;AC5BD;;AAEG;;;;"}
1
+ {"version":3,"file":"fundamental-ngx-ui5-webcomponents-avatar-badge.mjs","sources":["../../../../libs/ui5-webcomponents/avatar-badge/index.ts","../../../../libs/ui5-webcomponents/avatar-badge/fundamental-ngx-ui5-webcomponents-avatar-badge.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/AvatarBadge.js';\nimport { default as _AvatarBadge } from '@ui5/webcomponents/dist/AvatarBadge.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\nimport { default as ValueState } from '@ui5/webcomponents-base/dist/types/ValueState.js';\n\n@Component({\n standalone: true,\n selector: 'ui5-avatar-badge, [ui5-avatar-badge]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5AvatarBadge',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AvatarBadge implements AfterViewInit {\n\n /**\n * Defines the icon name to be displayed inside the badge.\n\n**Note:** You should import the desired icon first, then use its name as \"icon\".\n\n`import \"@ui5/webcomponents-icons/dist/{icon_name}.js\"`\n */\n icon = input<typeof _AvatarBadge.prototype.icon | undefined>();\n\n /**\n * Defines the state of the badge, which determines its styling.\n\nAvailable options:\n- `None` (default) - Standard appearance\n- `Positive` - Green, used for success/approved states\n- `Critical` - Orange, used for warning states\n- `Negative` - Red, used for error/rejected states\n- `Information` - Blue, used for informational states\n */\n state = input<typeof _AvatarBadge.prototype.state | undefined>(\"None\"); // className is now passed\n\n\n\n\n\n public elementRef: ElementRef<_AvatarBadge> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n get element(): _AvatarBadge {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'icon',\n 'state',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, () => {\n effect(() => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n \n\n }\n}\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,13 +1,10 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { input, output, inject, ElementRef, Injector, runInInjectionContext, effect, ChangeDetectionStrategy, Component } from '@angular/core';
3
3
  import '@ui5/webcomponents/dist/AvatarGroup.js';
4
+ import { ContentDensityObserver, contentDensityObserverProviders, ContentDensityMode } from '@fundamental-ngx/core/content-density';
4
5
 
5
6
  class AvatarGroup {
6
7
  constructor() {
7
- /**
8
- * Defines the mode of the `AvatarGroup`.
9
- */
10
- this.type = input("Group", ...(ngDevMode ? [{ debugName: "type" }] : []));
11
8
  /**
12
9
  * Defines the additional accessibility attributes that will be applied to the component.
13
10
  The following field is supported:
@@ -25,7 +22,11 @@ class AvatarGroup {
25
22
  * Receives id(s) of the elements that describe the AvatarGroup.
26
23
  When provided, this will be used as aria-labelledby instead of aria-label.
27
24
  */
28
- this.accessibleNameRef = input(...(ngDevMode ? [undefined, { debugName: "accessibleNameRef" }] : [])); // className is now passed
25
+ this.accessibleNameRef = input(...(ngDevMode ? [undefined, { debugName: "accessibleNameRef" }] : []));
26
+ /**
27
+ * Defines the mode of the `AvatarGroup`.
28
+ */
29
+ this.type = input("Group", ...(ngDevMode ? [{ debugName: "type" }] : [])); // className is now passed
29
30
  /**
30
31
  * Fired when the component is activated either with a
31
32
  click/tap or by using the Enter or Space key.
@@ -78,20 +79,26 @@ class AvatarGroup {
78
79
  ];
79
80
  this.elementRef = inject(ElementRef);
80
81
  this.injector = inject(Injector);
82
+ /**
83
+ * Content density observer is injected to activate automatic CSS class and
84
+ * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.
85
+ * @private
86
+ */
87
+ this._contentDensityObserver = inject(ContentDensityObserver);
81
88
  }
82
89
  /**
83
- * Returns an array containing the `ui5-avatar` instances that are currently not displayed due to lack of space.
90
+ * Returns an array containing the `AvatarColorScheme` values that correspond to the avatars in the component.
84
91
  * @readonly This property is managed by the web component.
85
92
  */
86
- get hiddenItems() {
87
- return this.element?.hiddenItems ?? [];
93
+ get colorScheme() {
94
+ return this.element?.colorScheme ?? [];
88
95
  }
89
96
  /**
90
- * Returns an array containing the `AvatarColorScheme` values that correspond to the avatars in the component.
97
+ * Returns an array containing the `ui5-avatar` instances that are currently not displayed due to lack of space.
91
98
  * @readonly This property is managed by the web component.
92
99
  */
93
- get colorScheme() {
94
- return this.element?.colorScheme ?? [];
100
+ get hiddenItems() {
101
+ return this.element?.hiddenItems ?? [];
95
102
  }
96
103
  get element() {
97
104
  return this.elementRef.nativeElement;
@@ -99,10 +106,10 @@ class AvatarGroup {
99
106
  ngAfterViewInit() {
100
107
  const wcElement = this.element;
101
108
  const inputsToSync = [
102
- 'type',
103
109
  'accessibilityAttributes',
104
110
  'accessibleName',
105
111
  'accessibleNameRef',
112
+ 'type',
106
113
  ];
107
114
  // Synchronize inputs (properties)
108
115
  for (const inputName of inputsToSync) {
@@ -140,7 +147,11 @@ class AvatarGroup {
140
147
  }
141
148
  }
142
149
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: AvatarGroup, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
143
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.0", type: AvatarGroup, isStandalone: true, selector: "ui5-avatar-group, [ui5-avatar-group]", inputs: { type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, accessibilityAttributes: { classPropertyName: "accessibilityAttributes", publicName: "accessibilityAttributes", isSignal: true, isRequired: false, transformFunction: null }, accessibleName: { classPropertyName: "accessibleName", publicName: "accessibleName", isSignal: true, isRequired: false, transformFunction: null }, accessibleNameRef: { classPropertyName: "accessibleNameRef", publicName: "accessibleNameRef", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ui5Click: "ui5Click", ui5Overflow: "ui5Overflow" }, exportAs: ["ui5AvatarGroup"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
150
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.0", type: AvatarGroup, isStandalone: true, selector: "ui5-avatar-group, [ui5-avatar-group]", inputs: { accessibilityAttributes: { classPropertyName: "accessibilityAttributes", publicName: "accessibilityAttributes", isSignal: true, isRequired: false, transformFunction: null }, accessibleName: { classPropertyName: "accessibleName", publicName: "accessibleName", isSignal: true, isRequired: false, transformFunction: null }, accessibleNameRef: { classPropertyName: "accessibleNameRef", publicName: "accessibleNameRef", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ui5Click: "ui5Click", ui5Overflow: "ui5Overflow" }, providers: [
151
+ contentDensityObserverProviders({
152
+ supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
153
+ })
154
+ ], exportAs: ["ui5AvatarGroup"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
144
155
  }
145
156
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: AvatarGroup, decorators: [{
146
157
  type: Component,
@@ -149,9 +160,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImpor
149
160
  selector: 'ui5-avatar-group, [ui5-avatar-group]',
150
161
  template: '<ng-content></ng-content>',
151
162
  exportAs: 'ui5AvatarGroup',
163
+ providers: [
164
+ contentDensityObserverProviders({
165
+ supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
166
+ })
167
+ ],
152
168
  changeDetection: ChangeDetectionStrategy.OnPush,
153
169
  }]
154
- }], propDecorators: { type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], accessibilityAttributes: [{ type: i0.Input, args: [{ isSignal: true, alias: "accessibilityAttributes", required: false }] }], accessibleName: [{ type: i0.Input, args: [{ isSignal: true, alias: "accessibleName", required: false }] }], accessibleNameRef: [{ type: i0.Input, args: [{ isSignal: true, alias: "accessibleNameRef", required: false }] }], ui5Click: [{ type: i0.Output, args: ["ui5Click"] }], ui5Overflow: [{ type: i0.Output, args: ["ui5Overflow"] }] } });
170
+ }], propDecorators: { accessibilityAttributes: [{ type: i0.Input, args: [{ isSignal: true, alias: "accessibilityAttributes", required: false }] }], accessibleName: [{ type: i0.Input, args: [{ isSignal: true, alias: "accessibleName", required: false }] }], accessibleNameRef: [{ type: i0.Input, args: [{ isSignal: true, alias: "accessibleNameRef", required: false }] }], type: [{ type: i0.Input, args: [{ isSignal: true, alias: "type", required: false }] }], ui5Click: [{ type: i0.Output, args: ["ui5Click"] }], ui5Overflow: [{ type: i0.Output, args: ["ui5Overflow"] }] } });
155
171
 
156
172
  /**
157
173
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-ui5-webcomponents-avatar-group.mjs","sources":["../../../../libs/ui5-webcomponents/avatar-group/index.ts","../../../../libs/ui5-webcomponents/avatar-group/fundamental-ngx-ui5-webcomponents-avatar-group.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/AvatarGroup.js';\nimport { default as _AvatarGroup } from '@ui5/webcomponents/dist/AvatarGroup.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\n\nimport { default as AvatarGroupType } from '@ui5/webcomponents/dist/types/AvatarGroupType.js';\nimport { AvatarGroupAccessibilityAttributes } from '@ui5/webcomponents/dist/AvatarGroup.js';\nimport { IAvatarGroupItem } from '@ui5/webcomponents/dist/AvatarGroup.js';\nimport { default as AvatarColorScheme } from '@ui5/webcomponents/dist/types/AvatarColorScheme.js';\n\n@Component({\n standalone: true,\n selector: 'ui5-avatar-group, [ui5-avatar-group]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5AvatarGroup',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AvatarGroup implements AfterViewInit {\n\n /**\n * Defines the mode of the `AvatarGroup`.\n */\n type = input<typeof _AvatarGroup.prototype.type | undefined>(\"Group\");\n\n /**\n * Defines the additional accessibility attributes that will be applied to the component.\nThe following field is supported:\n\n- **hasPopup**: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button.\nAccepts the following string values: `dialog`, `grid`, `listbox`, `menu` or `tree`.\n */\n accessibilityAttributes = input<typeof _AvatarGroup.prototype.accessibilityAttributes | undefined>({});\n\n /**\n * Defines the accessible name of the AvatarGroup.\nWhen provided, this will override the default aria-label text.\n */\n accessibleName = input<typeof _AvatarGroup.prototype.accessibleName | undefined>();\n\n /**\n * Receives id(s) of the elements that describe the AvatarGroup.\nWhen provided, this will be used as aria-labelledby instead of aria-label.\n */\n accessibleNameRef = input<typeof _AvatarGroup.prototype.accessibleNameRef | undefined>(); // className is now passed\n\n /**\n * Returns an array containing the `ui5-avatar` instances that are currently not displayed due to lack of space.\n * @readonly This property is managed by the web component.\n */\n get hiddenItems(): Array<IAvatarGroupItem> {\n return this.element?.hiddenItems ?? [];\n }\n\n /**\n * Returns an array containing the `AvatarColorScheme` values that correspond to the avatars in the component.\n * @readonly This property is managed by the web component.\n */\n get colorScheme(): Array<AvatarColorScheme> {\n return this.element?.colorScheme ?? [];\n }\n\n\n /**\n * Fired when the component is activated either with a\nclick/tap or by using the Enter or Space key.\n */\n ui5Click = output<UI5CustomEvent<_AvatarGroup, 'click'>>();\n\n /**\n * Fired when the count of visible `ui5-avatar` elements in the\ncomponent has changed\n */\n ui5Overflow = output<UI5CustomEvent<_AvatarGroup, 'overflow'>>();\n\n /**\n * Available slots for content projection in this component.\n *\n * Slots allow you to insert custom content into predefined areas of the web component.\n * Use the `slot` attribute on child elements to target specific slots.\n *\n * - **(default)**: Defines the items of the component. Use the `ui5-avatar` component as an item.\n\n**Note:** The UX guidelines recommends using avatars with \"Circle\" shape.\n\nMoreover, if you use avatars with \"Square\" shape, there will be visual inconsistency\nas the built-in overflow action has \"Circle\" shape.\n * - **overflowButton**: Defines the overflow button of the component.\n\n**Note:** We recommend using the `ui5-button` component.\n\n**Note:** If this slot is not used, the component will display the built-in overflow button.\n *\n * @example\n * ```html\n * <ui5-avatar-group>\n * <div slot=\"header\">Custom header content</div>\n * <p>Default slot content</p>\n * </ui5-avatar-group>\n * ```\n *\n * @readonly\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}\n */\n readonly slots = [\n {\n \"name\": \"default\",\n \"description\": \"Defines the items of the component. Use the `ui5-avatar` component as an item.\\n\\n**Note:** The UX guidelines recommends using avatars with \\\"Circle\\\" shape.\\n\\nMoreover, if you use avatars with \\\"Square\\\" shape, there will be visual inconsistency\\nas the built-in overflow action has \\\"Circle\\\" shape.\"\n },\n {\n \"name\": \"overflowButton\",\n \"description\": \"Defines the overflow button of the component.\\n\\n**Note:** We recommend using the `ui5-button` component.\\n\\n**Note:** If this slot is not used, the component will display the built-in overflow button.\",\n \"since\": \"1.0.0-rc.13\"\n }\n ];\n\n\n public elementRef: ElementRef<_AvatarGroup> = inject(ElementRef);\n public injector = inject(Injector);\n\n get element(): _AvatarGroup {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'type',\n 'accessibilityAttributes',\n 'accessibleName',\n 'accessibleNameRef',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, () => {\n effect(() => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n const outputsToSync = [\n 'ui5Click',\n 'ui5Overflow',\n ];\n \n // Synchronize outputs (events)\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n wcElement.addEventListener(eventName, (e) => {\n\n this[outputName].emit(e as CustomEvent<any>);\n });\n }\n }\n \n\n }\n}\n\n// Re-export types for convenience\nexport { AvatarGroupAccessibilityAttributes } from '@ui5/webcomponents/dist/AvatarGroup.js';\nexport { IAvatarGroupItem } from '@ui5/webcomponents/dist/AvatarGroup.js';\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-ui5-webcomponents-avatar-group.mjs","sources":["../../../../libs/ui5-webcomponents/avatar-group/index.ts","../../../../libs/ui5-webcomponents/avatar-group/fundamental-ngx-ui5-webcomponents-avatar-group.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/AvatarGroup.js';\nimport { default as _AvatarGroup } from '@ui5/webcomponents/dist/AvatarGroup.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\nimport { AvatarGroupAccessibilityAttributes } from '@ui5/webcomponents/dist/AvatarGroup.js';\nimport { default as AvatarColorScheme } from '@ui5/webcomponents/dist/types/AvatarColorScheme.js';\nimport { IAvatarGroupItem } from '@ui5/webcomponents/dist/AvatarGroup.js';\nimport { default as AvatarGroupType } from '@ui5/webcomponents/dist/types/AvatarGroupType.js';\n\n@Component({\n standalone: true,\n selector: 'ui5-avatar-group, [ui5-avatar-group]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5AvatarGroup',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AvatarGroup implements AfterViewInit {\n\n /**\n * Defines the additional accessibility attributes that will be applied to the component.\nThe following field is supported:\n\n- **hasPopup**: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button.\nAccepts the following string values: `dialog`, `grid`, `listbox`, `menu` or `tree`.\n */\n accessibilityAttributes = input<typeof _AvatarGroup.prototype.accessibilityAttributes | undefined>({});\n\n /**\n * Defines the accessible name of the AvatarGroup.\nWhen provided, this will override the default aria-label text.\n */\n accessibleName = input<typeof _AvatarGroup.prototype.accessibleName | undefined>();\n\n /**\n * Receives id(s) of the elements that describe the AvatarGroup.\nWhen provided, this will be used as aria-labelledby instead of aria-label.\n */\n accessibleNameRef = input<typeof _AvatarGroup.prototype.accessibleNameRef | undefined>();\n\n /**\n * Defines the mode of the `AvatarGroup`.\n */\n type = input<typeof _AvatarGroup.prototype.type | undefined>(\"Group\"); // className is now passed\n\n /**\n * Returns an array containing the `AvatarColorScheme` values that correspond to the avatars in the component.\n * @readonly This property is managed by the web component.\n */\n get colorScheme(): Array<AvatarColorScheme> {\n return this.element?.colorScheme ?? [];\n }\n\n /**\n * Returns an array containing the `ui5-avatar` instances that are currently not displayed due to lack of space.\n * @readonly This property is managed by the web component.\n */\n get hiddenItems(): Array<IAvatarGroupItem> {\n return this.element?.hiddenItems ?? [];\n }\n\n\n /**\n * Fired when the component is activated either with a\nclick/tap or by using the Enter or Space key.\n */\n ui5Click = output<UI5CustomEvent<_AvatarGroup, 'click'>>();\n\n /**\n * Fired when the count of visible `ui5-avatar` elements in the\ncomponent has changed\n */\n ui5Overflow = output<UI5CustomEvent<_AvatarGroup, 'overflow'>>();\n\n /**\n * Available slots for content projection in this component.\n *\n * Slots allow you to insert custom content into predefined areas of the web component.\n * Use the `slot` attribute on child elements to target specific slots.\n *\n * - **(default)**: Defines the items of the component. Use the `ui5-avatar` component as an item.\n\n**Note:** The UX guidelines recommends using avatars with \"Circle\" shape.\n\nMoreover, if you use avatars with \"Square\" shape, there will be visual inconsistency\nas the built-in overflow action has \"Circle\" shape.\n * - **overflowButton**: Defines the overflow button of the component.\n\n**Note:** We recommend using the `ui5-button` component.\n\n**Note:** If this slot is not used, the component will display the built-in overflow button.\n *\n * @example\n * ```html\n * <ui5-avatar-group>\n * <div slot=\"header\">Custom header content</div>\n * <p>Default slot content</p>\n * </ui5-avatar-group>\n * ```\n *\n * @readonly\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}\n */\n readonly slots = [\n {\n \"name\": \"default\",\n \"description\": \"Defines the items of the component. Use the `ui5-avatar` component as an item.\\n\\n**Note:** The UX guidelines recommends using avatars with \\\"Circle\\\" shape.\\n\\nMoreover, if you use avatars with \\\"Square\\\" shape, there will be visual inconsistency\\nas the built-in overflow action has \\\"Circle\\\" shape.\"\n },\n {\n \"name\": \"overflowButton\",\n \"description\": \"Defines the overflow button of the component.\\n\\n**Note:** We recommend using the `ui5-button` component.\\n\\n**Note:** If this slot is not used, the component will display the built-in overflow button.\",\n \"since\": \"1.0.0-rc.13\"\n }\n ];\n\n\n public elementRef: ElementRef<_AvatarGroup> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n get element(): _AvatarGroup {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'accessibilityAttributes',\n 'accessibleName',\n 'accessibleNameRef',\n 'type',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, () => {\n effect(() => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n const outputsToSync = [\n 'ui5Click',\n 'ui5Overflow',\n ];\n \n // Synchronize outputs (events)\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n wcElement.addEventListener(eventName, (e) => {\n\n this[outputName].emit(e as CustomEvent<any>);\n });\n }\n }\n \n\n }\n}\n\n// Re-export types for convenience\nexport { AvatarGroupAccessibilityAttributes } from '@ui5/webcomponents/dist/AvatarGroup.js';\nexport { IAvatarGroupItem } from '@ui5/webcomponents/dist/AvatarGroup.js';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,9 +1,28 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { input, booleanAttribute, output, inject, ElementRef, Injector, runInInjectionContext, effect, ChangeDetectionStrategy, Component } from '@angular/core';
3
3
  import '@ui5/webcomponents/dist/Avatar.js';
4
+ import { ContentDensityObserver, contentDensityObserverProviders, ContentDensityMode } from '@fundamental-ngx/core/content-density';
4
5
 
5
6
  class Avatar {
6
7
  constructor() {
8
+ /**
9
+ * Defines the additional accessibility attributes that will be applied to the component.
10
+ The following field is supported:
11
+
12
+ - **hasPopup**: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button.
13
+ Accepts the following string values: `dialog`, `grid`, `listbox`, `menu` or `tree`.
14
+ */
15
+ this.accessibilityAttributes = input({}, ...(ngDevMode ? [{ debugName: "accessibilityAttributes" }] : []));
16
+ /**
17
+ * Defines the text alternative of the component.
18
+ If not provided a default text alternative will be set, if present.
19
+ */
20
+ this.accessibleName = input(...(ngDevMode ? [undefined, { debugName: "accessibleName" }] : []));
21
+ /**
22
+ * Defines the background color of the desired image.
23
+ If `colorScheme` is set to `Auto`, the avatar will be displayed with the `Accent6` color.
24
+ */
25
+ this.colorScheme = input("Auto", ...(ngDevMode ? [{ debugName: "colorScheme" }] : []));
7
26
  /**
8
27
  * Defines whether the component is disabled.
9
28
  A disabled component can't be pressed or
@@ -11,12 +30,23 @@ class Avatar {
11
30
  */
12
31
  this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : {}), transform: booleanAttribute });
13
32
  /**
14
- * Defines if the avatar is interactive (focusable and pressable).
33
+ * Defines the name of the fallback icon, which should be displayed in the following cases:
15
34
 
16
- **Note:** This property won't have effect if the `disabled`
17
- property is set to `true`.
35
+ - If the initials are not valid (more than 3 letters, unsupported languages or empty initials).
36
+ - If there are three initials and they do not fit in the shape (e.g. WWW for some of the sizes).
37
+ - If the image src is wrong.
38
+
39
+ **Note:** If not set, a default fallback icon "employee" is displayed.
40
+
41
+ **Note:** You should import the desired icon first, then use its name as "fallback-icon".
42
+
43
+ `import "@ui5/webcomponents-icons/dist/{icon_name}.js"`
44
+
45
+ `<ui5-avatar fallback-icon="alert">`
46
+
47
+ See all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).
18
48
  */
19
- this.interactive = input(false, { ...(ngDevMode ? { debugName: "interactive" } : {}), transform: booleanAttribute });
49
+ this.fallbackIcon = input("employee", ...(ngDevMode ? [{ debugName: "fallbackIcon" }] : []));
20
50
  /**
21
51
  * Defines the name of the UI5 Icon, that will be displayed.
22
52
 
@@ -34,29 +64,33 @@ class Avatar {
34
64
  */
35
65
  this.icon = input(...(ngDevMode ? [undefined, { debugName: "icon" }] : []));
36
66
  /**
37
- * Defines the name of the fallback icon, which should be displayed in the following cases:
38
-
39
- - If the initials are not valid (more than 3 letters, unsupported languages or empty initials).
40
- - If there are three initials and they do not fit in the shape (e.g. WWW for some of the sizes).
41
- - If the image src is wrong.
42
-
43
- **Note:** If not set, a default fallback icon "employee" is displayed.
44
-
45
- **Note:** You should import the desired icon first, then use its name as "fallback-icon".
67
+ * Defines the displayed initials.
46
68
 
47
- `import "@ui5/webcomponents-icons/dist/{icon_name}.js"`
69
+ Up to three Latin letters can be displayed as initials.
70
+ */
71
+ this.initials = input(...(ngDevMode ? [undefined, { debugName: "initials" }] : []));
72
+ /**
73
+ * Defines if the avatar is interactive (focusable and pressable).
48
74
 
49
- `<ui5-avatar fallback-icon="alert">`
75
+ **Note:** When set to `true`, this property takes precedence over the `mode` property,
76
+ and the avatar will be rendered as interactive (role="button", focusable) regardless of the `mode` value.
50
77
 
51
- See all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).
78
+ **Note:** This property won't have effect if the `disabled`
79
+ property is set to `true`.
52
80
  */
53
- this.fallbackIcon = input("employee", ...(ngDevMode ? [{ debugName: "fallbackIcon" }] : []));
81
+ this.interactive = input(false, { ...(ngDevMode ? { debugName: "interactive" } : {}), transform: booleanAttribute });
54
82
  /**
55
- * Defines the displayed initials.
83
+ * Defines the mode of the component.
56
84
 
57
- Up to three Latin letters can be displayed as initials.
85
+ **Note:**
86
+ - `Image` (default) - renders with role="img"
87
+ - `Decorative` - renders with role="presentation" and aria-hidden="true", making it purely decorative
88
+ - `Interactive` - renders with role="button", focusable (tabindex="0"), and supports keyboard interaction
89
+
90
+ **Note:** This property is ignored when the `interactive` property is set to `true`.
91
+ In that case, the avatar will always be rendered as interactive.
58
92
  */
59
- this.initials = input(...(ngDevMode ? [undefined, { debugName: "initials" }] : []));
93
+ this.mode = input("Image", ...(ngDevMode ? [{ debugName: "mode" }] : []));
60
94
  /**
61
95
  * Defines the shape of the component.
62
96
  */
@@ -64,25 +98,7 @@ class Avatar {
64
98
  /**
65
99
  * Defines predefined size of the component.
66
100
  */
67
- this.size = input("S", ...(ngDevMode ? [{ debugName: "size" }] : []));
68
- /**
69
- * Defines the background color of the desired image.
70
- If `colorScheme` is set to `Auto`, the avatar will be displayed with the `Accent6` color.
71
- */
72
- this.colorScheme = input("Auto", ...(ngDevMode ? [{ debugName: "colorScheme" }] : []));
73
- /**
74
- * Defines the text alternative of the component.
75
- If not provided a default text alternative will be set, if present.
76
- */
77
- this.accessibleName = input(...(ngDevMode ? [undefined, { debugName: "accessibleName" }] : []));
78
- /**
79
- * Defines the additional accessibility attributes that will be applied to the component.
80
- The following field is supported:
81
-
82
- - **hasPopup**: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button.
83
- Accepts the following string values: `dialog`, `grid`, `listbox`, `menu` or `tree`.
84
- */
85
- this.accessibilityAttributes = input({}, ...(ngDevMode ? [{ debugName: "accessibilityAttributes" }] : [])); // className is now passed
101
+ this.size = input("S", ...(ngDevMode ? [{ debugName: "size" }] : [])); // className is now passed
86
102
  /**
87
103
  * Fired on mouseup, space and enter if avatar is interactive
88
104
 
@@ -96,16 +112,20 @@ class Avatar {
96
112
  * Slots allow you to insert custom content into predefined areas of the web component.
97
113
  * Use the `slot` attribute on child elements to target specific slots.
98
114
  *
115
+ * - **badge**: Defines the optional badge that will be used for visual affordance.
116
+
117
+ **Recommendation:** While badges are supported on all avatars, it is recommended
118
+ to use them with interactive avatars (via `mode="Interactive"` or `interactive` attribute)
119
+ to provide better user experience and accessibility.
120
+
121
+ **Note:** While the slot allows for custom badges, to achieve
122
+ the Fiori design, use the `ui5-avatar-badge` component.
99
123
  * - **(default)**: Receives the desired `<img>` tag
100
124
 
101
125
  **Note:** If you experience flickering of the provided image, you can hide the component until it is defined with the following CSS:<br/>
102
126
  `ui5-avatar:not(:defined) {`<br/>
103
127
  &nbsp;&nbsp;&nbsp;&nbsp;`visibility: hidden;`<br/>
104
128
  `}`
105
- * - **badge**: Defines the optional badge that will be used for visual affordance.
106
-
107
- **Note:** While the slot allows for custom badges, to achieve
108
- the Fiori design, use the `ui5-avatar-badge` component.
109
129
  *
110
130
  * @example
111
131
  * ```html
@@ -119,19 +139,25 @@ class Avatar {
119
139
  * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}
120
140
  */
121
141
  this.slots = [
142
+ {
143
+ "name": "badge",
144
+ "description": "Defines the optional badge that will be used for visual affordance.\n\n**Recommendation:** While badges are supported on all avatars, it is recommended\nto use them with interactive avatars (via `mode=\"Interactive\"` or `interactive` attribute)\nto provide better user experience and accessibility.\n\n**Note:** While the slot allows for custom badges, to achieve\nthe Fiori design, use the `ui5-avatar-badge` component.",
145
+ "since": "1.7.0"
146
+ },
122
147
  {
123
148
  "name": "default",
124
149
  "description": "Receives the desired `<img>` tag\n\n**Note:** If you experience flickering of the provided image, you can hide the component until it is defined with the following CSS:<br/>\n`ui5-avatar:not(:defined) {`<br/>\n&nbsp;&nbsp;&nbsp;&nbsp;`visibility: hidden;`<br/>\n`}`",
125
150
  "since": "1.0.0-rc.15"
126
- },
127
- {
128
- "name": "badge",
129
- "description": "Defines the optional badge that will be used for visual affordance.\n\n**Note:** While the slot allows for custom badges, to achieve\nthe Fiori design, use the `ui5-avatar-badge` component.",
130
- "since": "1.7.0"
131
151
  }
132
152
  ];
133
153
  this.elementRef = inject(ElementRef);
134
154
  this.injector = inject(Injector);
155
+ /**
156
+ * Content density observer is injected to activate automatic CSS class and
157
+ * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.
158
+ * @private
159
+ */
160
+ this._contentDensityObserver = inject(ContentDensityObserver);
135
161
  }
136
162
  get element() {
137
163
  return this.elementRef.nativeElement;
@@ -139,16 +165,17 @@ class Avatar {
139
165
  ngAfterViewInit() {
140
166
  const wcElement = this.element;
141
167
  const inputsToSync = [
168
+ 'accessibilityAttributes',
169
+ 'accessibleName',
170
+ 'colorScheme',
142
171
  'disabled',
143
- 'interactive',
144
- 'icon',
145
172
  'fallbackIcon',
173
+ 'icon',
146
174
  'initials',
175
+ 'interactive',
176
+ 'mode',
147
177
  'shape',
148
178
  'size',
149
- 'colorScheme',
150
- 'accessibleName',
151
- 'accessibilityAttributes',
152
179
  ];
153
180
  // Synchronize inputs (properties)
154
181
  for (const inputName of inputsToSync) {
@@ -185,7 +212,11 @@ class Avatar {
185
212
  }
186
213
  }
187
214
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: Avatar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
188
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.0", type: Avatar, isStandalone: true, selector: "ui5-avatar, [ui5-avatar]", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, interactive: { classPropertyName: "interactive", publicName: "interactive", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, fallbackIcon: { classPropertyName: "fallbackIcon", publicName: "fallbackIcon", isSignal: true, isRequired: false, transformFunction: null }, initials: { classPropertyName: "initials", publicName: "initials", isSignal: true, isRequired: false, transformFunction: null }, shape: { classPropertyName: "shape", publicName: "shape", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, colorScheme: { classPropertyName: "colorScheme", publicName: "colorScheme", isSignal: true, isRequired: false, transformFunction: null }, accessibleName: { classPropertyName: "accessibleName", publicName: "accessibleName", isSignal: true, isRequired: false, transformFunction: null }, accessibilityAttributes: { classPropertyName: "accessibilityAttributes", publicName: "accessibilityAttributes", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ui5Click: "ui5Click" }, exportAs: ["ui5Avatar"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
215
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.0", type: Avatar, isStandalone: true, selector: "ui5-avatar, [ui5-avatar]", inputs: { accessibilityAttributes: { classPropertyName: "accessibilityAttributes", publicName: "accessibilityAttributes", isSignal: true, isRequired: false, transformFunction: null }, accessibleName: { classPropertyName: "accessibleName", publicName: "accessibleName", isSignal: true, isRequired: false, transformFunction: null }, colorScheme: { classPropertyName: "colorScheme", publicName: "colorScheme", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, fallbackIcon: { classPropertyName: "fallbackIcon", publicName: "fallbackIcon", isSignal: true, isRequired: false, transformFunction: null }, icon: { classPropertyName: "icon", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, initials: { classPropertyName: "initials", publicName: "initials", isSignal: true, isRequired: false, transformFunction: null }, interactive: { classPropertyName: "interactive", publicName: "interactive", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, shape: { classPropertyName: "shape", publicName: "shape", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { ui5Click: "ui5Click" }, providers: [
216
+ contentDensityObserverProviders({
217
+ supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
218
+ })
219
+ ], exportAs: ["ui5Avatar"], ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
189
220
  }
190
221
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImport: i0, type: Avatar, decorators: [{
191
222
  type: Component,
@@ -194,9 +225,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.0", ngImpor
194
225
  selector: 'ui5-avatar, [ui5-avatar]',
195
226
  template: '<ng-content></ng-content>',
196
227
  exportAs: 'ui5Avatar',
228
+ providers: [
229
+ contentDensityObserverProviders({
230
+ supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]
231
+ })
232
+ ],
197
233
  changeDetection: ChangeDetectionStrategy.OnPush,
198
234
  }]
199
- }], propDecorators: { disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], interactive: [{ type: i0.Input, args: [{ isSignal: true, alias: "interactive", required: false }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], fallbackIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "fallbackIcon", required: false }] }], initials: [{ type: i0.Input, args: [{ isSignal: true, alias: "initials", required: false }] }], shape: [{ type: i0.Input, args: [{ isSignal: true, alias: "shape", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], colorScheme: [{ type: i0.Input, args: [{ isSignal: true, alias: "colorScheme", required: false }] }], accessibleName: [{ type: i0.Input, args: [{ isSignal: true, alias: "accessibleName", required: false }] }], accessibilityAttributes: [{ type: i0.Input, args: [{ isSignal: true, alias: "accessibilityAttributes", required: false }] }], ui5Click: [{ type: i0.Output, args: ["ui5Click"] }] } });
235
+ }], propDecorators: { accessibilityAttributes: [{ type: i0.Input, args: [{ isSignal: true, alias: "accessibilityAttributes", required: false }] }], accessibleName: [{ type: i0.Input, args: [{ isSignal: true, alias: "accessibleName", required: false }] }], colorScheme: [{ type: i0.Input, args: [{ isSignal: true, alias: "colorScheme", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], fallbackIcon: [{ type: i0.Input, args: [{ isSignal: true, alias: "fallbackIcon", required: false }] }], icon: [{ type: i0.Input, args: [{ isSignal: true, alias: "icon", required: false }] }], initials: [{ type: i0.Input, args: [{ isSignal: true, alias: "initials", required: false }] }], interactive: [{ type: i0.Input, args: [{ isSignal: true, alias: "interactive", required: false }] }], mode: [{ type: i0.Input, args: [{ isSignal: true, alias: "mode", required: false }] }], shape: [{ type: i0.Input, args: [{ isSignal: true, alias: "shape", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], ui5Click: [{ type: i0.Output, args: ["ui5Click"] }] } });
200
236
 
201
237
  /**
202
238
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-ui5-webcomponents-avatar.mjs","sources":["../../../../libs/ui5-webcomponents/avatar/index.ts","../../../../libs/ui5-webcomponents/avatar/fundamental-ngx-ui5-webcomponents-avatar.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/Avatar.js';\nimport { default as _Avatar } from '@ui5/webcomponents/dist/Avatar.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\n\nimport { default as AvatarShape } from '@ui5/webcomponents/dist/types/AvatarShape.js';\nimport { default as AvatarSize } from '@ui5/webcomponents/dist/types/AvatarSize.js';\nimport { default as AvatarColorScheme } from '@ui5/webcomponents/dist/types/AvatarColorScheme.js';\nimport { AvatarAccessibilityAttributes } from '@ui5/webcomponents/dist/Avatar.js';\n\n@Component({\n standalone: true,\n selector: 'ui5-avatar, [ui5-avatar]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5Avatar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class Avatar implements AfterViewInit {\n\n /**\n * Defines whether the component is disabled.\nA disabled component can't be pressed or\nfocused, and it is not in the tab chain.\n */\n disabled = input(false, { transform: booleanAttribute });\n\n /**\n * Defines if the avatar is interactive (focusable and pressable).\n\n**Note:** This property won't have effect if the `disabled`\nproperty is set to `true`.\n */\n interactive = input(false, { transform: booleanAttribute });\n\n /**\n * Defines the name of the UI5 Icon, that will be displayed.\n\n**Note:** If `image` slot is provided, the property will be ignored.\n\n**Note:** You should import the desired icon first, then use its name as \"icon\".\n\n`import \"@ui5/webcomponents-icons/dist/{icon_name}.js\"`\n\n`<ui5-avatar icon=\"employee\">`\n\n**Note:** If no icon or an empty one is provided, by default the \"employee\" icon should be displayed.\n\nSee all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n */\n icon = input<typeof _Avatar.prototype.icon | undefined>();\n\n /**\n * Defines the name of the fallback icon, which should be displayed in the following cases:\n\n\t- If the initials are not valid (more than 3 letters, unsupported languages or empty initials).\n\t- If there are three initials and they do not fit in the shape (e.g. WWW for some of the sizes).\n\t- If the image src is wrong.\n\n**Note:** If not set, a default fallback icon \"employee\" is displayed.\n\n**Note:** You should import the desired icon first, then use its name as \"fallback-icon\".\n\n`import \"@ui5/webcomponents-icons/dist/{icon_name}.js\"`\n\n`<ui5-avatar fallback-icon=\"alert\">`\n\nSee all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n */\n fallbackIcon = input<typeof _Avatar.prototype.fallbackIcon | undefined>(\"employee\");\n\n /**\n * Defines the displayed initials.\n\nUp to three Latin letters can be displayed as initials.\n */\n initials = input<typeof _Avatar.prototype.initials | undefined>();\n\n /**\n * Defines the shape of the component.\n */\n shape = input<typeof _Avatar.prototype.shape | undefined>(\"Circle\");\n\n /**\n * Defines predefined size of the component.\n */\n size = input<typeof _Avatar.prototype.size | undefined>(\"S\");\n\n /**\n * Defines the background color of the desired image.\nIf `colorScheme` is set to `Auto`, the avatar will be displayed with the `Accent6` color.\n */\n colorScheme = input<typeof _Avatar.prototype.colorScheme | undefined>(\"Auto\");\n\n /**\n * Defines the text alternative of the component.\nIf not provided a default text alternative will be set, if present.\n */\n accessibleName = input<typeof _Avatar.prototype.accessibleName | undefined>();\n\n /**\n * Defines the additional accessibility attributes that will be applied to the component.\nThe following field is supported:\n\n- **hasPopup**: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button.\nAccepts the following string values: `dialog`, `grid`, `listbox`, `menu` or `tree`.\n */\n accessibilityAttributes = input<typeof _Avatar.prototype.accessibilityAttributes | undefined>({}); // className is now passed\n\n\n\n /**\n * Fired on mouseup, space and enter if avatar is interactive\n\n**Note:** The event will not be fired if the `disabled`\nproperty is set to `true`.\n */\n ui5Click = output<UI5CustomEvent<_Avatar, 'click'>>();\n\n /**\n * Available slots for content projection in this component.\n *\n * Slots allow you to insert custom content into predefined areas of the web component.\n * Use the `slot` attribute on child elements to target specific slots.\n *\n * - **(default)**: Receives the desired `<img>` tag\n\n**Note:** If you experience flickering of the provided image, you can hide the component until it is defined with the following CSS:<br/>\n`ui5-avatar:not(:defined) {`<br/>\n&nbsp;&nbsp;&nbsp;&nbsp;`visibility: hidden;`<br/>\n`}`\n * - **badge**: Defines the optional badge that will be used for visual affordance.\n\n**Note:** While the slot allows for custom badges, to achieve\nthe Fiori design, use the `ui5-avatar-badge` component.\n *\n * @example\n * ```html\n * <ui5-avatar>\n * <div slot=\"header\">Custom header content</div>\n * <p>Default slot content</p>\n * </ui5-avatar>\n * ```\n *\n * @readonly\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}\n */\n readonly slots = [\n {\n \"name\": \"default\",\n \"description\": \"Receives the desired `<img>` tag\\n\\n**Note:** If you experience flickering of the provided image, you can hide the component until it is defined with the following CSS:<br/>\\n`ui5-avatar:not(:defined) {`<br/>\\n&nbsp;&nbsp;&nbsp;&nbsp;`visibility: hidden;`<br/>\\n`}`\",\n \"since\": \"1.0.0-rc.15\"\n },\n {\n \"name\": \"badge\",\n \"description\": \"Defines the optional badge that will be used for visual affordance.\\n\\n**Note:** While the slot allows for custom badges, to achieve\\nthe Fiori design, use the `ui5-avatar-badge` component.\",\n \"since\": \"1.7.0\"\n }\n ];\n\n\n public elementRef: ElementRef<_Avatar> = inject(ElementRef);\n public injector = inject(Injector);\n\n get element(): _Avatar {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'disabled',\n 'interactive',\n 'icon',\n 'fallbackIcon',\n 'initials',\n 'shape',\n 'size',\n 'colorScheme',\n 'accessibleName',\n 'accessibilityAttributes',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, () => {\n effect(() => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n const outputsToSync = [\n 'ui5Click',\n ];\n \n // Synchronize outputs (events)\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n wcElement.addEventListener(eventName, (e) => {\n\n this[outputName].emit(e as CustomEvent<any>);\n });\n }\n }\n \n\n }\n}\n\n// Re-export types for convenience\nexport { AvatarAccessibilityAttributes } from '@ui5/webcomponents/dist/Avatar.js';\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-ui5-webcomponents-avatar.mjs","sources":["../../../../libs/ui5-webcomponents/avatar/index.ts","../../../../libs/ui5-webcomponents/avatar/fundamental-ngx-ui5-webcomponents-avatar.ts"],"sourcesContent":["\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n input,\n output,\n AfterViewInit,\n effect,\n runInInjectionContext,\n inject,\n Injector,\n booleanAttribute,\n computed,\n signal\n} from '@angular/core';\nimport '@ui5/webcomponents/dist/Avatar.js';\nimport { default as _Avatar } from '@ui5/webcomponents/dist/Avatar.js';\nimport { UI5CustomEvent } from '@ui5/webcomponents-base';\nimport {\n ContentDensityObserver,\n contentDensityObserverProviders,\n ContentDensityMode\n} from '@fundamental-ngx/core/content-density';\n\nimport { AvatarAccessibilityAttributes } from '@ui5/webcomponents/dist/Avatar.js';\nimport { default as AvatarColorScheme } from '@ui5/webcomponents/dist/types/AvatarColorScheme.js';\nimport { default as AvatarMode } from '@ui5/webcomponents/dist/types/AvatarMode.js';\nimport { default as AvatarShape } from '@ui5/webcomponents/dist/types/AvatarShape.js';\nimport { default as AvatarSize } from '@ui5/webcomponents/dist/types/AvatarSize.js';\n\n@Component({\n standalone: true,\n selector: 'ui5-avatar, [ui5-avatar]',\n template: '<ng-content></ng-content>',\n exportAs: 'ui5Avatar',\n providers: [\n contentDensityObserverProviders({\n supportedContentDensity: [ContentDensityMode.COMPACT, ContentDensityMode.COZY]\n })\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class Avatar implements AfterViewInit {\n\n /**\n * Defines the additional accessibility attributes that will be applied to the component.\nThe following field is supported:\n\n- **hasPopup**: Indicates the availability and type of interactive popup element, such as menu or dialog, that can be triggered by the button.\nAccepts the following string values: `dialog`, `grid`, `listbox`, `menu` or `tree`.\n */\n accessibilityAttributes = input<typeof _Avatar.prototype.accessibilityAttributes | undefined>({});\n\n /**\n * Defines the text alternative of the component.\nIf not provided a default text alternative will be set, if present.\n */\n accessibleName = input<typeof _Avatar.prototype.accessibleName | undefined>();\n\n /**\n * Defines the background color of the desired image.\nIf `colorScheme` is set to `Auto`, the avatar will be displayed with the `Accent6` color.\n */\n colorScheme = input<typeof _Avatar.prototype.colorScheme | undefined>(\"Auto\");\n\n /**\n * Defines whether the component is disabled.\nA disabled component can't be pressed or\nfocused, and it is not in the tab chain.\n */\n disabled = input(false, { transform: booleanAttribute });\n\n /**\n * Defines the name of the fallback icon, which should be displayed in the following cases:\n\n\t- If the initials are not valid (more than 3 letters, unsupported languages or empty initials).\n\t- If there are three initials and they do not fit in the shape (e.g. WWW for some of the sizes).\n\t- If the image src is wrong.\n\n**Note:** If not set, a default fallback icon \"employee\" is displayed.\n\n**Note:** You should import the desired icon first, then use its name as \"fallback-icon\".\n\n`import \"@ui5/webcomponents-icons/dist/{icon_name}.js\"`\n\n`<ui5-avatar fallback-icon=\"alert\">`\n\nSee all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n */\n fallbackIcon = input<typeof _Avatar.prototype.fallbackIcon | undefined>(\"employee\");\n\n /**\n * Defines the name of the UI5 Icon, that will be displayed.\n\n**Note:** If `image` slot is provided, the property will be ignored.\n\n**Note:** You should import the desired icon first, then use its name as \"icon\".\n\n`import \"@ui5/webcomponents-icons/dist/{icon_name}.js\"`\n\n`<ui5-avatar icon=\"employee\">`\n\n**Note:** If no icon or an empty one is provided, by default the \"employee\" icon should be displayed.\n\nSee all the available icons in the [Icon Explorer](https://sdk.openui5.org/test-resources/sap/m/demokit/iconExplorer/webapp/index.html).\n */\n icon = input<typeof _Avatar.prototype.icon | undefined>();\n\n /**\n * Defines the displayed initials.\n\nUp to three Latin letters can be displayed as initials.\n */\n initials = input<typeof _Avatar.prototype.initials | undefined>();\n\n /**\n * Defines if the avatar is interactive (focusable and pressable).\n\n**Note:** When set to `true`, this property takes precedence over the `mode` property,\nand the avatar will be rendered as interactive (role=\"button\", focusable) regardless of the `mode` value.\n\n**Note:** This property won't have effect if the `disabled`\nproperty is set to `true`.\n */\n interactive = input(false, { transform: booleanAttribute });\n\n /**\n * Defines the mode of the component.\n\n**Note:**\n- `Image` (default) - renders with role=\"img\"\n- `Decorative` - renders with role=\"presentation\" and aria-hidden=\"true\", making it purely decorative\n- `Interactive` - renders with role=\"button\", focusable (tabindex=\"0\"), and supports keyboard interaction\n\n**Note:** This property is ignored when the `interactive` property is set to `true`.\nIn that case, the avatar will always be rendered as interactive.\n */\n mode = input<typeof _Avatar.prototype.mode | undefined>(\"Image\");\n\n /**\n * Defines the shape of the component.\n */\n shape = input<typeof _Avatar.prototype.shape | undefined>(\"Circle\");\n\n /**\n * Defines predefined size of the component.\n */\n size = input<typeof _Avatar.prototype.size | undefined>(\"S\"); // className is now passed\n\n\n\n /**\n * Fired on mouseup, space and enter if avatar is interactive\n\n**Note:** The event will not be fired if the `disabled`\nproperty is set to `true`.\n */\n ui5Click = output<UI5CustomEvent<_Avatar, 'click'>>();\n\n /**\n * Available slots for content projection in this component.\n *\n * Slots allow you to insert custom content into predefined areas of the web component.\n * Use the `slot` attribute on child elements to target specific slots.\n *\n * - **badge**: Defines the optional badge that will be used for visual affordance.\n\n**Recommendation:** While badges are supported on all avatars, it is recommended\nto use them with interactive avatars (via `mode=\"Interactive\"` or `interactive` attribute)\nto provide better user experience and accessibility.\n\n**Note:** While the slot allows for custom badges, to achieve\nthe Fiori design, use the `ui5-avatar-badge` component.\n * - **(default)**: Receives the desired `<img>` tag\n\n**Note:** If you experience flickering of the provided image, you can hide the component until it is defined with the following CSS:<br/>\n`ui5-avatar:not(:defined) {`<br/>\n&nbsp;&nbsp;&nbsp;&nbsp;`visibility: hidden;`<br/>\n`}`\n *\n * @example\n * ```html\n * <ui5-avatar>\n * <div slot=\"header\">Custom header content</div>\n * <p>Default slot content</p>\n * </ui5-avatar>\n * ```\n *\n * @readonly\n * @see {@link https://developer.mozilla.org/en-US/docs/Web/API/Web_components/Using_templates_and_slots | MDN Web Components Slots}\n */\n readonly slots = [\n {\n \"name\": \"badge\",\n \"description\": \"Defines the optional badge that will be used for visual affordance.\\n\\n**Recommendation:** While badges are supported on all avatars, it is recommended\\nto use them with interactive avatars (via `mode=\\\"Interactive\\\"` or `interactive` attribute)\\nto provide better user experience and accessibility.\\n\\n**Note:** While the slot allows for custom badges, to achieve\\nthe Fiori design, use the `ui5-avatar-badge` component.\",\n \"since\": \"1.7.0\"\n },\n {\n \"name\": \"default\",\n \"description\": \"Receives the desired `<img>` tag\\n\\n**Note:** If you experience flickering of the provided image, you can hide the component until it is defined with the following CSS:<br/>\\n`ui5-avatar:not(:defined) {`<br/>\\n&nbsp;&nbsp;&nbsp;&nbsp;`visibility: hidden;`<br/>\\n`}`\",\n \"since\": \"1.0.0-rc.15\"\n }\n ];\n\n\n public elementRef: ElementRef<_Avatar> = inject(ElementRef);\n public injector = inject(Injector);\n\n /**\n * Content density observer is injected to activate automatic CSS class and\n * UI5 attribute application. The observer self-initializes, no explicit subscribe() needed.\n * @private\n */\n private readonly _contentDensityObserver = inject(ContentDensityObserver);\n\n get element(): _Avatar {\n return this.elementRef.nativeElement;\n }\n\n ngAfterViewInit(): void {\n const wcElement = this.element;\n \n const inputsToSync = [\n 'accessibilityAttributes',\n 'accessibleName',\n 'colorScheme',\n 'disabled',\n 'fallbackIcon',\n 'icon',\n 'initials',\n 'interactive',\n 'mode',\n 'shape',\n 'size',\n ];\n \n // Synchronize inputs (properties)\n for (const inputName of inputsToSync) {\n // Find the corresponding camelCase signal property on the Angular component\n const signalName = inputName.replace(/-./g, (x: string) => x[1].toUpperCase());\n\n // Use the Injector to run the effect in the correct context\n if (this[signalName] && typeof this[signalName] === 'function') {\n runInInjectionContext(this.injector, () => {\n effect(() => {\n // Read the signal value\n const value = this[signalName]();\n if (wcElement) {\n // Write the value to the Web Component's property\n wcElement[inputName] = value;\n }\n });\n });\n }\n }\n \n \n const outputsToSync = [\n 'ui5Click',\n ];\n \n // Synchronize outputs (events)\n for (const outputName of outputsToSync) {\n // Map Angular output name to UI5 web component event name\n const eventName = outputName.replace('ui5', '').replace(/([A-Z])/g, '-$1').toLowerCase().substring(1);\n // Ensure the output property exists and has an emit function before adding listener\n if (this[outputName] && typeof this[outputName].emit === 'function' && wcElement.addEventListener) {\n // Cast the listener to the correct type to satisfy TypeScript\n wcElement.addEventListener(eventName, (e) => {\n\n this[outputName].emit(e as CustomEvent<any>);\n });\n }\n }\n \n\n }\n}\n\n// Re-export types for convenience\nexport { AvatarAccessibilityAttributes } from '@ui5/webcomponents/dist/Avatar.js';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}