@yuuvis/client-framework 2.0.0-beta.0 → 2.0.0-beta.10

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 (389) hide show
  1. package/actions/lib/actions/delete-action/delete/delete.component.d.ts +3 -3
  2. package/actions/lib/actions/delete-action/delete-action.d.ts +1 -1
  3. package/actions/lib/actions.service.d.ts +7 -3
  4. package/actions/lib/components/contextmenu/contextmenu.component.d.ts +3 -1
  5. package/autocomplete/README.md +3 -0
  6. package/autocomplete/index.d.ts +3 -0
  7. package/autocomplete/lib/autocomplete.component.d.ts +72 -0
  8. package/autocomplete/lib/autocomplete.interface.d.ts +4 -0
  9. package/autocomplete/lib/autocomplete.module.d.ts +7 -0
  10. package/common/index.d.ts +4 -4
  11. package/common/lib/common.module.d.ts +19 -0
  12. package/common/lib/common.utils.d.ts +2 -0
  13. package/common/lib/components/confirm/confirm.component.d.ts +7 -0
  14. package/common/lib/components/confirm/confirm.interface.d.ts +7 -0
  15. package/common/lib/components/confirm/confirm.service.d.ts +9 -0
  16. package/common/lib/components/dialog/dialog.component.d.ts +6 -0
  17. package/common/lib/components/dialog/dialog.options.d.ts +7 -0
  18. package/common/lib/components/index.d.ts +5 -0
  19. package/common/lib/directives/autofocus-child.directive.d.ts +13 -0
  20. package/common/lib/directives/autofocus-delayed.directive.d.ts +18 -0
  21. package/common/lib/directives/drag-scroll.directive.d.ts +20 -0
  22. package/common/lib/directives/index.d.ts +8 -4
  23. package/common/lib/directives/noop-value-accessor.directive.d.ts +2 -2
  24. package/common/lib/mat-form-field.abstract.d.ts +41 -0
  25. package/common/lib/services/index.d.ts +1 -1
  26. package/common/lib/services/layout-settings/layout-settings.service.d.ts +18 -0
  27. package/datepicker/README.md +3 -0
  28. package/datepicker/index.d.ts +5 -0
  29. package/datepicker/lib/calendar/calendar.component.d.ts +72 -0
  30. package/datepicker/lib/date-input/date-input-element/date-input-element.component.d.ts +43 -0
  31. package/datepicker/lib/date-input/date-input-hour-element/date-input-hour-element.component.d.ts +11 -0
  32. package/datepicker/lib/date-input/date-input.component.d.ts +61 -0
  33. package/datepicker/lib/datepicker-calendar/datepicker-calendar-trigger.component.d.ts +7 -0
  34. package/datepicker/lib/datepicker-calendar/datepicker-calendar.component.d.ts +12 -0
  35. package/datepicker/lib/datepicker.component.d.ts +80 -0
  36. package/datepicker/lib/datepicker.interface.d.ts +34 -0
  37. package/datepicker/lib/datepicker.module.d.ts +9 -0
  38. package/datepicker/lib/datepicker.service.d.ts +46 -0
  39. package/datepicker/lib/datepicker.utils.d.ts +23 -0
  40. package/datepicker/lib/time-input/time-input.component.d.ts +36 -0
  41. package/datepicker/lib/time-input/time-input.interface.d.ts +6 -0
  42. package/fesm2022/yuuvis-client-framework-actions.mjs +147 -105
  43. package/fesm2022/yuuvis-client-framework-actions.mjs.map +1 -1
  44. package/fesm2022/yuuvis-client-framework-app-bar.mjs +7 -8
  45. package/fesm2022/yuuvis-client-framework-app-bar.mjs.map +1 -1
  46. package/fesm2022/yuuvis-client-framework-autocomplete.mjs +210 -0
  47. package/fesm2022/yuuvis-client-framework-autocomplete.mjs.map +1 -0
  48. package/fesm2022/yuuvis-client-framework-clipboard.mjs +9 -9
  49. package/fesm2022/yuuvis-client-framework-clipboard.mjs.map +1 -1
  50. package/fesm2022/yuuvis-client-framework-common.mjs +853 -780
  51. package/fesm2022/yuuvis-client-framework-common.mjs.map +1 -1
  52. package/fesm2022/yuuvis-client-framework-datepicker.mjs +1688 -0
  53. package/fesm2022/yuuvis-client-framework-datepicker.mjs.map +1 -0
  54. package/fesm2022/yuuvis-client-framework-forms.mjs +945 -1157
  55. package/fesm2022/yuuvis-client-framework-forms.mjs.map +1 -1
  56. package/fesm2022/yuuvis-client-framework-icons.mjs +85 -12
  57. package/fesm2022/yuuvis-client-framework-icons.mjs.map +1 -1
  58. package/fesm2022/yuuvis-client-framework-list.mjs +81 -45
  59. package/fesm2022/yuuvis-client-framework-list.mjs.map +1 -1
  60. package/fesm2022/yuuvis-client-framework-master-details.mjs +112 -0
  61. package/fesm2022/yuuvis-client-framework-master-details.mjs.map +1 -0
  62. package/fesm2022/yuuvis-client-framework-metadata-form-defaults.mjs +60 -0
  63. package/fesm2022/yuuvis-client-framework-metadata-form-defaults.mjs.map +1 -0
  64. package/fesm2022/yuuvis-client-framework-metadata-form.mjs +125 -100
  65. package/fesm2022/yuuvis-client-framework-metadata-form.mjs.map +1 -1
  66. package/fesm2022/yuuvis-client-framework-object-details.mjs +49 -59
  67. package/fesm2022/yuuvis-client-framework-object-details.mjs.map +1 -1
  68. package/fesm2022/yuuvis-client-framework-object-flavor.mjs +188 -77
  69. package/fesm2022/yuuvis-client-framework-object-flavor.mjs.map +1 -1
  70. package/fesm2022/yuuvis-client-framework-object-form.mjs +99 -184
  71. package/fesm2022/yuuvis-client-framework-object-form.mjs.map +1 -1
  72. package/fesm2022/yuuvis-client-framework-object-preview.mjs +12 -12
  73. package/fesm2022/yuuvis-client-framework-object-preview.mjs.map +1 -1
  74. package/fesm2022/yuuvis-client-framework-object-summary.mjs +46 -42
  75. package/fesm2022/yuuvis-client-framework-object-summary.mjs.map +1 -1
  76. package/fesm2022/yuuvis-client-framework-overflow-menu.mjs +126 -0
  77. package/fesm2022/yuuvis-client-framework-overflow-menu.mjs.map +1 -0
  78. package/fesm2022/yuuvis-client-framework-pagination.mjs +7 -9
  79. package/fesm2022/yuuvis-client-framework-pagination.mjs.map +1 -1
  80. package/fesm2022/yuuvis-client-framework-panel.mjs +8 -7
  81. package/fesm2022/yuuvis-client-framework-panel.mjs.map +1 -1
  82. package/fesm2022/yuuvis-client-framework-popout.mjs +212 -0
  83. package/fesm2022/yuuvis-client-framework-popout.mjs.map +1 -0
  84. package/fesm2022/yuuvis-client-framework-renderer.mjs +99 -72
  85. package/fesm2022/yuuvis-client-framework-renderer.mjs.map +1 -1
  86. package/fesm2022/yuuvis-client-framework-sequence-list.mjs +29 -112
  87. package/fesm2022/yuuvis-client-framework-sequence-list.mjs.map +1 -1
  88. package/fesm2022/yuuvis-client-framework-simple-search.mjs +40 -21
  89. package/fesm2022/yuuvis-client-framework-simple-search.mjs.map +1 -1
  90. package/fesm2022/yuuvis-client-framework-split-view.mjs +188 -0
  91. package/fesm2022/yuuvis-client-framework-split-view.mjs.map +1 -0
  92. package/fesm2022/yuuvis-client-framework-tile-list.mjs +100 -93
  93. package/fesm2022/yuuvis-client-framework-tile-list.mjs.map +1 -1
  94. package/fesm2022/yuuvis-client-framework-tree.mjs +15 -15
  95. package/fesm2022/yuuvis-client-framework-tree.mjs.map +1 -1
  96. package/fesm2022/yuuvis-client-framework-upload-progress.mjs +16 -21
  97. package/fesm2022/yuuvis-client-framework-upload-progress.mjs.map +1 -1
  98. package/fesm2022/yuuvis-client-framework.mjs +4 -4
  99. package/fesm2022/yuuvis-client-framework.mjs.map +1 -1
  100. package/forms/index.d.ts +7 -1
  101. package/forms/lib/elements/catalog/catalog.component.d.ts +17 -56
  102. package/forms/lib/elements/data-grid/edit-table-data/edit-data.component.d.ts +5 -4
  103. package/forms/lib/elements/datetime/datetime.component.d.ts +19 -10
  104. package/forms/lib/elements/datetime-range/datetime-range.component.d.ts +12 -27
  105. package/forms/lib/elements/index.d.ts +0 -1
  106. package/forms/lib/elements/number/number.component.d.ts +21 -30
  107. package/forms/lib/elements/number-range/number-range.component.d.ts +12 -7
  108. package/forms/lib/elements/organization/organization.component.d.ts +23 -51
  109. package/forms/lib/elements/range-select-date/range-select-date.component.d.ts +12 -7
  110. package/forms/lib/elements/range-select-filesize/range-select-filesize.component.d.ts +12 -7
  111. package/forms/lib/elements/string/string.component.d.ts +15 -20
  112. package/forms/lib/forms.module.d.ts +8 -11
  113. package/icons/index.d.ts +1 -0
  114. package/icons/lib/icon.component.d.ts +20 -0
  115. package/lib/assets/i18n/de.json +7 -23
  116. package/lib/assets/i18n/en.json +10 -26
  117. package/list/index.d.ts +1 -0
  118. package/list/lib/list-item.directive.d.ts +5 -4
  119. package/list/lib/list.component.d.ts +6 -3
  120. package/list/lib/list.module.d.ts +8 -0
  121. package/master-details/README.md +3 -0
  122. package/master-details/index.d.ts +2 -0
  123. package/master-details/lib/master-details.component.d.ts +58 -0
  124. package/master-details/lib/master-details.interface.d.ts +7 -0
  125. package/master-details/lib/master-details.module.d.ts +7 -0
  126. package/metadata-form/index.d.ts +4 -1
  127. package/metadata-form/lib/metadata-form-field/metadata-form-field.component.d.ts +4 -17
  128. package/metadata-form/lib/metadata-form-field/metadata-form-field.interface.d.ts +11 -0
  129. package/metadata-form/lib/object-metadata-element-error.directive.d.ts +13 -0
  130. package/metadata-form/lib/object-metadata-element-label.directive.d.ts +10 -0
  131. package/metadata-form/lib/object-metadata-element-template.directive.d.ts +3 -3
  132. package/metadata-form-defaults/README.md +3 -0
  133. package/metadata-form-defaults/index.d.ts +2 -0
  134. package/metadata-form-defaults/lib/metadata-form-defaults.module.d.ts +7 -0
  135. package/object-details/lib/object-audit/object-audit.component.d.ts +3 -9
  136. package/object-details/lib/object-details.component.d.ts +0 -2
  137. package/object-details/lib/object-metadata/object-metadata.component.d.ts +4 -3
  138. package/object-details/lib/retention-badge/retention-badge.component.d.ts +0 -3
  139. package/object-flavor/index.d.ts +1 -0
  140. package/object-flavor/lib/abstract-apply-create-flavor/abstract-apply-create-flavor.component.d.ts +1 -2
  141. package/object-flavor/lib/abstract-apply-object-flavor/abstract-apply-object-flavor.component.d.ts +3 -2
  142. package/object-flavor/lib/default-apply-flavor/default-apply-flavor.component.d.ts +19 -0
  143. package/object-flavor/lib/flavor-chip/flavor-chip.component.d.ts +1 -1
  144. package/object-flavor/lib/object-flavor/object-flavor.component.d.ts +3 -6
  145. package/object-flavor/lib/object-flavor-picker/object-flavor-picker.component.d.ts +0 -1
  146. package/object-form/index.d.ts +1 -1
  147. package/object-form/lib/object-form-element/object-form-element.component.d.ts +2 -2
  148. package/object-form/lib/object-form-group/object-form-group.component.d.ts +1 -3
  149. package/object-form/lib/object-form.component.d.ts +2 -2
  150. package/object-form/lib/object-form.interface.d.ts +0 -44
  151. package/object-form/lib/object-form.module.d.ts +7 -0
  152. package/object-form/lib/object-form.service.d.ts +1 -2
  153. package/object-form/lib/object-form.utils.d.ts +1 -1
  154. package/object-summary/lib/object-summary/object-summary.component.d.ts +13 -15
  155. package/overflow-menu/README.md +3 -0
  156. package/overflow-menu/index.d.ts +3 -0
  157. package/overflow-menu/lib/overflow-menu.component.d.ts +31 -0
  158. package/overflow-menu/lib/overflow-menu.interface.d.ts +9 -0
  159. package/overflow-menu/lib/overflow-menu.module.d.ts +7 -0
  160. package/package.json +44 -70
  161. package/popout/README.md +3 -0
  162. package/popout/index.d.ts +3 -0
  163. package/popout/lib/popout.component.d.ts +58 -0
  164. package/popout/lib/popout.interface.d.ts +17 -0
  165. package/popout/lib/popout.module.d.ts +7 -0
  166. package/renderer/lib/property-renderer/abstract.renderer.d.ts +4 -4
  167. package/renderer/lib/property-renderer/icon.renderer.component.d.ts +2 -0
  168. package/renderer/lib/renderer.directive.d.ts +4 -3
  169. package/sequence-list/index.d.ts +0 -1
  170. package/sequence-list/lib/sequence-list.component.d.ts +0 -4
  171. package/simple-search/index.d.ts +0 -1
  172. package/simple-search/lib/simple-search/simple-search.component.d.ts +6 -10
  173. package/split-view/README.md +3 -0
  174. package/split-view/index.d.ts +4 -0
  175. package/split-view/lib/split-area.directive.d.ts +16 -0
  176. package/split-view/lib/split-view.component.d.ts +76 -0
  177. package/split-view/lib/split-view.interface.d.ts +10 -0
  178. package/split-view/lib/split-view.module.d.ts +8 -0
  179. package/styles/client-framework.scss +21 -67
  180. package/tile-list/lib/tile/tile.component.d.ts +1 -2
  181. package/tile-list/lib/tile-config/property-select/property-select.component.d.ts +0 -1
  182. package/tile-list/lib/tile-config/tile-config-trigger/tile-config-trigger.component.d.ts +1 -2
  183. package/tile-list/lib/tile-config/tile-config.component.d.ts +0 -3
  184. package/tile-list/lib/tile-list/tile-list.component.d.ts +5 -5
  185. package/upload-progress/lib/upload-progress/upload-progress-overlay/upload-progress-overlay.component.d.ts +0 -5
  186. package/upload-progress/lib/upload-progress/upload-progress.component.d.ts +0 -4
  187. package/common/lib/components/focus-indicator/focus-indicator.component.d.ts +0 -7
  188. package/common/lib/components/token-input/token-input.component.d.ts +0 -55
  189. package/common/lib/components/token-input/token-input.interface.d.ts +0 -8
  190. package/common/lib/services/error-messages/error-messages.service.d.ts +0 -7
  191. package/esm2022/actions/index.mjs +0 -7
  192. package/esm2022/actions/lib/actions/copy-action/copy-action.mjs +0 -31
  193. package/esm2022/actions/lib/actions/cut-action/cut-action.mjs +0 -30
  194. package/esm2022/actions/lib/actions/delete-action/delete/delete.component.mjs +0 -67
  195. package/esm2022/actions/lib/actions/delete-action/delete-action.mjs +0 -38
  196. package/esm2022/actions/lib/actions/download-action/download-action.mjs +0 -33
  197. package/esm2022/actions/lib/actions.icon.mjs +0 -8
  198. package/esm2022/actions/lib/actions.interface.mjs +0 -19
  199. package/esm2022/actions/lib/actions.module.mjs +0 -16
  200. package/esm2022/actions/lib/actions.service.mjs +0 -89
  201. package/esm2022/actions/lib/components/contextmenu/contextmenu.component.mjs +0 -27
  202. package/esm2022/actions/yuuvis-client-framework-actions.mjs +0 -5
  203. package/esm2022/app-bar/index.mjs +0 -2
  204. package/esm2022/app-bar/lib/app-bar.component.mjs +0 -89
  205. package/esm2022/app-bar/yuuvis-client-framework-app-bar.mjs +0 -5
  206. package/esm2022/clipboard/index.mjs +0 -2
  207. package/esm2022/clipboard/lib/clipboard.component.mjs +0 -48
  208. package/esm2022/clipboard/yuuvis-client-framework-clipboard.mjs +0 -5
  209. package/esm2022/common/index.mjs +0 -7
  210. package/esm2022/common/lib/components/focus-indicator/focus-indicator.component.mjs +0 -41
  211. package/esm2022/common/lib/components/token-input/token-input.component.mjs +0 -324
  212. package/esm2022/common/lib/components/token-input/token-input.interface.mjs +0 -2
  213. package/esm2022/common/lib/directives/busy-overlay.directive.mjs +0 -88
  214. package/esm2022/common/lib/directives/click-double.directive.mjs +0 -61
  215. package/esm2022/common/lib/directives/container-size.directive.mjs +0 -56
  216. package/esm2022/common/lib/directives/drag-select.directive.mjs +0 -114
  217. package/esm2022/common/lib/directives/file-drop-zone/file-drop-zone.directive.mjs +0 -153
  218. package/esm2022/common/lib/directives/file-drop-zone/file-drop-zone.interface.mjs +0 -2
  219. package/esm2022/common/lib/directives/focus-within.directive.mjs +0 -81
  220. package/esm2022/common/lib/directives/index.mjs +0 -9
  221. package/esm2022/common/lib/directives/light-dismiss.directive.mjs +0 -44
  222. package/esm2022/common/lib/directives/longpress.directive.mjs +0 -36
  223. package/esm2022/common/lib/directives/noop-value-accessor.directive.mjs +0 -42
  224. package/esm2022/common/lib/services/error-messages/error-messages.service.mjs +0 -68
  225. package/esm2022/common/lib/services/index.mjs +0 -2
  226. package/esm2022/common/yuuvis-client-framework-common.mjs +0 -5
  227. package/esm2022/forms/index.mjs +0 -24
  228. package/esm2022/forms/lib/elements/catalog/catalog.component.mjs +0 -118
  229. package/esm2022/forms/lib/elements/data-grid/data-grid/data-grid.component.mjs +0 -172
  230. package/esm2022/forms/lib/elements/data-grid/edit-table-data/edit-data.component.mjs +0 -95
  231. package/esm2022/forms/lib/elements/data-grid/model/data-grid.interface.mjs +0 -9
  232. package/esm2022/forms/lib/elements/datetime/datetime.component.mjs +0 -82
  233. package/esm2022/forms/lib/elements/datetime-range/datetime-range.component.mjs +0 -166
  234. package/esm2022/forms/lib/elements/index.mjs +0 -11
  235. package/esm2022/forms/lib/elements/number/number.component.mjs +0 -195
  236. package/esm2022/forms/lib/elements/number-range/number-range.component.mjs +0 -176
  237. package/esm2022/forms/lib/elements/organization/organization.component.mjs +0 -286
  238. package/esm2022/forms/lib/elements/range-select-date/date-range-picker/date-range-picker.component.mjs +0 -38
  239. package/esm2022/forms/lib/elements/range-select-date/range-select-date.component.mjs +0 -181
  240. package/esm2022/forms/lib/elements/range-select-date/range-select-date.interface.mjs +0 -2
  241. package/esm2022/forms/lib/elements/range-select-filesize/range-select-filesize.component.mjs +0 -98
  242. package/esm2022/forms/lib/elements/range-select-filesize/range-select-filesize.interface.mjs +0 -2
  243. package/esm2022/forms/lib/elements/string/string.component.mjs +0 -261
  244. package/esm2022/forms/lib/form-input/form-input.component.mjs +0 -88
  245. package/esm2022/forms/lib/forms.module.mjs +0 -58
  246. package/esm2022/forms/yuuvis-client-framework-forms.mjs +0 -5
  247. package/esm2022/icons/index.mjs +0 -4
  248. package/esm2022/icons/lib/icon.service.mjs +0 -59
  249. package/esm2022/icons/lib/icons.mjs +0 -32
  250. package/esm2022/icons/lib/object-type-icon/object-type-icon.component.mjs +0 -29
  251. package/esm2022/icons/yuuvis-client-framework-icons.mjs +0 -5
  252. package/esm2022/index.mjs +0 -2
  253. package/esm2022/lib/yuuvis-client-framework.module.mjs +0 -15
  254. package/esm2022/list/index.mjs +0 -3
  255. package/esm2022/list/lib/list-item.directive.mjs +0 -72
  256. package/esm2022/list/lib/list.component.mjs +0 -135
  257. package/esm2022/list/yuuvis-client-framework-list.mjs +0 -5
  258. package/esm2022/metadata-form/index.mjs +0 -4
  259. package/esm2022/metadata-form/lib/metadata-default-templates/metadata-default-templates.component.mjs +0 -32
  260. package/esm2022/metadata-form/lib/metadata-form-element-registry.service.mjs +0 -99
  261. package/esm2022/metadata-form/lib/metadata-form-field/metadata-form-field.component.mjs +0 -83
  262. package/esm2022/metadata-form/lib/object-metadata-element-template.directive.mjs +0 -52
  263. package/esm2022/metadata-form/yuuvis-client-framework-metadata-form.mjs +0 -5
  264. package/esm2022/object-details/index.mjs +0 -8
  265. package/esm2022/object-details/lib/object-audit/object-audit.component.mjs +0 -195
  266. package/esm2022/object-details/lib/object-details-shell/object-details-shell.component.mjs +0 -127
  267. package/esm2022/object-details/lib/object-details.component.mjs +0 -61
  268. package/esm2022/object-details/lib/object-metadata/form-section-group.pipe.mjs +0 -17
  269. package/esm2022/object-details/lib/object-metadata/object-metadata.component.mjs +0 -202
  270. package/esm2022/object-details/lib/object-metadata/object-metadata.interface.mjs +0 -2
  271. package/esm2022/object-details/lib/retention-badge/retention-badge.component.mjs +0 -27
  272. package/esm2022/object-details/yuuvis-client-framework-object-details.mjs +0 -5
  273. package/esm2022/object-flavor/index.mjs +0 -6
  274. package/esm2022/object-flavor/lib/abstract-apply-create-flavor/abstract-apply-create-flavor.component.mjs +0 -25
  275. package/esm2022/object-flavor/lib/abstract-apply-object-flavor/abstract-apply-object-flavor.component.mjs +0 -21
  276. package/esm2022/object-flavor/lib/flavor-chip/flavor-chip.component.mjs +0 -35
  277. package/esm2022/object-flavor/lib/object-flavor/object-flavor.component.mjs +0 -93
  278. package/esm2022/object-flavor/lib/object-flavor-picker/object-flavor-picker.component.mjs +0 -43
  279. package/esm2022/object-flavor/yuuvis-client-framework-object-flavor.mjs +0 -5
  280. package/esm2022/object-form/index.mjs +0 -5
  281. package/esm2022/object-form/lib/form-scripting.api.interface.mjs +0 -2
  282. package/esm2022/object-form/lib/form-scripting.service.mjs +0 -160
  283. package/esm2022/object-form/lib/object-form-element/object-form-element.component.mjs +0 -87
  284. package/esm2022/object-form/lib/object-form-extension.interface.mjs +0 -36
  285. package/esm2022/object-form/lib/object-form-group/object-form-group.component.mjs +0 -85
  286. package/esm2022/object-form/lib/object-form-script/form-scripting-element-extension/form-scripting-element-extension.component.mjs +0 -23
  287. package/esm2022/object-form/lib/object-form-script/object-form-script.service.mjs +0 -115
  288. package/esm2022/object-form/lib/object-form-script/object-form-scripting-scope.mjs +0 -251
  289. package/esm2022/object-form/lib/object-form-translate.service.mjs +0 -73
  290. package/esm2022/object-form/lib/object-form.component.mjs +0 -628
  291. package/esm2022/object-form/lib/object-form.interface.mjs +0 -9
  292. package/esm2022/object-form/lib/object-form.model.mjs +0 -20
  293. package/esm2022/object-form/lib/object-form.service.mjs +0 -130
  294. package/esm2022/object-form/lib/object-form.utils.mjs +0 -55
  295. package/esm2022/object-form/lib/object-form.validation.mjs +0 -48
  296. package/esm2022/object-form/yuuvis-client-framework-object-form.mjs +0 -5
  297. package/esm2022/object-preview/index.mjs +0 -3
  298. package/esm2022/object-preview/lib/components/index.mjs +0 -3
  299. package/esm2022/object-preview/lib/components/object-email-preview/object-email-preview.component.mjs +0 -45
  300. package/esm2022/object-preview/lib/components/object-preview/object-preview.component.mjs +0 -78
  301. package/esm2022/object-preview/lib/services/object-preview.service.mjs +0 -119
  302. package/esm2022/object-preview/yuuvis-client-framework-object-preview.mjs +0 -5
  303. package/esm2022/object-summary/index.mjs +0 -5
  304. package/esm2022/object-summary/lib/multi-object-summary/multi-object-summary.component.mjs +0 -33
  305. package/esm2022/object-summary/lib/object-summary/object-summary.component.mjs +0 -275
  306. package/esm2022/object-summary/lib/object-summary-data/object-summary-data.component.mjs +0 -80
  307. package/esm2022/object-summary/lib/object-summary.module.mjs +0 -15
  308. package/esm2022/object-summary/yuuvis-client-framework-object-summary.mjs +0 -5
  309. package/esm2022/pagination/index.mjs +0 -3
  310. package/esm2022/pagination/lib/pagination.component.mjs +0 -46
  311. package/esm2022/pagination/lib/pagination.interface.mjs +0 -2
  312. package/esm2022/pagination/yuuvis-client-framework-pagination.mjs +0 -5
  313. package/esm2022/panel/index.mjs +0 -2
  314. package/esm2022/panel/lib/panel.component.mjs +0 -20
  315. package/esm2022/panel/yuuvis-client-framework-panel.mjs +0 -5
  316. package/esm2022/renderer/index.mjs +0 -11
  317. package/esm2022/renderer/lib/property-renderer/abstract.renderer.mjs +0 -29
  318. package/esm2022/renderer/lib/property-renderer/datetime.renderer.mjs +0 -13
  319. package/esm2022/renderer/lib/property-renderer/decimal.renderer.component.mjs +0 -12
  320. package/esm2022/renderer/lib/property-renderer/filesize.renderer.component.mjs +0 -28
  321. package/esm2022/renderer/lib/property-renderer/icon.renderer.component.mjs +0 -23
  322. package/esm2022/renderer/lib/property-renderer/integer.renderer.component.mjs +0 -12
  323. package/esm2022/renderer/lib/property-renderer/organization.renderer.mjs +0 -19
  324. package/esm2022/renderer/lib/property-renderer/string.renderer.component.mjs +0 -12
  325. package/esm2022/renderer/lib/property-renderer/unknown.renderer.mjs +0 -12
  326. package/esm2022/renderer/lib/renderer.directive.mjs +0 -51
  327. package/esm2022/renderer/lib/services/renderer/renderer.interface.mjs +0 -2
  328. package/esm2022/renderer/lib/services/renderer/renderer.service.mjs +0 -84
  329. package/esm2022/renderer/yuuvis-client-framework-renderer.mjs +0 -5
  330. package/esm2022/sequence-list/index.mjs +0 -4
  331. package/esm2022/sequence-list/lib/due-date-picker/due-date-picker.component.mjs +0 -99
  332. package/esm2022/sequence-list/lib/sequence-list.component.mjs +0 -141
  333. package/esm2022/sequence-list/lib/sequence-list.interface.mjs +0 -2
  334. package/esm2022/sequence-list/yuuvis-client-framework-sequence-list.mjs +0 -5
  335. package/esm2022/simple-search/index.mjs +0 -3
  336. package/esm2022/simple-search/lib/simple-search/simple-search.component.mjs +0 -111
  337. package/esm2022/simple-search/lib/simple-search/simple-search.interface.mjs +0 -2
  338. package/esm2022/simple-search/yuuvis-client-framework-simple-search.mjs +0 -5
  339. package/esm2022/tile-list/index.mjs +0 -11
  340. package/esm2022/tile-list/lib/tile/tile.component.mjs +0 -53
  341. package/esm2022/tile-list/lib/tile-config/action-select/action-select.component.mjs +0 -25
  342. package/esm2022/tile-list/lib/tile-config/icon-select/icon-select.component.mjs +0 -33
  343. package/esm2022/tile-list/lib/tile-config/property-select/property-select.component.mjs +0 -91
  344. package/esm2022/tile-list/lib/tile-config/tile-config-tile/tile-config-tile.component.mjs +0 -66
  345. package/esm2022/tile-list/lib/tile-config/tile-config-trigger/tile-config-trigger.component.mjs +0 -46
  346. package/esm2022/tile-list/lib/tile-config/tile-config.component.mjs +0 -156
  347. package/esm2022/tile-list/lib/tile-extension/directive/tile-extension.directive.mjs +0 -37
  348. package/esm2022/tile-list/lib/tile-extension/extensions/email.extension.mjs +0 -42
  349. package/esm2022/tile-list/lib/tile-extension/tile-extension.service.mjs +0 -35
  350. package/esm2022/tile-list/lib/tile-list/tile-list.component.mjs +0 -510
  351. package/esm2022/tile-list/lib/tile-list/tile-list.interface.mjs +0 -2
  352. package/esm2022/tile-list/yuuvis-client-framework-tile-list.mjs +0 -5
  353. package/esm2022/token-search/index.mjs +0 -3
  354. package/esm2022/token-search/token-search.component.mjs +0 -78
  355. package/esm2022/token-search/token-search.interface.mjs +0 -2
  356. package/esm2022/token-search/yuuvis-client-framework-token-search.mjs +0 -5
  357. package/esm2022/tree/index.mjs +0 -3
  358. package/esm2022/tree/lib/tree-node/tree-node.component.mjs +0 -65
  359. package/esm2022/tree/lib/tree.component.mjs +0 -148
  360. package/esm2022/tree/lib/tree.interface.mjs +0 -2
  361. package/esm2022/tree/lib/tree.service.mjs +0 -95
  362. package/esm2022/tree/yuuvis-client-framework-tree.mjs +0 -5
  363. package/esm2022/upload-progress/index.mjs +0 -2
  364. package/esm2022/upload-progress/lib/upload-progress/upload-progress-overlay/upload-progress-overlay.component.mjs +0 -49
  365. package/esm2022/upload-progress/lib/upload-progress/upload-progress.component.mjs +0 -37
  366. package/esm2022/upload-progress/yuuvis-client-framework-upload-progress.mjs +0 -5
  367. package/esm2022/user-avatar/index.mjs +0 -3
  368. package/esm2022/user-avatar/lib/user-avatar.component.mjs +0 -69
  369. package/esm2022/user-avatar/lib/user-avatar.module.mjs +0 -24
  370. package/esm2022/user-avatar/yuuvis-client-framework-user-avatar.mjs +0 -5
  371. package/esm2022/yuuvis-client-framework.mjs +0 -5
  372. package/fesm2022/yuuvis-client-framework-token-search.mjs +0 -85
  373. package/fesm2022/yuuvis-client-framework-token-search.mjs.map +0 -1
  374. package/fesm2022/yuuvis-client-framework-user-avatar.mjs +0 -96
  375. package/fesm2022/yuuvis-client-framework-user-avatar.mjs.map +0 -1
  376. package/forms/lib/form-input/form-input.component.d.ts +0 -48
  377. package/object-form/lib/object-form-translate.service.d.ts +0 -15
  378. package/object-form/lib/object-form.model.d.ts +0 -18
  379. package/sequence-list/lib/due-date-picker/due-date-picker.component.d.ts +0 -28
  380. package/simple-search/lib/simple-search/simple-search.interface.d.ts +0 -4
  381. package/token-search/README.md +0 -3
  382. package/token-search/index.d.ts +0 -2
  383. package/token-search/token-search.component.d.ts +0 -22
  384. package/token-search/token-search.interface.d.ts +0 -4
  385. package/user-avatar/README.md +0 -3
  386. package/user-avatar/index.d.ts +0 -2
  387. package/user-avatar/lib/user-avatar.component.d.ts +0 -44
  388. package/user-avatar/lib/user-avatar.module.d.ts +0 -8
  389. /package/{metadata-form → metadata-form-defaults}/lib/metadata-default-templates/metadata-default-templates.component.d.ts +0 -0
@@ -110,10 +110,10 @@ class ObjectPreviewService {
110
110
  attachments: object.data[`${MAIL_APP_ID}attachments`]
111
111
  };
112
112
  }
113
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectPreviewService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
114
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectPreviewService, providedIn: 'root' }); }
113
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ObjectPreviewService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
114
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ObjectPreviewService, providedIn: 'root' }); }
115
115
  }
116
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectPreviewService, decorators: [{
116
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ObjectPreviewService, decorators: [{
117
117
  type: Injectable,
118
118
  args: [{
119
119
  providedIn: 'root'
@@ -151,8 +151,8 @@ class ObjectPreviewComponent {
151
151
  #formerContentstreamId;
152
152
  #dmsObjectEffect;
153
153
  #objectIdEffect;
154
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
155
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ObjectPreviewComponent, isStandalone: true, selector: "yuv-object-preview", inputs: { objectId: { classPropertyName: "objectId", publicName: "objectId", isSignal: true, isRequired: false, transformFunction: null }, dmsObjectInput: { classPropertyName: "dmsObjectInput", publicName: "dmsObject", isSignal: true, isRequired: false, transformFunction: null }, version: { classPropertyName: "version", publicName: "version", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
154
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ObjectPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
155
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.11", type: ObjectPreviewComponent, isStandalone: true, selector: "yuv-object-preview", inputs: { objectId: { classPropertyName: "objectId", publicName: "objectId", isSignal: true, isRequired: false, transformFunction: null }, dmsObjectInput: { classPropertyName: "dmsObjectInput", publicName: "dmsObject", isSignal: true, isRequired: false, transformFunction: null }, version: { classPropertyName: "version", publicName: "version", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
156
156
  @let viewerDetailsObj = viewerDetails();
157
157
  @if (viewerDetailsObj) {
158
158
  <yuv-media-viewer
@@ -168,9 +168,9 @@ class ObjectPreviewComponent {
168
168
  <div class="tiff-warning-text">{{ 'yuv.object-preview.tiff-warning' | translate }}</div>
169
169
  </div>
170
170
  }
171
- `, isInline: true, styles: [":host{height:100%;overflow:hidden;display:grid;grid-auto-columns:1fr;grid-auto-rows:1fr;grid-template-columns:1fr;grid-template-rows:1fr max-content;gap:0px 0px;grid-template-areas:\"viewer\" \"message\"}.viewer{grid-area:viewer}:is() pdf-paging-area{display:flex;align-items:center}:is() pdf-paging-area :is(.paging-right,.paging-left){display:flex;align-items:center}:is() pdf-zoom-toolbar div{display:flex;align-items:center}.tiff-warning{grid-area:message;text-align:center;padding:calc(var(--app-pane-padding) / 2) 0;&-text{margin:var(--app-pane-padding)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: YuvMediaViewerComponent, selector: "yuv-media-viewer", inputs: ["id", "type", "metadata", "src"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
171
+ `, isInline: true, styles: [":host{height:100%;overflow:hidden;display:grid;grid-auto-columns:1fr;grid-auto-rows:1fr;grid-template-columns:1fr;grid-template-rows:1fr max-content;gap:0px 0px;grid-template-areas:\"viewer\" \"message\"}.viewer{grid-area:viewer}:is() pdf-paging-area{display:flex;align-items:center}:is() pdf-paging-area .paging-right,:is() pdf-paging-area .paging-left{display:flex;align-items:center}:is() pdf-zoom-toolbar div{display:flex;align-items:center}.tiff-warning{grid-area:message;text-align:center;padding:var(--ymt-spacing-xs) 0;&-text{margin:var(--ymt-spacing-m)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: YuvMediaViewerComponent, selector: "yuv-media-viewer", inputs: ["id", "type", "metadata", "src"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
172
172
  }
173
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectPreviewComponent, decorators: [{
173
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ObjectPreviewComponent, decorators: [{
174
174
  type: Component,
175
175
  args: [{ selector: 'yuv-object-preview', standalone: true, imports: [CommonModule, YuvMediaViewerComponent, TranslateModule], template: `
176
176
  @let viewerDetailsObj = viewerDetails();
@@ -188,7 +188,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
188
188
  <div class="tiff-warning-text">{{ 'yuv.object-preview.tiff-warning' | translate }}</div>
189
189
  </div>
190
190
  }
191
- `, styles: [":host{height:100%;overflow:hidden;display:grid;grid-auto-columns:1fr;grid-auto-rows:1fr;grid-template-columns:1fr;grid-template-rows:1fr max-content;gap:0px 0px;grid-template-areas:\"viewer\" \"message\"}.viewer{grid-area:viewer}:is() pdf-paging-area{display:flex;align-items:center}:is() pdf-paging-area :is(.paging-right,.paging-left){display:flex;align-items:center}:is() pdf-zoom-toolbar div{display:flex;align-items:center}.tiff-warning{grid-area:message;text-align:center;padding:calc(var(--app-pane-padding) / 2) 0;&-text{margin:var(--app-pane-padding)}}\n"] }]
191
+ `, styles: [":host{height:100%;overflow:hidden;display:grid;grid-auto-columns:1fr;grid-auto-rows:1fr;grid-template-columns:1fr;grid-template-rows:1fr max-content;gap:0px 0px;grid-template-areas:\"viewer\" \"message\"}.viewer{grid-area:viewer}:is() pdf-paging-area{display:flex;align-items:center}:is() pdf-paging-area .paging-right,:is() pdf-paging-area .paging-left{display:flex;align-items:center}:is() pdf-zoom-toolbar div{display:flex;align-items:center}.tiff-warning{grid-area:message;text-align:center;padding:var(--ymt-spacing-xs) 0;&-text{margin:var(--ymt-spacing-m)}}\n"] }]
192
192
  }] });
193
193
 
194
194
  class ObjectEmailPreviewComponent {
@@ -214,15 +214,15 @@ class ObjectEmailPreviewComponent {
214
214
  }
215
215
  #objectPreviwService;
216
216
  #objectIdEffect;
217
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectEmailPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
218
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ObjectEmailPreviewComponent, isStandalone: true, selector: "yuv-object-email-preview", inputs: { objectId: { classPropertyName: "objectId", publicName: "objectId", isSignal: true, isRequired: false, transformFunction: null }, dmsObjectInput: { classPropertyName: "dmsObjectInput", publicName: "dmsObject", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
217
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ObjectEmailPreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
218
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.11", type: ObjectEmailPreviewComponent, isStandalone: true, selector: "yuv-object-email-preview", inputs: { objectId: { classPropertyName: "objectId", publicName: "objectId", isSignal: true, isRequired: false, transformFunction: null }, dmsObjectInput: { classPropertyName: "dmsObjectInput", publicName: "dmsObject", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
219
219
  @let viewerDetailsObj = viewerDetails();
220
220
  @if (viewerDetailsObj) {
221
221
  <yuv-mail [id]="viewerDetailsObj.id" [src]="viewerDetailsObj.mediaViewerSrc" [metadata]="viewerDetailsObj.metadata"></yuv-mail>
222
222
  }
223
- `, isInline: true, styles: [":host{height:100%}\n"], dependencies: [{ kind: "component", type: MailComponent, selector: "yuv-mail" }] }); }
223
+ `, isInline: true, styles: [":host{height:100%}\n"], dependencies: [{ kind: "component", type: MailComponent, selector: "yuv-mail", inputs: ["selectedAttachment"], outputs: ["selectedAttachmentChange"] }] }); }
224
224
  }
225
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectEmailPreviewComponent, decorators: [{
225
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ObjectEmailPreviewComponent, decorators: [{
226
226
  type: Component,
227
227
  args: [{ selector: 'yuv-object-email-preview', standalone: true, imports: [MailComponent], template: `
228
228
  @let viewerDetailsObj = viewerDetails();
@@ -1 +1 @@
1
- {"version":3,"file":"yuuvis-client-framework-object-preview.mjs","sources":["../../../../../libs/yuuvis/client-framework/object-preview/src/lib/services/object-preview.service.ts","../../../../../libs/yuuvis/client-framework/object-preview/src/lib/components/object-preview/object-preview.component.ts","../../../../../libs/yuuvis/client-framework/object-preview/src/lib/components/object-email-preview/object-email-preview.component.ts","../../../../../libs/yuuvis/client-framework/object-preview/src/yuuvis-client-framework-object-preview.ts"],"sourcesContent":["import { inject, Injectable, signal } from '@angular/core';\nimport { ContentStreamField, DmsObject, DmsService, UserService } from '@yuuvis/client-core';\nimport { defaultViewers, EmailMetadata, MediaViewerService } from '@yuuvis/media-viewer';\nimport { tap } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ObjectPreviewService {\n readonly #dms = inject(DmsService);\n readonly #userService = inject(UserService);\n readonly #mediaViewerService = inject(MediaViewerService);\n\n #dmsObject = signal<DmsObject | undefined>(undefined);\n\n dmsObject = this.#dmsObject.asReadonly();\n\n setDmsObject(object: DmsObject) {\n this.#dmsObject.set(object);\n }\n\n getDmsObject(id: string) {\n return this.#dms.getDmsObject(id).pipe(tap((dmsObject) => this.#dmsObject.set(dmsObject)));\n }\n\n getMediaViewerSrc(id: string, mimeType: string | undefined, version?: number) {\n if (mimeType) {\n if (mimeType === 'image/tiff') {\n return version\n ? `/api/dms/objects/${id}/versions/${version}/contents/renditions/slide?timeout=50000`\n : `/api/dms/objects/${id}/contents/renditions/slide`;\n }\n return version ? `/api/dms/objects/${id}/versions/${version}/contents/file` : `/api/dms/objects/${id}/contents/file`;\n }\n return '';\n }\n\n #isEmailViewer(object: DmsObject) {\n return defaultViewers.filter((viewer) => viewer.type === 'EMAIL')[0].mimeType.includes(object.data[ContentStreamField.MIME_TYPE] as string);\n }\n\n getViewerDetails(object: DmsObject, version: number | undefined) {\n if (object) {\n const type = object?.content && this.#mediaViewerService.getComponentType(object.content.mimeType);\n\n // console.log('type', type);\n\n return this.#isEmailViewer(object)\n ? this.getEmailViewerDetails(object)\n : {\n mediaViewerSrc: this.getMediaViewerSrc(object.id, object.content?.mimeType, version),\n id: object.id,\n mimeType: object.content?.mimeType,\n metadata: {\n type,\n name: object.data[ContentStreamField.FILENAME] as string,\n dmsObject: object?.data,\n id: object?.id,\n editable: true,\n user: signal(this.#userService.getCurrentUser()),\n theme: 'light',\n ...(object.content?.mimeType === 'application/pdf'\n ? {\n options: {\n showToolbar: true,\n showSidebarButton: true,\n showFindButton: true,\n showPagingButtons: true,\n showDrawEditor: false,\n showStampEditor: false,\n showTextEditor: false,\n showZoomButtons: true,\n showPresentationModeButton: false,\n showOpenFileButton: false,\n showPrintButton: false,\n showDownloadButton: false,\n showSecondaryToolbarButton: true,\n showRotateCwButton: false,\n showRotateCcwButton: false,\n showHandToolButton: false,\n showScrollingButtons: false,\n showSpreadButton: false,\n showPropertiesButton: false,\n showHighlightEditor: false\n }\n }\n : {})\n }\n };\n }\n return undefined;\n }\n\n getEmailViewerDetails(object: DmsObject, MAIL_APP_ID = 'appSystemmail:') {\n return {\n mediaViewerSrc: this.getMediaViewerSrc(object.id, object.content?.mimeType),\n id: object.id,\n mimeType: object.content?.mimeType,\n metadata: this.getEmailMetadata(object, MAIL_APP_ID)\n };\n }\n\n getEmailMetadata(object: DmsObject, MAIL_APP_ID = 'appSystemmail:'): EmailMetadata {\n return {\n type: 'EMAIL',\n header: {\n subject: object.data[`${MAIL_APP_ID}subject`] as string,\n sent: new Date(object.data[`${MAIL_APP_ID}sent`] as string),\n from: object.data[`${MAIL_APP_ID}from`] as string,\n to: object.data[`${MAIL_APP_ID}to`] as string[],\n cc: object.data[`${MAIL_APP_ID}cc`] as string[],\n bcc: object.data[`${MAIL_APP_ID}bcc`] as string[]\n },\n theme: 'light',\n attachments: object.data[`${MAIL_APP_ID}attachments`] as string[]\n };\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { Component, computed, effect, inject, input, signal, untracked } from '@angular/core';\nimport { DmsObject, TranslateModule } from '@yuuvis/client-core';\nimport { YuvMediaViewerComponent } from '@yuuvis/media-viewer';\nimport { ObjectPreviewService } from '../../services/object-preview.service';\n\n@Component({\n selector: 'yuv-object-preview',\n standalone: true,\n imports: [CommonModule, YuvMediaViewerComponent, TranslateModule],\n template: `\n @let viewerDetailsObj = viewerDetails();\n @if (viewerDetailsObj) {\n <yuv-media-viewer\n class=\"viewer\"\n [id]=\"viewerDetailsObj.id\"\n [type]=\"viewerDetailsObj.mimeType\"\n [src]=\"viewerDetailsObj.mediaViewerSrc\"\n [metadata]=\"viewerDetailsObj.metadata\"\n ></yuv-media-viewer>\n }\n @if (isTiff()) {\n <div class=\"tiff-warning\">\n <div class=\"tiff-warning-text\">{{ 'yuv.object-preview.tiff-warning' | translate }}</div>\n </div>\n }\n `,\n styles: [\n `\n :host {\n height: 100%;\n overflow: hidden;\n display: grid;\n grid-auto-columns: 1fr;\n grid-auto-rows: 1fr;\n grid-template-columns: 1fr;\n grid-template-rows: 1fr max-content;\n gap: 0px 0px;\n grid-template-areas:\n 'viewer'\n 'message';\n }\n .viewer {\n grid-area: viewer;\n ::ng-deep {\n pdf-paging-area {\n display: flex;\n align-items: center;\n\n .paging-right,\n .paging-left {\n display: flex;\n align-items: center;\n }\n }\n pdf-zoom-toolbar {\n div {\n display: flex;\n align-items: center;\n }\n }\n }\n }\n .tiff-warning {\n grid-area: message;\n text-align: center;\n padding: calc(var(--app-pane-padding) / 2) 0;\n\n &-text {\n margin: var(--app-pane-padding);\n }\n }\n `\n ]\n})\nexport class ObjectPreviewComponent {\n #objectPreviewService = inject(ObjectPreviewService);\n\n #formerContentstreamId?: string;\n objectId = input<string | undefined>(undefined);\n dmsObjectInput = input<DmsObject | undefined>(undefined, { alias: 'dmsObject' });\n version = input<number | undefined>(undefined);\n dmsObject = this.#objectPreviewService.dmsObject;\n #dmsObjectEffect = effect(() => {\n const version = this.version();\n let object = this.dmsObject();\n object = Array.isArray(object) ? object[0] : object;\n if (object && this.#formerContentstreamId !== object.content?.contentStreamId) {\n untracked(() => this.viewerDetails.set(object && this.#objectPreviewService.getViewerDetails(object, version)));\n this.#formerContentstreamId = object.content?.contentStreamId;\n }\n });\n\n viewerDetails = signal<any | undefined>(undefined);\n\n isTiff = computed(() => this.dmsObject()?.content?.mimeType === 'image/tiff');\n\n #objectIdEffect = effect(() => {\n const objectId = this.objectId();\n const dmsObject = this.dmsObjectInput();\n untracked(() => {\n dmsObject && this.#objectPreviewService.setDmsObject(dmsObject);\n objectId && !dmsObject && this.#objectPreviewService.getDmsObject(objectId).subscribe();\n });\n });\n}\n","import { Component, computed, effect, inject, input, untracked } from '@angular/core';\nimport { DmsObject } from '@yuuvis/client-core';\nimport { MailComponent } from '@yuuvis/media-viewer';\nimport { ObjectPreviewService } from '../../services/object-preview.service';\n\n@Component({\n selector: 'yuv-object-email-preview',\n standalone: true,\n imports: [MailComponent],\n template: `\n @let viewerDetailsObj = viewerDetails();\n @if (viewerDetailsObj) {\n <yuv-mail [id]=\"viewerDetailsObj.id\" [src]=\"viewerDetailsObj.mediaViewerSrc\" [metadata]=\"viewerDetailsObj.metadata\"></yuv-mail>\n }\n `,\n styles: `\n :host {\n height: 100%;\n }\n `\n})\nexport class ObjectEmailPreviewComponent {\n #objectPreviwService = inject(ObjectPreviewService);\n\n objectId = input<string | undefined>(undefined);\n dmsObjectInput = input<DmsObject | undefined>(undefined, { alias: 'dmsObject' });\n dmsObject = this.#objectPreviwService.dmsObject;\n\n #objectIdEffect = effect(() => {\n const objectId = this.objectId();\n const dmsObject = this.dmsObjectInput();\n\n untracked(() => {\n dmsObject && this.#objectPreviwService.setDmsObject(dmsObject);\n if (objectId && !dmsObject) {\n this.#objectPreviwService.getDmsObject(objectId).subscribe();\n }\n });\n });\n\n viewerDetails = computed(() => {\n const object = this.dmsObject();\n return object ? this.#objectPreviwService.getEmailViewerDetails(object) : undefined;\n });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"yuuvis-client-framework-object-preview.mjs","sources":["../../../../../libs/yuuvis/client-framework/object-preview/src/lib/services/object-preview.service.ts","../../../../../libs/yuuvis/client-framework/object-preview/src/lib/components/object-preview/object-preview.component.ts","../../../../../libs/yuuvis/client-framework/object-preview/src/lib/components/object-email-preview/object-email-preview.component.ts","../../../../../libs/yuuvis/client-framework/object-preview/src/yuuvis-client-framework-object-preview.ts"],"sourcesContent":["import { inject, Injectable, signal } from '@angular/core';\nimport { ContentStreamField, DmsObject, DmsService, UserService } from '@yuuvis/client-core';\nimport { defaultViewers, EmailMetadata, MediaViewerService } from '@yuuvis/media-viewer';\nimport { tap } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ObjectPreviewService {\n readonly #dms = inject(DmsService);\n readonly #userService = inject(UserService);\n readonly #mediaViewerService = inject(MediaViewerService);\n\n #dmsObject = signal<DmsObject | undefined>(undefined);\n\n dmsObject = this.#dmsObject.asReadonly();\n\n setDmsObject(object: DmsObject) {\n this.#dmsObject.set(object);\n }\n\n getDmsObject(id: string) {\n return this.#dms.getDmsObject(id).pipe(tap((dmsObject) => this.#dmsObject.set(dmsObject)));\n }\n\n getMediaViewerSrc(id: string, mimeType: string | undefined, version?: number) {\n if (mimeType) {\n if (mimeType === 'image/tiff') {\n return version\n ? `/api/dms/objects/${id}/versions/${version}/contents/renditions/slide?timeout=50000`\n : `/api/dms/objects/${id}/contents/renditions/slide`;\n }\n return version ? `/api/dms/objects/${id}/versions/${version}/contents/file` : `/api/dms/objects/${id}/contents/file`;\n }\n return '';\n }\n\n #isEmailViewer(object: DmsObject) {\n return defaultViewers.filter((viewer) => viewer.type === 'EMAIL')[0].mimeType.includes(object.data[ContentStreamField.MIME_TYPE] as string);\n }\n\n getViewerDetails(object: DmsObject, version: number | undefined) {\n if (object) {\n const type = object?.content && this.#mediaViewerService.getComponentType(object.content.mimeType);\n\n // console.log('type', type);\n\n return this.#isEmailViewer(object)\n ? this.getEmailViewerDetails(object)\n : {\n mediaViewerSrc: this.getMediaViewerSrc(object.id, object.content?.mimeType, version),\n id: object.id,\n mimeType: object.content?.mimeType,\n metadata: {\n type,\n name: object.data[ContentStreamField.FILENAME] as string,\n dmsObject: object?.data,\n id: object?.id,\n editable: true,\n user: signal(this.#userService.getCurrentUser()),\n theme: 'light',\n ...(object.content?.mimeType === 'application/pdf'\n ? {\n options: {\n showToolbar: true,\n showSidebarButton: true,\n showFindButton: true,\n showPagingButtons: true,\n showDrawEditor: false,\n showStampEditor: false,\n showTextEditor: false,\n showZoomButtons: true,\n showPresentationModeButton: false,\n showOpenFileButton: false,\n showPrintButton: false,\n showDownloadButton: false,\n showSecondaryToolbarButton: true,\n showRotateCwButton: false,\n showRotateCcwButton: false,\n showHandToolButton: false,\n showScrollingButtons: false,\n showSpreadButton: false,\n showPropertiesButton: false,\n showHighlightEditor: false\n }\n }\n : {})\n }\n };\n }\n return undefined;\n }\n\n getEmailViewerDetails(object: DmsObject, MAIL_APP_ID = 'appSystemmail:') {\n return {\n mediaViewerSrc: this.getMediaViewerSrc(object.id, object.content?.mimeType),\n id: object.id,\n mimeType: object.content?.mimeType,\n metadata: this.getEmailMetadata(object, MAIL_APP_ID)\n };\n }\n\n getEmailMetadata(object: DmsObject, MAIL_APP_ID = 'appSystemmail:'): EmailMetadata {\n return {\n type: 'EMAIL',\n header: {\n subject: object.data[`${MAIL_APP_ID}subject`] as string,\n sent: new Date(object.data[`${MAIL_APP_ID}sent`] as string),\n from: object.data[`${MAIL_APP_ID}from`] as string,\n to: object.data[`${MAIL_APP_ID}to`] as string[],\n cc: object.data[`${MAIL_APP_ID}cc`] as string[],\n bcc: object.data[`${MAIL_APP_ID}bcc`] as string[]\n },\n theme: 'light',\n attachments: object.data[`${MAIL_APP_ID}attachments`] as string[]\n };\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { Component, computed, effect, inject, input, signal, untracked } from '@angular/core';\nimport { DmsObject, TranslateModule } from '@yuuvis/client-core';\nimport { YuvMediaViewerComponent } from '@yuuvis/media-viewer';\nimport { ObjectPreviewService } from '../../services/object-preview.service';\n\n@Component({\n selector: 'yuv-object-preview',\n standalone: true,\n imports: [CommonModule, YuvMediaViewerComponent, TranslateModule],\n template: `\n @let viewerDetailsObj = viewerDetails();\n @if (viewerDetailsObj) {\n <yuv-media-viewer\n class=\"viewer\"\n [id]=\"viewerDetailsObj.id\"\n [type]=\"viewerDetailsObj.mimeType\"\n [src]=\"viewerDetailsObj.mediaViewerSrc\"\n [metadata]=\"viewerDetailsObj.metadata\"\n ></yuv-media-viewer>\n }\n @if (isTiff()) {\n <div class=\"tiff-warning\">\n <div class=\"tiff-warning-text\">{{ 'yuv.object-preview.tiff-warning' | translate }}</div>\n </div>\n }\n `,\n styles: [\n `\n :host {\n height: 100%;\n overflow: hidden;\n display: grid;\n grid-auto-columns: 1fr;\n grid-auto-rows: 1fr;\n grid-template-columns: 1fr;\n grid-template-rows: 1fr max-content;\n gap: 0px 0px;\n grid-template-areas:\n 'viewer'\n 'message';\n }\n .viewer {\n grid-area: viewer;\n ::ng-deep {\n pdf-paging-area {\n display: flex;\n align-items: center;\n\n .paging-right,\n .paging-left {\n display: flex;\n align-items: center;\n }\n }\n pdf-zoom-toolbar {\n div {\n display: flex;\n align-items: center;\n }\n }\n }\n }\n .tiff-warning {\n grid-area: message;\n text-align: center;\n padding: var(--ymt-spacing-xs) 0;\n\n &-text {\n margin: var(--ymt-spacing-m);\n }\n }\n `\n ]\n})\nexport class ObjectPreviewComponent {\n #objectPreviewService = inject(ObjectPreviewService);\n\n #formerContentstreamId?: string;\n objectId = input<string | undefined>(undefined);\n dmsObjectInput = input<DmsObject | undefined>(undefined, { alias: 'dmsObject' });\n version = input<number | undefined>(undefined);\n dmsObject = this.#objectPreviewService.dmsObject;\n #dmsObjectEffect = effect(() => {\n const version = this.version();\n let object = this.dmsObject();\n object = Array.isArray(object) ? object[0] : object;\n if (object && this.#formerContentstreamId !== object.content?.contentStreamId) {\n untracked(() => this.viewerDetails.set(object && this.#objectPreviewService.getViewerDetails(object, version)));\n this.#formerContentstreamId = object.content?.contentStreamId;\n }\n });\n\n viewerDetails = signal<any | undefined>(undefined);\n\n isTiff = computed(() => this.dmsObject()?.content?.mimeType === 'image/tiff');\n\n #objectIdEffect = effect(() => {\n const objectId = this.objectId();\n const dmsObject = this.dmsObjectInput();\n untracked(() => {\n dmsObject && this.#objectPreviewService.setDmsObject(dmsObject);\n objectId && !dmsObject && this.#objectPreviewService.getDmsObject(objectId).subscribe();\n });\n });\n}\n","import { Component, computed, effect, inject, input, untracked } from '@angular/core';\nimport { DmsObject } from '@yuuvis/client-core';\nimport { MailComponent } from '@yuuvis/media-viewer';\nimport { ObjectPreviewService } from '../../services/object-preview.service';\n\n@Component({\n selector: 'yuv-object-email-preview',\n standalone: true,\n imports: [MailComponent],\n template: `\n @let viewerDetailsObj = viewerDetails();\n @if (viewerDetailsObj) {\n <yuv-mail [id]=\"viewerDetailsObj.id\" [src]=\"viewerDetailsObj.mediaViewerSrc\" [metadata]=\"viewerDetailsObj.metadata\"></yuv-mail>\n }\n `,\n styles: `\n :host {\n height: 100%;\n }\n `\n})\nexport class ObjectEmailPreviewComponent {\n #objectPreviwService = inject(ObjectPreviewService);\n\n objectId = input<string | undefined>(undefined);\n dmsObjectInput = input<DmsObject | undefined>(undefined, { alias: 'dmsObject' });\n dmsObject = this.#objectPreviwService.dmsObject;\n\n #objectIdEffect = effect(() => {\n const objectId = this.objectId();\n const dmsObject = this.dmsObjectInput();\n\n untracked(() => {\n dmsObject && this.#objectPreviwService.setDmsObject(dmsObject);\n if (objectId && !dmsObject) {\n this.#objectPreviwService.getDmsObject(objectId).subscribe();\n }\n });\n });\n\n viewerDetails = computed(() => {\n const object = this.dmsObject();\n return object ? this.#objectPreviwService.getEmailViewerDetails(object) : undefined;\n });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;MAQa,oBAAoB,CAAA;AAHjC,IAAA,WAAA,GAAA;AAIW,QAAA,IAAA,CAAA,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC;AACzB,QAAA,IAAA,CAAA,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC;AAClC,QAAA,IAAA,CAAA,mBAAmB,GAAG,MAAM,CAAC,kBAAkB,CAAC;AAEzD,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAwB,SAAS,CAAC;AAErD,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE;AAsGzC;AA5GU,IAAA,IAAI;AACJ,IAAA,YAAY;AACZ,IAAA,mBAAmB;AAE5B,IAAA,UAAU;AAIV,IAAA,YAAY,CAAC,MAAiB,EAAA;AAC5B,QAAA,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC;;AAG7B,IAAA,YAAY,CAAC,EAAU,EAAA;AACrB,QAAA,OAAO,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;;AAG5F,IAAA,iBAAiB,CAAC,EAAU,EAAE,QAA4B,EAAE,OAAgB,EAAA;QAC1E,IAAI,QAAQ,EAAE;AACZ,YAAA,IAAI,QAAQ,KAAK,YAAY,EAAE;AAC7B,gBAAA,OAAO;AACL,sBAAE,CAAA,iBAAA,EAAoB,EAAE,CAAA,UAAA,EAAa,OAAO,CAA0C,wCAAA;AACtF,sBAAE,CAAA,iBAAA,EAAoB,EAAE,CAAA,0BAAA,CAA4B;;AAExD,YAAA,OAAO,OAAO,GAAG,oBAAoB,EAAE,CAAA,UAAA,EAAa,OAAO,CAAA,cAAA,CAAgB,GAAG,CAAoB,iBAAA,EAAA,EAAE,gBAAgB;;AAEtH,QAAA,OAAO,EAAE;;AAGX,IAAA,cAAc,CAAC,MAAiB,EAAA;AAC9B,QAAA,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAW,CAAC;;IAG7I,gBAAgB,CAAC,MAAiB,EAAE,OAA2B,EAAA;QAC7D,IAAI,MAAM,EAAE;AACV,YAAA,MAAM,IAAI,GAAG,MAAM,EAAE,OAAO,IAAI,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;;AAIlG,YAAA,OAAO,IAAI,CAAC,cAAc,CAAC,MAAM;AAC/B,kBAAE,IAAI,CAAC,qBAAqB,CAAC,MAAM;AACnC,kBAAE;AACE,oBAAA,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC;oBACpF,EAAE,EAAE,MAAM,CAAC,EAAE;AACb,oBAAA,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ;AAClC,oBAAA,QAAQ,EAAE;wBACR,IAAI;wBACJ,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAW;wBACxD,SAAS,EAAE,MAAM,EAAE,IAAI;wBACvB,EAAE,EAAE,MAAM,EAAE,EAAE;AACd,wBAAA,QAAQ,EAAE,IAAI;wBACd,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC;AAChD,wBAAA,KAAK,EAAE,OAAO;AACd,wBAAA,IAAI,MAAM,CAAC,OAAO,EAAE,QAAQ,KAAK;AAC/B,8BAAE;AACE,gCAAA,OAAO,EAAE;AACP,oCAAA,WAAW,EAAE,IAAI;AACjB,oCAAA,iBAAiB,EAAE,IAAI;AACvB,oCAAA,cAAc,EAAE,IAAI;AACpB,oCAAA,iBAAiB,EAAE,IAAI;AACvB,oCAAA,cAAc,EAAE,KAAK;AACrB,oCAAA,eAAe,EAAE,KAAK;AACtB,oCAAA,cAAc,EAAE,KAAK;AACrB,oCAAA,eAAe,EAAE,IAAI;AACrB,oCAAA,0BAA0B,EAAE,KAAK;AACjC,oCAAA,kBAAkB,EAAE,KAAK;AACzB,oCAAA,eAAe,EAAE,KAAK;AACtB,oCAAA,kBAAkB,EAAE,KAAK;AACzB,oCAAA,0BAA0B,EAAE,IAAI;AAChC,oCAAA,kBAAkB,EAAE,KAAK;AACzB,oCAAA,mBAAmB,EAAE,KAAK;AAC1B,oCAAA,kBAAkB,EAAE,KAAK;AACzB,oCAAA,oBAAoB,EAAE,KAAK;AAC3B,oCAAA,gBAAgB,EAAE,KAAK;AACvB,oCAAA,oBAAoB,EAAE,KAAK;AAC3B,oCAAA,mBAAmB,EAAE;AACtB;AACF;8BACD,EAAE;AACP;iBACF;;AAEP,QAAA,OAAO,SAAS;;AAGlB,IAAA,qBAAqB,CAAC,MAAiB,EAAE,WAAW,GAAG,gBAAgB,EAAA;QACrE,OAAO;AACL,YAAA,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC;YAC3E,EAAE,EAAE,MAAM,CAAC,EAAE;AACb,YAAA,QAAQ,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ;YAClC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW;SACpD;;AAGH,IAAA,gBAAgB,CAAC,MAAiB,EAAE,WAAW,GAAG,gBAAgB,EAAA;QAChE,OAAO;AACL,YAAA,IAAI,EAAE,OAAO;AACb,YAAA,MAAM,EAAE;gBACN,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAG,EAAA,WAAW,SAAS,CAAW;AACvD,gBAAA,IAAI,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAG,EAAA,WAAW,CAAM,IAAA,CAAA,CAAW,CAAC;gBAC3D,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAG,EAAA,WAAW,MAAM,CAAW;gBACjD,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAG,EAAA,WAAW,IAAI,CAAa;gBAC/C,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAG,EAAA,WAAW,IAAI,CAAa;gBAC/C,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAG,EAAA,WAAW,KAAK;AACrC,aAAA;AACD,YAAA,KAAK,EAAE,OAAO;YACd,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,CAAG,EAAA,WAAW,aAAa;SACrD;;+GA3GQ,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,oBAAoB,cAFnB,MAAM,EAAA,CAAA,CAAA;;4FAEP,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBAHhC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE;AACb,iBAAA;;;MCoEY,sBAAsB,CAAA;AArEnC,IAAA,WAAA,GAAA;AAsEE,QAAA,IAAA,CAAA,qBAAqB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAGpD,QAAA,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAqB,SAAS,CAAC;QAC/C,IAAc,CAAA,cAAA,GAAG,KAAK,CAAwB,SAAS,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;AAChF,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK,CAAqB,SAAS,CAAC;AAC9C,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS;AAChD,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,MAAK;AAC7B,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE;AAC9B,YAAA,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE;AAC7B,YAAA,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM;AACnD,YAAA,IAAI,MAAM,IAAI,IAAI,CAAC,sBAAsB,KAAK,MAAM,CAAC,OAAO,EAAE,eAAe,EAAE;gBAC7E,SAAS,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;gBAC/G,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC,OAAO,EAAE,eAAe;;AAEjE,SAAC,CAAC;AAEF,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAkB,SAAS,CAAC;AAElD,QAAA,IAAA,CAAA,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,QAAQ,KAAK,YAAY,CAAC;AAE7E,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,MAAK;AAC5B,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;AAChC,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,EAAE;YACvC,SAAS,CAAC,MAAK;gBACb,SAAS,IAAI,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,SAAS,CAAC;AAC/D,gBAAA,QAAQ,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE;AACzF,aAAC,CAAC;AACJ,SAAC,CAAC;AACH;AA7BC,IAAA,qBAAqB;AAErB,IAAA,sBAAsB;AAKtB,IAAA,gBAAgB;AAchB,IAAA,eAAe;+GAtBJ,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,sBAAsB,EAjEvB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;;;;;;;;;;;;AAgBT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,ujBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAjBS,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAE,uBAAuB,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,MAAA,EAAA,UAAA,EAAA,KAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,eAAe,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAkErD,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBArElC,SAAS;+BACE,oBAAoB,EAAA,UAAA,EAClB,IAAI,EAAA,OAAA,EACP,CAAC,YAAY,EAAE,uBAAuB,EAAE,eAAe,CAAC,EACvD,QAAA,EAAA;;;;;;;;;;;;;;;;AAgBT,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,ujBAAA,CAAA,EAAA;;;MCLU,2BAA2B,CAAA;AAhBxC,IAAA,WAAA,GAAA;AAiBE,QAAA,IAAA,CAAA,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAEnD,QAAA,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAqB,SAAS,CAAC;QAC/C,IAAc,CAAA,cAAA,GAAG,KAAK,CAAwB,SAAS,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;AAChF,QAAA,IAAA,CAAA,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS;AAE/C,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,MAAK;AAC5B,YAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;AAChC,YAAA,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,EAAE;YAEvC,SAAS,CAAC,MAAK;gBACb,SAAS,IAAI,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,SAAS,CAAC;AAC9D,gBAAA,IAAI,QAAQ,IAAI,CAAC,SAAS,EAAE;oBAC1B,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE;;AAEhE,aAAC,CAAC;AACJ,SAAC,CAAC;AAEF,QAAA,IAAA,CAAA,aAAa,GAAG,QAAQ,CAAC,MAAK;AAC5B,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE;AAC/B,YAAA,OAAO,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,MAAM,CAAC,GAAG,SAAS;AACrF,SAAC,CAAC;AACH;AAtBC,IAAA,oBAAoB;AAMpB,IAAA,eAAe;+GAPJ,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA3B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,2BAA2B,EAZ5B,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA;;;;;AAKT,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,sBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EANS,aAAa,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,0BAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAaZ,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAhBvC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,0BAA0B,cACxB,IAAI,EAAA,OAAA,EACP,CAAC,aAAa,CAAC,EACd,QAAA,EAAA;;;;;AAKT,EAAA,CAAA,EAAA,MAAA,EAAA,CAAA,sBAAA,CAAA,EAAA;;;ACdH;;AAEG;;;;"}
@@ -2,25 +2,24 @@ import * as i0 from '@angular/core';
2
2
  import { NgModule, inject, ChangeDetectorRef, viewChild, signal, input, effect, untracked, Component, ChangeDetectionStrategy } from '@angular/core';
3
3
  import { CommonModule, NgClass } from '@angular/common';
4
4
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
5
- import { EventService, DmsService, TranslateService, SystemService, ObjectConfigService, SearchService, YuvEventType, ContentStreamField, BaseObjectTypeField, Operator, SystemSOT, TranslateModule } from '@yuuvis/client-core';
5
+ import * as i2 from '@angular/material/icon';
6
+ import { MatIconModule } from '@angular/material/icon';
7
+ import { EventService, DmsService, TranslateService, SystemService, ObjectConfigService, SearchService, YuvEventType, Operator, BaseObjectTypeField, ContentStreamField, SystemSOT, TranslateModule } from '@yuuvis/client-core';
6
8
  import * as i1 from '@yuuvis/client-framework/common';
7
9
  import { BusyOverlayDirective } from '@yuuvis/client-framework/common';
8
- import { YUV_ICONS } from '@yuuvis/client-framework/icons';
10
+ import { YUV_ICONS, YuvIconComponent } from '@yuuvis/client-framework/icons';
9
11
  import { RetentionBadgeComponent } from '@yuuvis/client-framework/object-details';
10
12
  import { ObjectFlavorComponent } from '@yuuvis/client-framework/object-flavor';
13
+ import { OverflowMenuComponent } from '@yuuvis/client-framework/overflow-menu';
11
14
  import { RendererDirective } from '@yuuvis/client-framework/renderer';
12
- import * as i2 from '@yuuvis/components/icon';
13
- import { YvcIconModule } from '@yuuvis/components/icon';
14
- import { YvcOverflowMenuComponent } from '@yuuvis/components/overflow-menu';
15
- import { YvcOverlayModule } from '@yuuvis/components/overlay';
16
15
  import { ShellService } from '@yuuvis/client-shell-core';
17
16
 
18
17
  class ObjectSummaryModule {
19
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectSummaryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
20
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: ObjectSummaryModule, imports: [CommonModule] }); }
21
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectSummaryModule, imports: [CommonModule] }); }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ObjectSummaryModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
19
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.11", ngImport: i0, type: ObjectSummaryModule, imports: [CommonModule] }); }
20
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ObjectSummaryModule, imports: [CommonModule] }); }
22
21
  }
23
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectSummaryModule, decorators: [{
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ObjectSummaryModule, decorators: [{
24
23
  type: NgModule,
25
24
  args: [{
26
25
  imports: [CommonModule]
@@ -70,6 +69,7 @@ class ObjectSummaryComponent {
70
69
  untracked(() => {
71
70
  this.dmsObject.set(dmsObject);
72
71
  contentChanged && this.slide.update((slide) => ({ ...slide, uri: undefined, icon: undefined, iconSvg: undefined }));
72
+ this.flavorData = undefined;
73
73
  if (dmsObject) {
74
74
  this.#getHeaderData();
75
75
  this.#getBaseData();
@@ -79,15 +79,13 @@ class ObjectSummaryComponent {
79
79
  this.#fetchFolderInfo(dmsObject.id);
80
80
  // if a flavor has been selected and a new object comes in, we'll check if
81
81
  // the new object has the same flavor and update the flavor data
82
- if (this.flavorData && dmsObject.sots.includes(this.flavorData.flavor.sot)) {
83
- this.#getFlavorData(this.flavorData.flavor);
84
- }
85
- else
86
- this.flavorData = undefined;
87
- }
88
- else {
89
- this.flavorData = undefined;
82
+ // if (this.flavorData && dmsObject.sots.includes(this.flavorData.flavor.sot)) {
83
+ // this.#getFlavorData(this.flavorData.flavor);
84
+ // } else this.flavorData = undefined;
90
85
  }
86
+ // else {
87
+ // this.flavorData = undefined;
88
+ // }
91
89
  });
92
90
  });
93
91
  /**
@@ -117,6 +115,7 @@ class ObjectSummaryComponent {
117
115
  .subscribe((e) => {
118
116
  const o = e.data;
119
117
  const dmsObject = this.dmsObject();
118
+ this.#setupSlide();
120
119
  if (dmsObject?.id === o.id) {
121
120
  this.dmsObject.set(o);
122
121
  }
@@ -153,8 +152,12 @@ class ObjectSummaryComponent {
153
152
  }
154
153
  }
155
154
  }
156
- onFlavorClick(flavor) {
157
- this.#getFlavorData(flavor);
155
+ onFlavorSelect(flavor) {
156
+ if (flavor) {
157
+ this.#getFlavorData(flavor);
158
+ }
159
+ else
160
+ this.flavorData = undefined;
158
161
  }
159
162
  #fetchFolderInfo(id) {
160
163
  const q = {
@@ -209,7 +212,9 @@ class ObjectSummaryComponent {
209
212
  this.flavorData = {
210
213
  flavor,
211
214
  label: this.translate.instant(flavor.id),
212
- properties: sot.fields.filter(f => f._internalType !== 'table').map((f) => ({
215
+ properties: sot.fields
216
+ .filter((f) => f._internalType !== 'table')
217
+ .map((f) => ({
213
218
  label: this.#systemService.getLocalizedLabel(f.id) || f.id,
214
219
  value: {
215
220
  propertyName: f.id,
@@ -231,7 +236,7 @@ class ObjectSummaryComponent {
231
236
  description: oc.description?.value,
232
237
  icon: {
233
238
  title: oc.title.value,
234
- ...(oc.icon ? { svg: oc.icon.value } : { src: this.#systemService.getObjectTypeIconUri(dmsObject.objectTypeId) })
239
+ ...(oc.icon ? { name: oc.icon.value } : undefined)
235
240
  }
236
241
  }));
237
242
  // this.headerData.icon =;
@@ -264,27 +269,26 @@ class ObjectSummaryComponent {
264
269
  });
265
270
  }
266
271
  }
267
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectSummaryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
268
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ObjectSummaryComponent, isStandalone: true, selector: "yuv-object-summary", inputs: { actions: { classPropertyName: "actions", publicName: "actions", isSignal: true, isRequired: false, transformFunction: null }, dmsObjectInput: { classPropertyName: "dmsObjectInput", publicName: "dmsObject", isSignal: true, isRequired: false, transformFunction: null }, objectId: { classPropertyName: "objectId", publicName: "objectId", isSignal: true, isRequired: false, transformFunction: null }, configType: { classPropertyName: "configType", publicName: "configType", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "flavorCmp", first: true, predicate: ObjectFlavorComponent, descendants: true, isSignal: true }], hostDirectives: [{ directive: i1.BusyOverlayDirective, inputs: ["yuvBusyOverlay", "busy"] }], ngImport: i0, template: "@let imageSlide = slide();\n<section class=\"slide\" [yuvBusyOverlay]=\"imageSlide.loading\">\n @if (imageSlide.uri || imageSlide.loading) {\n <img draggable=\"false\" [ngClass]=\"{ loading: imageSlide.loading }\" [attr.data-orientation]=\"imageSlide.orientation\" [src]=\"imageSlide.uri\" />\n } @else if (imageSlide.icon?.svg) {\n <yvc-icon draggable=\"false\" [svg]=\"imageSlide.icon?.svg!\"></yvc-icon>\n } @else if (imageSlide.icon?.src) {\n <yvc-icon draggable=\"false\" [svgSrc]=\"imageSlide.icon?.src!\"></yvc-icon>\n }\n @if (folderInfo) {\n <div class=\"badge\">{{ folderInfo.size }}</div>\n }\n</section>\n\n@let o = dmsObject();\n@if (o && !o.isFolder) {\n <yuv-object-flavor [dmsObject]=\"o\" (flavorClick)=\"onFlavorClick($event)\"></yuv-object-flavor>\n}\n\n<div class=\"content\">\n @let header = headerData();\n <section class=\"title\">\n <h1>{{ header?.title }}</h1>\n\n <div class=\"actions\">\n <yvc-overflow-menu [hideLabels]=\"true\" [menuItems]=\"actions()\"></yvc-overflow-menu>\n </div>\n </section>\n\n @if (o) {\n <section class=\"badges\">\n <yuv-retention-badge [dmsObject]=\"o\"></yuv-retention-badge>\n </section>\n }\n\n @if (flavorData) {\n <section class=\"flavor properties\">\n <!-- <h2>{{ flavorData.label }}</h2> -->\n @for (p of flavorData.properties; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ p.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"p.value\"></ng-container>\n </div>\n </div>\n }\n </section>\n }\n\n <section class=\"properties\">\n @for (p of baseData; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ p.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"p.value\"></ng-container>\n </div>\n </div>\n }\n </section>\n</div>\n", styles: ["section.title{padding:var(--app-pane-padding);display:flex;justify-content:space-between;align-items:center;gap:var(--app-pane-padding)}section.title h1{margin:0;padding:0;font-size:var(--font-title);font-weight:400;text-overflow:ellipsis;overflow:hidden}section.title .actions yvc-icon{--icon-size: 18px}section.title .actions button.quickAccess.isFavorite{color:var(--color-accent)}section.slide{display:flex;flex-flow:column;align-items:center;justify-content:center;border-block-end:1px solid var(--panel-divider-color);background-color:var(--panel-background-grey);position:relative;height:25%;overflow:hidden}section.slide .badge{position:absolute;inset-inline-end:calc(var(--app-pane-padding) / 2);inset-block-start:calc(var(--app-pane-padding) / 2);font-size:3rem;color:var(--text-color-hint)}section.slide yvc-icon{max-height:var(--max-slide-size);max-width:var(--max-slide-size);width:50%;height:50%;opacity:.3}section.slide img{object-fit:cover;object-position:top;opacity:0;transition:opacity .3s;margin:auto;max-height:100%;max-width:100%;outline:4px solid var(--panel-background);outline-offset:-4px;box-shadow:0 0 0 1px var(--panel-divider-color)}section.slide img:not(.loading){opacity:1}:host{--max-slide-size: 150px;display:flex;flex-flow:column;height:100%}:host section:not(.badges){padding:var(--app-pane-padding)}:host section:not(.badges) h2{font-size:var(--font-subhead);font-weight:400}:host yuv-object-flavor{border-block-end:1px solid var(--panel-divider-color);min-height:30px}:host .content{flex:1;overflow-y:auto}:host section.badges{display:flex;flex-flow:row wrap;align-items:center;justify-content:flex-start;gap:calc(var(--app-pane-padding) / 4);padding-inline:var(--app-pane-padding)}:host section.properties .row{display:flex;flex-flow:row wrap;align-items:start;column-gap:1rem;margin-block-end:calc(var(--app-pane-padding) / 2)}:host section.properties .row .label{font-weight:700;font-size:var(--font-caption)}:host section.properties .row .value{word-break:break-all}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: BusyOverlayDirective, selector: "[yuvBusyOverlay]", inputs: ["yuvBusyOverlay"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: RendererDirective, selector: "[yuvRenderer]", inputs: ["yuvRenderer"] }, { kind: "component", type: ObjectFlavorComponent, selector: "yuv-object-flavor", inputs: ["dmsObject"], outputs: ["flavorClick"] }, { kind: "ngmodule", type: YvcOverlayModule }, { kind: "ngmodule", type: YvcIconModule }, { kind: "component", type: i2.Icon, selector: "yvc-icon", inputs: ["label", "svg", "svgSrc"] }, { kind: "component", type: YvcOverflowMenuComponent, selector: "yvc-overflow-menu", inputs: ["overflowIcon", "groupLabels", "menuItems", "hideLabels"] }, { kind: "component", type: RetentionBadgeComponent, selector: "yuv-retention-badge", inputs: ["dmsObject"] }] }); }
272
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ObjectSummaryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
273
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.11", type: ObjectSummaryComponent, isStandalone: true, selector: "yuv-object-summary", inputs: { actions: { classPropertyName: "actions", publicName: "actions", isSignal: true, isRequired: false, transformFunction: null }, dmsObjectInput: { classPropertyName: "dmsObjectInput", publicName: "dmsObject", isSignal: true, isRequired: false, transformFunction: null }, objectId: { classPropertyName: "objectId", publicName: "objectId", isSignal: true, isRequired: false, transformFunction: null }, configType: { classPropertyName: "configType", publicName: "configType", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "flavorCmp", first: true, predicate: ObjectFlavorComponent, descendants: true, isSignal: true }], hostDirectives: [{ directive: i1.BusyOverlayDirective, inputs: ["yuvBusyOverlay", "busy"] }], ngImport: i0, template: "@let imageSlide = slide();\n<section class=\"slide\" [yuvBusyOverlay]=\"imageSlide.loading\">\n @if (imageSlide.uri || imageSlide.loading) {\n <img draggable=\"false\" [ngClass]=\"{ loading: imageSlide.loading }\" [attr.data-orientation]=\"imageSlide.orientation\" [src]=\"imageSlide.uri\" />\n } @else if (imageSlide.icon && imageSlide.icon.name) {\n <mat-icon draggable=\"false\">{{ imageSlide.icon.name }}</mat-icon>\n }\n @if (folderInfo) {\n <div class=\"badge\">\n {{ folderInfo.size }}\n </div>\n }\n</section>\n\n@let o = dmsObject();\n@if (o) {\n <yuv-object-flavor [dmsObject]=\"o\" (flavorSelect)=\"onFlavorSelect($event)\"></yuv-object-flavor>\n}\n\n<div class=\"content\">\n @let header = headerData();\n <section class=\"title\">\n <h2>{{ header?.title }}</h2>\n\n <div class=\"actions\">\n <yuv-overflow-menu [menuItems]=\"actions()\"></yuv-overflow-menu>\n </div>\n </section>\n\n @if (o) {\n <section class=\"badges\">\n <yuv-retention-badge [dmsObject]=\"o\"></yuv-retention-badge>\n </section>\n }\n\n @if (flavorData) {\n <section class=\"flavor properties\">\n <!-- <h2>{{ flavorData.label }}</h2> -->\n @for (p of flavorData.properties; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ p.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"p.value\"></ng-container>\n </div>\n </div>\n }\n </section>\n }\n\n <section class=\"properties\">\n @for (p of baseData; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ p.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"p.value\"></ng-container>\n </div>\n </div>\n }\n </section>\n</div>\n", styles: ["section.title{padding:var(--ymt-spacing-m);display:flex;justify-content:space-between;align-items:center;gap:var(--ymt-spacing-m)}section.title .actions button.quickAccess.isFavorite{color:var(--ymt-primary)}section.slide{display:flex;flex-flow:column;align-items:center;justify-content:center;border-block-end:1px solid var(--ymt-outline-variant);background-color:var(--ymt-surface-panel);position:relative;height:25%;overflow:hidden}section.slide .badge{position:absolute;inset-inline-end:var(--ymt-spacing-xs);inset-block-start:var(--ymt-spacing-xs);font-size:3rem;line-height:1em;opacity:.5;color:var(--ymt-text-color-subtle)}section.slide mat-icon{scale:5;opacity:.3}section.slide img{object-fit:cover;object-position:top;opacity:0;transition:opacity .3s;margin:auto;max-height:100%;max-width:100%;outline:4px solid var(--ymt-surface-panel);outline-offset:-4px;box-shadow:0 0 0 1px var(--ymt-outline-variant)}section.slide img:not(.loading){opacity:1}:host{--max-slide-size: 150px;display:flex;flex-flow:column;height:100%}:host section:not(.badges){padding:var(--ymt-spacing-m)}:host yuv-object-flavor{border-block-end:1px solid var(--ymt-outline-variant);min-height:30px}:host .content{flex:1;overflow-y:auto}:host section.badges{display:flex;flex-flow:row wrap;align-items:center;justify-content:flex-start;gap:var(--ymt-spacing-2xs);padding-inline:var(--ymt-spacing-m)}:host section.properties .row{display:flex;flex-flow:row wrap;align-items:start;column-gap:1rem;margin-block-end:var(--ymt-spacing-xs)}:host section.properties .row .label{font-weight:700;font:var(--ymt-font-body-subtle)}:host section.properties .row .value{word-break:break-all}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: BusyOverlayDirective, selector: "[yuvBusyOverlay]", inputs: ["yuvBusyOverlay"] }, { kind: "component", type: RetentionBadgeComponent, selector: "yuv-retention-badge", inputs: ["dmsObject"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: RendererDirective, selector: "[yuvRenderer]", inputs: ["yuvRenderer"] }, { kind: "component", type: ObjectFlavorComponent, selector: "yuv-object-flavor", inputs: ["dmsObject"], outputs: ["flavorSelect"] }, { kind: "component", type: OverflowMenuComponent, selector: "yuv-overflow-menu", inputs: ["overflowIcon", "groupLabels", "menuItems"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
269
274
  }
270
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectSummaryComponent, decorators: [{
275
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ObjectSummaryComponent, decorators: [{
271
276
  type: Component,
272
277
  args: [{ selector: 'yuv-object-summary', standalone: true, imports: [
273
278
  NgClass,
274
279
  BusyOverlayDirective,
280
+ RetentionBadgeComponent,
275
281
  TranslateModule,
276
282
  RendererDirective,
277
283
  ObjectFlavorComponent,
278
- YvcOverlayModule,
279
- YvcIconModule,
280
- YvcOverflowMenuComponent,
281
- RetentionBadgeComponent
284
+ OverflowMenuComponent,
285
+ MatIconModule
282
286
  ], hostDirectives: [
283
287
  {
284
288
  directive: BusyOverlayDirective,
285
289
  inputs: ['yuvBusyOverlay: busy']
286
290
  }
287
- ], template: "@let imageSlide = slide();\n<section class=\"slide\" [yuvBusyOverlay]=\"imageSlide.loading\">\n @if (imageSlide.uri || imageSlide.loading) {\n <img draggable=\"false\" [ngClass]=\"{ loading: imageSlide.loading }\" [attr.data-orientation]=\"imageSlide.orientation\" [src]=\"imageSlide.uri\" />\n } @else if (imageSlide.icon?.svg) {\n <yvc-icon draggable=\"false\" [svg]=\"imageSlide.icon?.svg!\"></yvc-icon>\n } @else if (imageSlide.icon?.src) {\n <yvc-icon draggable=\"false\" [svgSrc]=\"imageSlide.icon?.src!\"></yvc-icon>\n }\n @if (folderInfo) {\n <div class=\"badge\">{{ folderInfo.size }}</div>\n }\n</section>\n\n@let o = dmsObject();\n@if (o && !o.isFolder) {\n <yuv-object-flavor [dmsObject]=\"o\" (flavorClick)=\"onFlavorClick($event)\"></yuv-object-flavor>\n}\n\n<div class=\"content\">\n @let header = headerData();\n <section class=\"title\">\n <h1>{{ header?.title }}</h1>\n\n <div class=\"actions\">\n <yvc-overflow-menu [hideLabels]=\"true\" [menuItems]=\"actions()\"></yvc-overflow-menu>\n </div>\n </section>\n\n @if (o) {\n <section class=\"badges\">\n <yuv-retention-badge [dmsObject]=\"o\"></yuv-retention-badge>\n </section>\n }\n\n @if (flavorData) {\n <section class=\"flavor properties\">\n <!-- <h2>{{ flavorData.label }}</h2> -->\n @for (p of flavorData.properties; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ p.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"p.value\"></ng-container>\n </div>\n </div>\n }\n </section>\n }\n\n <section class=\"properties\">\n @for (p of baseData; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ p.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"p.value\"></ng-container>\n </div>\n </div>\n }\n </section>\n</div>\n", styles: ["section.title{padding:var(--app-pane-padding);display:flex;justify-content:space-between;align-items:center;gap:var(--app-pane-padding)}section.title h1{margin:0;padding:0;font-size:var(--font-title);font-weight:400;text-overflow:ellipsis;overflow:hidden}section.title .actions yvc-icon{--icon-size: 18px}section.title .actions button.quickAccess.isFavorite{color:var(--color-accent)}section.slide{display:flex;flex-flow:column;align-items:center;justify-content:center;border-block-end:1px solid var(--panel-divider-color);background-color:var(--panel-background-grey);position:relative;height:25%;overflow:hidden}section.slide .badge{position:absolute;inset-inline-end:calc(var(--app-pane-padding) / 2);inset-block-start:calc(var(--app-pane-padding) / 2);font-size:3rem;color:var(--text-color-hint)}section.slide yvc-icon{max-height:var(--max-slide-size);max-width:var(--max-slide-size);width:50%;height:50%;opacity:.3}section.slide img{object-fit:cover;object-position:top;opacity:0;transition:opacity .3s;margin:auto;max-height:100%;max-width:100%;outline:4px solid var(--panel-background);outline-offset:-4px;box-shadow:0 0 0 1px var(--panel-divider-color)}section.slide img:not(.loading){opacity:1}:host{--max-slide-size: 150px;display:flex;flex-flow:column;height:100%}:host section:not(.badges){padding:var(--app-pane-padding)}:host section:not(.badges) h2{font-size:var(--font-subhead);font-weight:400}:host yuv-object-flavor{border-block-end:1px solid var(--panel-divider-color);min-height:30px}:host .content{flex:1;overflow-y:auto}:host section.badges{display:flex;flex-flow:row wrap;align-items:center;justify-content:flex-start;gap:calc(var(--app-pane-padding) / 4);padding-inline:var(--app-pane-padding)}:host section.properties .row{display:flex;flex-flow:row wrap;align-items:start;column-gap:1rem;margin-block-end:calc(var(--app-pane-padding) / 2)}:host section.properties .row .label{font-weight:700;font-size:var(--font-caption)}:host section.properties .row .value{word-break:break-all}\n"] }]
291
+ ], template: "@let imageSlide = slide();\n<section class=\"slide\" [yuvBusyOverlay]=\"imageSlide.loading\">\n @if (imageSlide.uri || imageSlide.loading) {\n <img draggable=\"false\" [ngClass]=\"{ loading: imageSlide.loading }\" [attr.data-orientation]=\"imageSlide.orientation\" [src]=\"imageSlide.uri\" />\n } @else if (imageSlide.icon && imageSlide.icon.name) {\n <mat-icon draggable=\"false\">{{ imageSlide.icon.name }}</mat-icon>\n }\n @if (folderInfo) {\n <div class=\"badge\">\n {{ folderInfo.size }}\n </div>\n }\n</section>\n\n@let o = dmsObject();\n@if (o) {\n <yuv-object-flavor [dmsObject]=\"o\" (flavorSelect)=\"onFlavorSelect($event)\"></yuv-object-flavor>\n}\n\n<div class=\"content\">\n @let header = headerData();\n <section class=\"title\">\n <h2>{{ header?.title }}</h2>\n\n <div class=\"actions\">\n <yuv-overflow-menu [menuItems]=\"actions()\"></yuv-overflow-menu>\n </div>\n </section>\n\n @if (o) {\n <section class=\"badges\">\n <yuv-retention-badge [dmsObject]=\"o\"></yuv-retention-badge>\n </section>\n }\n\n @if (flavorData) {\n <section class=\"flavor properties\">\n <!-- <h2>{{ flavorData.label }}</h2> -->\n @for (p of flavorData.properties; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ p.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"p.value\"></ng-container>\n </div>\n </div>\n }\n </section>\n }\n\n <section class=\"properties\">\n @for (p of baseData; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ p.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"p.value\"></ng-container>\n </div>\n </div>\n }\n </section>\n</div>\n", styles: ["section.title{padding:var(--ymt-spacing-m);display:flex;justify-content:space-between;align-items:center;gap:var(--ymt-spacing-m)}section.title .actions button.quickAccess.isFavorite{color:var(--ymt-primary)}section.slide{display:flex;flex-flow:column;align-items:center;justify-content:center;border-block-end:1px solid var(--ymt-outline-variant);background-color:var(--ymt-surface-panel);position:relative;height:25%;overflow:hidden}section.slide .badge{position:absolute;inset-inline-end:var(--ymt-spacing-xs);inset-block-start:var(--ymt-spacing-xs);font-size:3rem;line-height:1em;opacity:.5;color:var(--ymt-text-color-subtle)}section.slide mat-icon{scale:5;opacity:.3}section.slide img{object-fit:cover;object-position:top;opacity:0;transition:opacity .3s;margin:auto;max-height:100%;max-width:100%;outline:4px solid var(--ymt-surface-panel);outline-offset:-4px;box-shadow:0 0 0 1px var(--ymt-outline-variant)}section.slide img:not(.loading){opacity:1}:host{--max-slide-size: 150px;display:flex;flex-flow:column;height:100%}:host section:not(.badges){padding:var(--ymt-spacing-m)}:host yuv-object-flavor{border-block-end:1px solid var(--ymt-outline-variant);min-height:30px}:host .content{flex:1;overflow-y:auto}:host section.badges{display:flex;flex-flow:row wrap;align-items:center;justify-content:flex-start;gap:var(--ymt-spacing-2xs);padding-inline:var(--ymt-spacing-m)}:host section.properties .row{display:flex;flex-flow:row wrap;align-items:start;column-gap:1rem;margin-block-end:var(--ymt-spacing-xs)}:host section.properties .row .label{font-weight:700;font:var(--ymt-font-body-subtle)}:host section.properties .row .value{word-break:break-all}\n"] }]
288
292
  }], ctorParameters: () => [] });
289
293
 
290
294
  class MultiObjectSummaryComponent {
@@ -292,28 +296,28 @@ class MultiObjectSummaryComponent {
292
296
  this.icon = signal('<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="#5f6368" viewBox="0 -960 960 960"><path d="m200-120-80-480h720l-80 480H200Zm67-80h426l51-320H216l51 320Zm133-160h160q17 0 28.5-11.5T600-400q0-17-11.5-28.5T560-440H400q-17 0-28.5 11.5T360-400q0 17 11.5 28.5T400-360ZM240-640q-17 0-28.5-11.5T200-680q0-17 11.5-28.5T240-720h480q17 0 28.5 11.5T760-680q0 17-11.5 28.5T720-640H240Zm80-120q-17 0-28.5-11.5T280-800q0-17 11.5-28.5T320-840h320q17 0 28.5 11.5T680-800q0 17-11.5 28.5T640-760H320Zm-53 560h426-426Z"/></svg>');
293
297
  this.headline = input('this could be your headline');
294
298
  }
295
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MultiObjectSummaryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
296
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: MultiObjectSummaryComponent, isStandalone: true, selector: "yuv-multi-object-summary", inputs: { headline: { classPropertyName: "headline", publicName: "headline", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
299
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: MultiObjectSummaryComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
300
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.2.11", type: MultiObjectSummaryComponent, isStandalone: true, selector: "yuv-multi-object-summary", inputs: { headline: { classPropertyName: "headline", publicName: "headline", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
297
301
  <section class="slide">
298
- <yvc-icon [svg]="icon()"></yvc-icon>
302
+ <yuv-icon [svg]="icon()"></yuv-icon>
299
303
  </section>
300
304
 
301
305
  <section class="title">
302
306
  <h1>{{ headline() }}</h1>
303
307
  </section>
304
- `, isInline: true, styles: ["section.title{padding:var(--app-pane-padding);display:flex;justify-content:space-between;align-items:center;gap:var(--app-pane-padding)}section.title h1{margin:0;padding:0;font-size:var(--font-title);font-weight:400;text-overflow:ellipsis;overflow:hidden}section.title .actions yvc-icon{--icon-size: 18px}section.title .actions button.quickAccess.isFavorite{color:var(--color-accent)}section.slide{display:flex;flex-flow:column;align-items:center;justify-content:center;border-block-end:1px solid var(--panel-divider-color);background-color:var(--panel-background-grey);position:relative;height:25%;overflow:hidden}section.slide .badge{position:absolute;inset-inline-end:calc(var(--app-pane-padding) / 2);inset-block-start:calc(var(--app-pane-padding) / 2);font-size:3rem;color:var(--text-color-hint)}section.slide yvc-icon{max-height:var(--max-slide-size);max-width:var(--max-slide-size);width:50%;height:50%;opacity:.3}section.slide img{object-fit:cover;object-position:top;opacity:0;transition:opacity .3s;margin:auto;max-height:100%;max-width:100%;outline:4px solid var(--panel-background);outline-offset:-4px;box-shadow:0 0 0 1px var(--panel-divider-color)}section.slide img:not(.loading){opacity:1}\n"], dependencies: [{ kind: "ngmodule", type: YvcIconModule }, { kind: "component", type: i2.Icon, selector: "yvc-icon", inputs: ["label", "svg", "svgSrc"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
308
+ `, isInline: true, styles: ["section.title{padding:var(--ymt-spacing-m);display:flex;justify-content:space-between;align-items:center;gap:var(--ymt-spacing-m)}section.title .actions button.quickAccess.isFavorite{color:var(--ymt-primary)}section.slide{display:flex;flex-flow:column;align-items:center;justify-content:center;border-block-end:1px solid var(--ymt-outline-variant);background-color:var(--ymt-surface-panel);position:relative;height:25%;overflow:hidden}section.slide .badge{position:absolute;inset-inline-end:var(--ymt-spacing-xs);inset-block-start:var(--ymt-spacing-xs);font-size:3rem;line-height:1em;opacity:.5;color:var(--ymt-text-color-subtle)}section.slide mat-icon{scale:5;opacity:.3}section.slide img{object-fit:cover;object-position:top;opacity:0;transition:opacity .3s;margin:auto;max-height:100%;max-width:100%;outline:4px solid var(--ymt-surface-panel);outline-offset:-4px;box-shadow:0 0 0 1px var(--ymt-outline-variant)}section.slide img:not(.loading){opacity:1}\n"], dependencies: [{ kind: "component", type: YuvIconComponent, selector: "yuv-icon", inputs: ["label", "svg", "svgSrc"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
305
309
  }
306
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MultiObjectSummaryComponent, decorators: [{
310
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: MultiObjectSummaryComponent, decorators: [{
307
311
  type: Component,
308
- args: [{ selector: 'yuv-multi-object-summary', standalone: true, imports: [YvcIconModule], template: `
312
+ args: [{ selector: 'yuv-multi-object-summary', standalone: true, imports: [YuvIconComponent], template: `
309
313
  <section class="slide">
310
- <yvc-icon [svg]="icon()"></yvc-icon>
314
+ <yuv-icon [svg]="icon()"></yuv-icon>
311
315
  </section>
312
316
 
313
317
  <section class="title">
314
318
  <h1>{{ headline() }}</h1>
315
319
  </section>
316
- `, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["section.title{padding:var(--app-pane-padding);display:flex;justify-content:space-between;align-items:center;gap:var(--app-pane-padding)}section.title h1{margin:0;padding:0;font-size:var(--font-title);font-weight:400;text-overflow:ellipsis;overflow:hidden}section.title .actions yvc-icon{--icon-size: 18px}section.title .actions button.quickAccess.isFavorite{color:var(--color-accent)}section.slide{display:flex;flex-flow:column;align-items:center;justify-content:center;border-block-end:1px solid var(--panel-divider-color);background-color:var(--panel-background-grey);position:relative;height:25%;overflow:hidden}section.slide .badge{position:absolute;inset-inline-end:calc(var(--app-pane-padding) / 2);inset-block-start:calc(var(--app-pane-padding) / 2);font-size:3rem;color:var(--text-color-hint)}section.slide yvc-icon{max-height:var(--max-slide-size);max-width:var(--max-slide-size);width:50%;height:50%;opacity:.3}section.slide img{object-fit:cover;object-position:top;opacity:0;transition:opacity .3s;margin:auto;max-height:100%;max-width:100%;outline:4px solid var(--panel-background);outline-offset:-4px;box-shadow:0 0 0 1px var(--panel-divider-color)}section.slide img:not(.loading){opacity:1}\n"] }]
320
+ `, changeDetection: ChangeDetectionStrategy.OnPush, styles: ["section.title{padding:var(--ymt-spacing-m);display:flex;justify-content:space-between;align-items:center;gap:var(--ymt-spacing-m)}section.title .actions button.quickAccess.isFavorite{color:var(--ymt-primary)}section.slide{display:flex;flex-flow:column;align-items:center;justify-content:center;border-block-end:1px solid var(--ymt-outline-variant);background-color:var(--ymt-surface-panel);position:relative;height:25%;overflow:hidden}section.slide .badge{position:absolute;inset-inline-end:var(--ymt-spacing-xs);inset-block-start:var(--ymt-spacing-xs);font-size:3rem;line-height:1em;opacity:.5;color:var(--ymt-text-color-subtle)}section.slide mat-icon{scale:5;opacity:.3}section.slide img{object-fit:cover;object-position:top;opacity:0;transition:opacity .3s;margin:auto;max-height:100%;max-width:100%;outline:4px solid var(--ymt-surface-panel);outline-offset:-4px;box-shadow:0 0 0 1px var(--ymt-outline-variant)}section.slide img:not(.loading){opacity:1}\n"] }]
317
321
  }] });
318
322
 
319
323
  class ObjectSummaryDataComponent {
@@ -383,12 +387,12 @@ class ObjectSummaryDataComponent {
383
387
  ]);
384
388
  }
385
389
  }
386
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectSummaryDataComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
387
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ObjectSummaryDataComponent, isStandalone: true, selector: "yuv-object-summary-data", inputs: { dmsObject: { classPropertyName: "dmsObject", publicName: "dmsObject", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let flavors = flavorData();\n\n<div class=\"content\">\n @if (flavors.length > 0) {\n <section class=\"flavor properties\">\n @for (flavor of flavors; track $index) {\n <div class=\"flavour-groups\">\n <h2>{{ flavor.label }}</h2>\n @for (property of flavor.properties; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ property.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"property.value\"></ng-container>\n </div>\n </div>\n }\n </div>\n }\n </section>\n }\n\n @let base = baseData();\n @if (base) {\n <section class=\"base properties\">\n <h2>BASE</h2>\n @for (p of base; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ p.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"p.value\"></ng-container>\n </div>\n </div>\n }\n </section>\n }\n</div>\n", styles: ["section.title{padding:var(--app-pane-padding);display:flex;justify-content:space-between;align-items:center;gap:var(--app-pane-padding)}section.title h1{margin:0;padding:0;font-size:var(--font-title);font-weight:400;text-overflow:ellipsis;overflow:hidden}section.title .actions yvc-icon{--icon-size: 18px}section.title .actions button.quickAccess.isFavorite{color:var(--color-accent)}section.slide{display:flex;flex-flow:column;align-items:center;justify-content:center;border-block-end:1px solid var(--panel-divider-color);background-color:var(--panel-background-grey);position:relative;height:25%;overflow:hidden}section.slide .badge{position:absolute;inset-inline-end:calc(var(--app-pane-padding) / 2);inset-block-start:calc(var(--app-pane-padding) / 2);font-size:3rem;color:var(--text-color-hint)}section.slide yvc-icon{max-height:var(--max-slide-size);max-width:var(--max-slide-size);width:50%;height:50%;opacity:.3}section.slide img{object-fit:cover;object-position:top;opacity:0;transition:opacity .3s;margin:auto;max-height:100%;max-width:100%;outline:4px solid var(--panel-background);outline-offset:-4px;box-shadow:0 0 0 1px var(--panel-divider-color)}section.slide img:not(.loading){opacity:1}:host{--max-slide-size: 150px;display:flex;flex-flow:column;height:100%}:host section h2{font-size:var(--font-title);font-weight:var(--font-weight-normal);margin:0;margin-bottom:var(--app-pane-padding);padding:calc(var(--app-pane-padding) / 2) var(--app-pane-padding);border-bottom:1px solid var(--panel-divider-color)}:host .content{padding-top:var(--app-pane-padding);flex:1;overflow-y:auto;width:100%;display:flex;flex-flow:column;align-items:center}:host .content>*:not(:first-child){margin:var(--app-pane-padding) 0}:host section.properties{gap:1rem;border:1px solid var(--panel-divider-color);width:80%;background-color:var(--panel-background-lightgrey)}:host section.properties .flavour-groups{display:flex;flex-flow:column}:host section.properties .row{display:flex;flex-flow:row wrap;align-items:start;column-gap:1rem;margin-block-end:calc(var(--app-pane-padding) / 2);padding:0 var(--app-pane-padding)}:host section.properties .row .label{font-weight:700;font-size:var(--font-caption)}:host section.properties .row .value{word-break:break-all}:host section.flavor.properties>*:not(:first-child){padding:var(--app-pane-padding) 0}:host section.flavor.properties>*:not(:first-child) h2{border-top:1px solid var(--panel-divider-color)}\n"], dependencies: [{ kind: "directive", type: RendererDirective, selector: "[yuvRenderer]", inputs: ["yuvRenderer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
390
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ObjectSummaryDataComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
391
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.11", type: ObjectSummaryDataComponent, isStandalone: true, selector: "yuv-object-summary-data", inputs: { dmsObject: { classPropertyName: "dmsObject", publicName: "dmsObject", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@let flavors = flavorData();\n\n<div class=\"content\">\n @if (flavors.length > 0) {\n <section class=\"flavor properties\">\n @for (flavor of flavors; track $index) {\n <div class=\"flavour-groups\">\n <h2>{{ flavor.label }}</h2>\n @for (property of flavor.properties; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ property.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"property.value\"></ng-container>\n </div>\n </div>\n }\n </div>\n }\n </section>\n }\n\n @let base = baseData();\n @if (base) {\n <section class=\"base properties\">\n <h2>BASE</h2>\n @for (p of base; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ p.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"p.value\"></ng-container>\n </div>\n </div>\n }\n </section>\n }\n</div>\n", styles: ["section.title{padding:var(--ymt-spacing-m);display:flex;justify-content:space-between;align-items:center;gap:var(--ymt-spacing-m)}section.title .actions button.quickAccess.isFavorite{color:var(--ymt-primary)}section.slide{display:flex;flex-flow:column;align-items:center;justify-content:center;border-block-end:1px solid var(--ymt-outline-variant);background-color:var(--ymt-surface-panel);position:relative;height:25%;overflow:hidden}section.slide .badge{position:absolute;inset-inline-end:var(--ymt-spacing-xs);inset-block-start:var(--ymt-spacing-xs);font-size:3rem;line-height:1em;opacity:.5;color:var(--ymt-text-color-subtle)}section.slide mat-icon{scale:5;opacity:.3}section.slide img{object-fit:cover;object-position:top;opacity:0;transition:opacity .3s;margin:auto;max-height:100%;max-width:100%;outline:4px solid var(--ymt-surface-panel);outline-offset:-4px;box-shadow:0 0 0 1px var(--ymt-outline-variant)}section.slide img:not(.loading){opacity:1}:host{--max-slide-size: 150px;display:flex;flex-flow:column;height:100%}:host section h2{margin:0;margin-bottom:var(--ymt-spacing-m);padding:var(--ymt-spacing-xs) var(--ymt-spacing-m);border-bottom:1px solid var(--ymt-outline-variant)}:host .content{padding-top:var(--ymt-spacing-m);flex:1;overflow-y:auto;width:100%;display:flex;flex-flow:column;align-items:center}:host .content>*:not(:first-child){margin:var(--ymt-spacing-m) 0}:host section.properties{gap:1rem;border:1px solid var(--ymt-outline-variant);width:80%;background-color:var(--ymt-surface-panel)}:host section.properties .flavour-groups{display:flex;flex-flow:column}:host section.properties .row{display:flex;flex-flow:row wrap;align-items:start;column-gap:1rem;margin-block-end:var(--ymt-spacing-xs);padding:0 var(--ymt-spacing-m)}:host section.properties .row .label{font-weight:700;font:var(--ymt-font-body-subtle)}:host section.properties .row .value{word-break:break-all}:host section.flavor.properties>*:not(:first-child){padding:var(--ymt-spacing-m) 0}:host section.flavor.properties>*:not(:first-child) h2{border-top:1px solid var(--ymt-outline-variant)}\n"], dependencies: [{ kind: "directive", type: RendererDirective, selector: "[yuvRenderer]", inputs: ["yuvRenderer"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
388
392
  }
389
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ObjectSummaryDataComponent, decorators: [{
393
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.11", ngImport: i0, type: ObjectSummaryDataComponent, decorators: [{
390
394
  type: Component,
391
- args: [{ selector: 'yuv-object-summary-data', standalone: true, imports: [RendererDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: "@let flavors = flavorData();\n\n<div class=\"content\">\n @if (flavors.length > 0) {\n <section class=\"flavor properties\">\n @for (flavor of flavors; track $index) {\n <div class=\"flavour-groups\">\n <h2>{{ flavor.label }}</h2>\n @for (property of flavor.properties; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ property.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"property.value\"></ng-container>\n </div>\n </div>\n }\n </div>\n }\n </section>\n }\n\n @let base = baseData();\n @if (base) {\n <section class=\"base properties\">\n <h2>BASE</h2>\n @for (p of base; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ p.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"p.value\"></ng-container>\n </div>\n </div>\n }\n </section>\n }\n</div>\n", styles: ["section.title{padding:var(--app-pane-padding);display:flex;justify-content:space-between;align-items:center;gap:var(--app-pane-padding)}section.title h1{margin:0;padding:0;font-size:var(--font-title);font-weight:400;text-overflow:ellipsis;overflow:hidden}section.title .actions yvc-icon{--icon-size: 18px}section.title .actions button.quickAccess.isFavorite{color:var(--color-accent)}section.slide{display:flex;flex-flow:column;align-items:center;justify-content:center;border-block-end:1px solid var(--panel-divider-color);background-color:var(--panel-background-grey);position:relative;height:25%;overflow:hidden}section.slide .badge{position:absolute;inset-inline-end:calc(var(--app-pane-padding) / 2);inset-block-start:calc(var(--app-pane-padding) / 2);font-size:3rem;color:var(--text-color-hint)}section.slide yvc-icon{max-height:var(--max-slide-size);max-width:var(--max-slide-size);width:50%;height:50%;opacity:.3}section.slide img{object-fit:cover;object-position:top;opacity:0;transition:opacity .3s;margin:auto;max-height:100%;max-width:100%;outline:4px solid var(--panel-background);outline-offset:-4px;box-shadow:0 0 0 1px var(--panel-divider-color)}section.slide img:not(.loading){opacity:1}:host{--max-slide-size: 150px;display:flex;flex-flow:column;height:100%}:host section h2{font-size:var(--font-title);font-weight:var(--font-weight-normal);margin:0;margin-bottom:var(--app-pane-padding);padding:calc(var(--app-pane-padding) / 2) var(--app-pane-padding);border-bottom:1px solid var(--panel-divider-color)}:host .content{padding-top:var(--app-pane-padding);flex:1;overflow-y:auto;width:100%;display:flex;flex-flow:column;align-items:center}:host .content>*:not(:first-child){margin:var(--app-pane-padding) 0}:host section.properties{gap:1rem;border:1px solid var(--panel-divider-color);width:80%;background-color:var(--panel-background-lightgrey)}:host section.properties .flavour-groups{display:flex;flex-flow:column}:host section.properties .row{display:flex;flex-flow:row wrap;align-items:start;column-gap:1rem;margin-block-end:calc(var(--app-pane-padding) / 2);padding:0 var(--app-pane-padding)}:host section.properties .row .label{font-weight:700;font-size:var(--font-caption)}:host section.properties .row .value{word-break:break-all}:host section.flavor.properties>*:not(:first-child){padding:var(--app-pane-padding) 0}:host section.flavor.properties>*:not(:first-child) h2{border-top:1px solid var(--panel-divider-color)}\n"] }]
395
+ args: [{ selector: 'yuv-object-summary-data', standalone: true, imports: [RendererDirective], changeDetection: ChangeDetectionStrategy.OnPush, template: "@let flavors = flavorData();\n\n<div class=\"content\">\n @if (flavors.length > 0) {\n <section class=\"flavor properties\">\n @for (flavor of flavors; track $index) {\n <div class=\"flavour-groups\">\n <h2>{{ flavor.label }}</h2>\n @for (property of flavor.properties; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ property.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"property.value\"></ng-container>\n </div>\n </div>\n }\n </div>\n }\n </section>\n }\n\n @let base = baseData();\n @if (base) {\n <section class=\"base properties\">\n <h2>BASE</h2>\n @for (p of base; track $index) {\n <div class=\"row\">\n <div class=\"label\">{{ p.label }}</div>\n <div class=\"value\">\n <ng-container *yuvRenderer=\"p.value\"></ng-container>\n </div>\n </div>\n }\n </section>\n }\n</div>\n", styles: ["section.title{padding:var(--ymt-spacing-m);display:flex;justify-content:space-between;align-items:center;gap:var(--ymt-spacing-m)}section.title .actions button.quickAccess.isFavorite{color:var(--ymt-primary)}section.slide{display:flex;flex-flow:column;align-items:center;justify-content:center;border-block-end:1px solid var(--ymt-outline-variant);background-color:var(--ymt-surface-panel);position:relative;height:25%;overflow:hidden}section.slide .badge{position:absolute;inset-inline-end:var(--ymt-spacing-xs);inset-block-start:var(--ymt-spacing-xs);font-size:3rem;line-height:1em;opacity:.5;color:var(--ymt-text-color-subtle)}section.slide mat-icon{scale:5;opacity:.3}section.slide img{object-fit:cover;object-position:top;opacity:0;transition:opacity .3s;margin:auto;max-height:100%;max-width:100%;outline:4px solid var(--ymt-surface-panel);outline-offset:-4px;box-shadow:0 0 0 1px var(--ymt-outline-variant)}section.slide img:not(.loading){opacity:1}:host{--max-slide-size: 150px;display:flex;flex-flow:column;height:100%}:host section h2{margin:0;margin-bottom:var(--ymt-spacing-m);padding:var(--ymt-spacing-xs) var(--ymt-spacing-m);border-bottom:1px solid var(--ymt-outline-variant)}:host .content{padding-top:var(--ymt-spacing-m);flex:1;overflow-y:auto;width:100%;display:flex;flex-flow:column;align-items:center}:host .content>*:not(:first-child){margin:var(--ymt-spacing-m) 0}:host section.properties{gap:1rem;border:1px solid var(--ymt-outline-variant);width:80%;background-color:var(--ymt-surface-panel)}:host section.properties .flavour-groups{display:flex;flex-flow:column}:host section.properties .row{display:flex;flex-flow:row wrap;align-items:start;column-gap:1rem;margin-block-end:var(--ymt-spacing-xs);padding:0 var(--ymt-spacing-m)}:host section.properties .row .label{font-weight:700;font:var(--ymt-font-body-subtle)}:host section.properties .row .value{word-break:break-all}:host section.flavor.properties>*:not(:first-child){padding:var(--ymt-spacing-m) 0}:host section.flavor.properties>*:not(:first-child) h2{border-top:1px solid var(--ymt-outline-variant)}\n"] }]
392
396
  }] });
393
397
 
394
398
  /**