@eo-sdk/client 9.0.0-rc.7 → 9.0.0-rc.9

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 (419) hide show
  1. package/app/eo-client/settings/settings.component.d.ts +2 -1
  2. package/app/eo-framework/accordion/simple-accordion/simple-accordion.component.d.ts +5 -9
  3. package/app/eo-framework/app-shell/app-bar/app-bar.component.d.ts +4 -2
  4. package/app/eo-framework/media/media.component.d.ts +3 -12
  5. package/app/eo-framework/stored-query/stored-query-details/stored-query-details.component.d.ts +3 -2
  6. package/app/eo-framework/ui/overlay/overlay.component.d.ts +3 -0
  7. package/app/eo-framework/util/directive/trap-focus.directive.d.ts +2 -0
  8. package/assets/_default/i18n/de.json +2 -0
  9. package/assets/_default/i18n/en.json +7 -5
  10. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js +5 -0
  11. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.js.map +1 -1
  12. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js +1 -1
  13. package/bundles/eo-sdk-client-projects-eo-sdk-core.umd.min.js.map +1 -1
  14. package/bundles/eo-sdk-client.umd.js +137 -134
  15. package/bundles/eo-sdk-client.umd.js.map +1 -1
  16. package/bundles/eo-sdk-client.umd.min.js +1 -1
  17. package/bundles/eo-sdk-client.umd.min.js.map +1 -1
  18. package/eo-sdk-client.metadata.json +1 -1
  19. package/esm2015/app/eo-client/about-state/about-state.component.js +3 -3
  20. package/esm2015/app/eo-client/dashboard/dashboard.component.js +2 -2
  21. package/esm2015/app/eo-client/settings/settings.component.js +7 -4
  22. package/esm2015/app/eo-framework/accordion/simple-accordion/simple-accordion.component.js +18 -23
  23. package/esm2015/app/eo-framework/actions/actions/copy-action/copy-action.js +2 -2
  24. package/esm2015/app/eo-framework/actions/actions/share-object-action/share-object/share-object.component.js +3 -2
  25. package/esm2015/app/eo-framework/app-shell/app-bar/app-add/app-add-dialog/app-add-dialog.component.js +1 -1
  26. package/esm2015/app/eo-framework/app-shell/app-bar/app-bar.component.js +12 -5
  27. package/esm2015/app/eo-framework/app-shell/app-bar/app-search/app-search.component.js +13 -1
  28. package/esm2015/app/eo-framework/form-elements/datetime/datetime.component.js +2 -2
  29. package/esm2015/app/eo-framework/form-elements/form-input/form-input.component.js +1 -1
  30. package/esm2015/app/eo-framework/form-elements/id-reference/id-reference.component.js +1 -1
  31. package/esm2015/app/eo-framework/form-elements/id-reference/reference-finder/reference-finder.component.js +4 -4
  32. package/esm2015/app/eo-framework/form-elements/organization/organization.component.js +1 -1
  33. package/esm2015/app/eo-framework/form-elements/string/string.component.js +3 -3
  34. package/esm2015/app/eo-framework/grid/filters/datetime-filter.component.js +2 -2
  35. package/esm2015/app/eo-framework/grid/filters/organization-filter.component.js +1 -1
  36. package/esm2015/app/eo-framework/media/media.component.js +31 -77
  37. package/esm2015/app/eo-framework/object-details/object-details.component.js +2 -2
  38. package/esm2015/app/eo-framework/settings/change-password/change-password-form/change-password-form.component.js +3 -3
  39. package/esm2015/app/eo-framework/stored-query/stored-query-details/stored-query-details.component.js +9 -4
  40. package/esm2015/app/eo-framework/ui/clipboard/clipboard.component.js +2 -2
  41. package/esm2015/app/eo-framework/ui/indexdata-summary/indexdata-summary.component.js +4 -4
  42. package/esm2015/app/eo-framework/ui/overlay/overlay.component.js +10 -4
  43. package/esm2015/app/eo-framework/util/directive/trap-focus.directive.js +22 -4
  44. package/esm2015/projects/eo-sdk/core/lib/model/dms-object.model.js +4 -1
  45. package/esm2015/projects/eo-sdk/core/lib/service/dms/dms.service.js +2 -1
  46. package/esm2015/projects/eo-sdk/core/lib/service/search/search.service.js +2 -1
  47. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js +5 -0
  48. package/fesm2015/eo-sdk-client-projects-eo-sdk-core.js.map +1 -1
  49. package/fesm2015/eo-sdk-client.js +134 -132
  50. package/fesm2015/eo-sdk-client.js.map +1 -1
  51. package/package.json +2 -2
  52. package/projects/eo-sdk/core/lib/model/dms-object.model.d.ts +4 -0
  53. package/projects/eo-sdk/core/package.json +1 -1
  54. package/scss/_form.scss +3 -0
  55. package/styles.css +2 -0
  56. package/assets/_default/api/pdf/LICENSE +0 -177
  57. package/assets/_default/api/pdf/build/pdf.js +0 -2
  58. package/assets/_default/api/pdf/build/pdf.js.LICENSE.txt +0 -21
  59. package/assets/_default/api/pdf/build/pdf.js.map +0 -1
  60. package/assets/_default/api/pdf/build/pdf.sandbox.js +0 -2
  61. package/assets/_default/api/pdf/build/pdf.sandbox.js.LICENSE.txt +0 -21
  62. package/assets/_default/api/pdf/build/pdf.sandbox.js.map +0 -1
  63. package/assets/_default/api/pdf/build/pdf.worker.js +0 -2
  64. package/assets/_default/api/pdf/build/pdf.worker.js.LICENSE.txt +0 -21
  65. package/assets/_default/api/pdf/build/pdf.worker.js.map +0 -1
  66. package/assets/_default/api/pdf/web/cmaps/78-EUC-H.bcmap +0 -0
  67. package/assets/_default/api/pdf/web/cmaps/78-EUC-V.bcmap +0 -0
  68. package/assets/_default/api/pdf/web/cmaps/78-H.bcmap +0 -0
  69. package/assets/_default/api/pdf/web/cmaps/78-RKSJ-H.bcmap +0 -0
  70. package/assets/_default/api/pdf/web/cmaps/78-RKSJ-V.bcmap +0 -0
  71. package/assets/_default/api/pdf/web/cmaps/78-V.bcmap +0 -0
  72. package/assets/_default/api/pdf/web/cmaps/78ms-RKSJ-H.bcmap +0 -0
  73. package/assets/_default/api/pdf/web/cmaps/78ms-RKSJ-V.bcmap +0 -0
  74. package/assets/_default/api/pdf/web/cmaps/83pv-RKSJ-H.bcmap +0 -0
  75. package/assets/_default/api/pdf/web/cmaps/90ms-RKSJ-H.bcmap +0 -0
  76. package/assets/_default/api/pdf/web/cmaps/90ms-RKSJ-V.bcmap +0 -0
  77. package/assets/_default/api/pdf/web/cmaps/90msp-RKSJ-H.bcmap +0 -0
  78. package/assets/_default/api/pdf/web/cmaps/90msp-RKSJ-V.bcmap +0 -0
  79. package/assets/_default/api/pdf/web/cmaps/90pv-RKSJ-H.bcmap +0 -0
  80. package/assets/_default/api/pdf/web/cmaps/90pv-RKSJ-V.bcmap +0 -0
  81. package/assets/_default/api/pdf/web/cmaps/Add-H.bcmap +0 -0
  82. package/assets/_default/api/pdf/web/cmaps/Add-RKSJ-H.bcmap +0 -0
  83. package/assets/_default/api/pdf/web/cmaps/Add-RKSJ-V.bcmap +0 -0
  84. package/assets/_default/api/pdf/web/cmaps/Add-V.bcmap +0 -0
  85. package/assets/_default/api/pdf/web/cmaps/Adobe-CNS1-0.bcmap +0 -0
  86. package/assets/_default/api/pdf/web/cmaps/Adobe-CNS1-1.bcmap +0 -0
  87. package/assets/_default/api/pdf/web/cmaps/Adobe-CNS1-2.bcmap +0 -0
  88. package/assets/_default/api/pdf/web/cmaps/Adobe-CNS1-3.bcmap +0 -0
  89. package/assets/_default/api/pdf/web/cmaps/Adobe-CNS1-4.bcmap +0 -0
  90. package/assets/_default/api/pdf/web/cmaps/Adobe-CNS1-5.bcmap +0 -0
  91. package/assets/_default/api/pdf/web/cmaps/Adobe-CNS1-6.bcmap +0 -0
  92. package/assets/_default/api/pdf/web/cmaps/Adobe-CNS1-UCS2.bcmap +0 -0
  93. package/assets/_default/api/pdf/web/cmaps/Adobe-GB1-0.bcmap +0 -0
  94. package/assets/_default/api/pdf/web/cmaps/Adobe-GB1-1.bcmap +0 -0
  95. package/assets/_default/api/pdf/web/cmaps/Adobe-GB1-2.bcmap +0 -0
  96. package/assets/_default/api/pdf/web/cmaps/Adobe-GB1-3.bcmap +0 -0
  97. package/assets/_default/api/pdf/web/cmaps/Adobe-GB1-4.bcmap +0 -0
  98. package/assets/_default/api/pdf/web/cmaps/Adobe-GB1-5.bcmap +0 -0
  99. package/assets/_default/api/pdf/web/cmaps/Adobe-GB1-UCS2.bcmap +0 -0
  100. package/assets/_default/api/pdf/web/cmaps/Adobe-Japan1-0.bcmap +0 -0
  101. package/assets/_default/api/pdf/web/cmaps/Adobe-Japan1-1.bcmap +0 -0
  102. package/assets/_default/api/pdf/web/cmaps/Adobe-Japan1-2.bcmap +0 -0
  103. package/assets/_default/api/pdf/web/cmaps/Adobe-Japan1-3.bcmap +0 -0
  104. package/assets/_default/api/pdf/web/cmaps/Adobe-Japan1-4.bcmap +0 -0
  105. package/assets/_default/api/pdf/web/cmaps/Adobe-Japan1-5.bcmap +0 -0
  106. package/assets/_default/api/pdf/web/cmaps/Adobe-Japan1-6.bcmap +0 -0
  107. package/assets/_default/api/pdf/web/cmaps/Adobe-Japan1-UCS2.bcmap +0 -0
  108. package/assets/_default/api/pdf/web/cmaps/Adobe-Korea1-0.bcmap +0 -0
  109. package/assets/_default/api/pdf/web/cmaps/Adobe-Korea1-1.bcmap +0 -0
  110. package/assets/_default/api/pdf/web/cmaps/Adobe-Korea1-2.bcmap +0 -0
  111. package/assets/_default/api/pdf/web/cmaps/Adobe-Korea1-UCS2.bcmap +0 -0
  112. package/assets/_default/api/pdf/web/cmaps/B5-H.bcmap +0 -0
  113. package/assets/_default/api/pdf/web/cmaps/B5-V.bcmap +0 -0
  114. package/assets/_default/api/pdf/web/cmaps/B5pc-H.bcmap +0 -0
  115. package/assets/_default/api/pdf/web/cmaps/B5pc-V.bcmap +0 -0
  116. package/assets/_default/api/pdf/web/cmaps/CNS-EUC-H.bcmap +0 -0
  117. package/assets/_default/api/pdf/web/cmaps/CNS-EUC-V.bcmap +0 -0
  118. package/assets/_default/api/pdf/web/cmaps/CNS1-H.bcmap +0 -0
  119. package/assets/_default/api/pdf/web/cmaps/CNS1-V.bcmap +0 -0
  120. package/assets/_default/api/pdf/web/cmaps/CNS2-H.bcmap +0 -0
  121. package/assets/_default/api/pdf/web/cmaps/CNS2-V.bcmap +0 -3
  122. package/assets/_default/api/pdf/web/cmaps/ETHK-B5-H.bcmap +0 -0
  123. package/assets/_default/api/pdf/web/cmaps/ETHK-B5-V.bcmap +0 -0
  124. package/assets/_default/api/pdf/web/cmaps/ETen-B5-H.bcmap +0 -0
  125. package/assets/_default/api/pdf/web/cmaps/ETen-B5-V.bcmap +0 -0
  126. package/assets/_default/api/pdf/web/cmaps/ETenms-B5-H.bcmap +0 -3
  127. package/assets/_default/api/pdf/web/cmaps/ETenms-B5-V.bcmap +0 -0
  128. package/assets/_default/api/pdf/web/cmaps/EUC-H.bcmap +0 -0
  129. package/assets/_default/api/pdf/web/cmaps/EUC-V.bcmap +0 -0
  130. package/assets/_default/api/pdf/web/cmaps/Ext-H.bcmap +0 -0
  131. package/assets/_default/api/pdf/web/cmaps/Ext-RKSJ-H.bcmap +0 -0
  132. package/assets/_default/api/pdf/web/cmaps/Ext-RKSJ-V.bcmap +0 -0
  133. package/assets/_default/api/pdf/web/cmaps/Ext-V.bcmap +0 -0
  134. package/assets/_default/api/pdf/web/cmaps/GB-EUC-H.bcmap +0 -0
  135. package/assets/_default/api/pdf/web/cmaps/GB-EUC-V.bcmap +0 -0
  136. package/assets/_default/api/pdf/web/cmaps/GB-H.bcmap +0 -4
  137. package/assets/_default/api/pdf/web/cmaps/GB-V.bcmap +0 -0
  138. package/assets/_default/api/pdf/web/cmaps/GBK-EUC-H.bcmap +0 -0
  139. package/assets/_default/api/pdf/web/cmaps/GBK-EUC-V.bcmap +0 -0
  140. package/assets/_default/api/pdf/web/cmaps/GBK2K-H.bcmap +0 -0
  141. package/assets/_default/api/pdf/web/cmaps/GBK2K-V.bcmap +0 -0
  142. package/assets/_default/api/pdf/web/cmaps/GBKp-EUC-H.bcmap +0 -0
  143. package/assets/_default/api/pdf/web/cmaps/GBKp-EUC-V.bcmap +0 -0
  144. package/assets/_default/api/pdf/web/cmaps/GBT-EUC-H.bcmap +0 -0
  145. package/assets/_default/api/pdf/web/cmaps/GBT-EUC-V.bcmap +0 -0
  146. package/assets/_default/api/pdf/web/cmaps/GBT-H.bcmap +0 -0
  147. package/assets/_default/api/pdf/web/cmaps/GBT-V.bcmap +0 -0
  148. package/assets/_default/api/pdf/web/cmaps/GBTpc-EUC-H.bcmap +0 -0
  149. package/assets/_default/api/pdf/web/cmaps/GBTpc-EUC-V.bcmap +0 -0
  150. package/assets/_default/api/pdf/web/cmaps/GBpc-EUC-H.bcmap +0 -0
  151. package/assets/_default/api/pdf/web/cmaps/GBpc-EUC-V.bcmap +0 -0
  152. package/assets/_default/api/pdf/web/cmaps/H.bcmap +0 -0
  153. package/assets/_default/api/pdf/web/cmaps/HKdla-B5-H.bcmap +0 -0
  154. package/assets/_default/api/pdf/web/cmaps/HKdla-B5-V.bcmap +0 -0
  155. package/assets/_default/api/pdf/web/cmaps/HKdlb-B5-H.bcmap +0 -0
  156. package/assets/_default/api/pdf/web/cmaps/HKdlb-B5-V.bcmap +0 -0
  157. package/assets/_default/api/pdf/web/cmaps/HKgccs-B5-H.bcmap +0 -0
  158. package/assets/_default/api/pdf/web/cmaps/HKgccs-B5-V.bcmap +0 -0
  159. package/assets/_default/api/pdf/web/cmaps/HKm314-B5-H.bcmap +0 -0
  160. package/assets/_default/api/pdf/web/cmaps/HKm314-B5-V.bcmap +0 -0
  161. package/assets/_default/api/pdf/web/cmaps/HKm471-B5-H.bcmap +0 -0
  162. package/assets/_default/api/pdf/web/cmaps/HKm471-B5-V.bcmap +0 -0
  163. package/assets/_default/api/pdf/web/cmaps/HKscs-B5-H.bcmap +0 -0
  164. package/assets/_default/api/pdf/web/cmaps/HKscs-B5-V.bcmap +0 -0
  165. package/assets/_default/api/pdf/web/cmaps/Hankaku.bcmap +0 -0
  166. package/assets/_default/api/pdf/web/cmaps/Hiragana.bcmap +0 -0
  167. package/assets/_default/api/pdf/web/cmaps/KSC-EUC-H.bcmap +0 -0
  168. package/assets/_default/api/pdf/web/cmaps/KSC-EUC-V.bcmap +0 -0
  169. package/assets/_default/api/pdf/web/cmaps/KSC-H.bcmap +0 -0
  170. package/assets/_default/api/pdf/web/cmaps/KSC-Johab-H.bcmap +0 -0
  171. package/assets/_default/api/pdf/web/cmaps/KSC-Johab-V.bcmap +0 -0
  172. package/assets/_default/api/pdf/web/cmaps/KSC-V.bcmap +0 -0
  173. package/assets/_default/api/pdf/web/cmaps/KSCms-UHC-H.bcmap +0 -0
  174. package/assets/_default/api/pdf/web/cmaps/KSCms-UHC-HW-H.bcmap +0 -0
  175. package/assets/_default/api/pdf/web/cmaps/KSCms-UHC-HW-V.bcmap +0 -0
  176. package/assets/_default/api/pdf/web/cmaps/KSCms-UHC-V.bcmap +0 -0
  177. package/assets/_default/api/pdf/web/cmaps/KSCpc-EUC-H.bcmap +0 -0
  178. package/assets/_default/api/pdf/web/cmaps/KSCpc-EUC-V.bcmap +0 -0
  179. package/assets/_default/api/pdf/web/cmaps/Katakana.bcmap +0 -0
  180. package/assets/_default/api/pdf/web/cmaps/LICENSE +0 -36
  181. package/assets/_default/api/pdf/web/cmaps/NWP-H.bcmap +0 -0
  182. package/assets/_default/api/pdf/web/cmaps/NWP-V.bcmap +0 -0
  183. package/assets/_default/api/pdf/web/cmaps/RKSJ-H.bcmap +0 -0
  184. package/assets/_default/api/pdf/web/cmaps/RKSJ-V.bcmap +0 -0
  185. package/assets/_default/api/pdf/web/cmaps/Roman.bcmap +0 -0
  186. package/assets/_default/api/pdf/web/cmaps/UniCNS-UCS2-H.bcmap +0 -0
  187. package/assets/_default/api/pdf/web/cmaps/UniCNS-UCS2-V.bcmap +0 -0
  188. package/assets/_default/api/pdf/web/cmaps/UniCNS-UTF16-H.bcmap +0 -0
  189. package/assets/_default/api/pdf/web/cmaps/UniCNS-UTF16-V.bcmap +0 -0
  190. package/assets/_default/api/pdf/web/cmaps/UniCNS-UTF32-H.bcmap +0 -0
  191. package/assets/_default/api/pdf/web/cmaps/UniCNS-UTF32-V.bcmap +0 -0
  192. package/assets/_default/api/pdf/web/cmaps/UniCNS-UTF8-H.bcmap +0 -0
  193. package/assets/_default/api/pdf/web/cmaps/UniCNS-UTF8-V.bcmap +0 -0
  194. package/assets/_default/api/pdf/web/cmaps/UniGB-UCS2-H.bcmap +0 -0
  195. package/assets/_default/api/pdf/web/cmaps/UniGB-UCS2-V.bcmap +0 -0
  196. package/assets/_default/api/pdf/web/cmaps/UniGB-UTF16-H.bcmap +0 -0
  197. package/assets/_default/api/pdf/web/cmaps/UniGB-UTF16-V.bcmap +0 -0
  198. package/assets/_default/api/pdf/web/cmaps/UniGB-UTF32-H.bcmap +0 -0
  199. package/assets/_default/api/pdf/web/cmaps/UniGB-UTF32-V.bcmap +0 -0
  200. package/assets/_default/api/pdf/web/cmaps/UniGB-UTF8-H.bcmap +0 -0
  201. package/assets/_default/api/pdf/web/cmaps/UniGB-UTF8-V.bcmap +0 -0
  202. package/assets/_default/api/pdf/web/cmaps/UniJIS-UCS2-H.bcmap +0 -0
  203. package/assets/_default/api/pdf/web/cmaps/UniJIS-UCS2-HW-H.bcmap +0 -0
  204. package/assets/_default/api/pdf/web/cmaps/UniJIS-UCS2-HW-V.bcmap +0 -0
  205. package/assets/_default/api/pdf/web/cmaps/UniJIS-UCS2-V.bcmap +0 -0
  206. package/assets/_default/api/pdf/web/cmaps/UniJIS-UTF16-H.bcmap +0 -0
  207. package/assets/_default/api/pdf/web/cmaps/UniJIS-UTF16-V.bcmap +0 -0
  208. package/assets/_default/api/pdf/web/cmaps/UniJIS-UTF32-H.bcmap +0 -0
  209. package/assets/_default/api/pdf/web/cmaps/UniJIS-UTF32-V.bcmap +0 -0
  210. package/assets/_default/api/pdf/web/cmaps/UniJIS-UTF8-H.bcmap +0 -0
  211. package/assets/_default/api/pdf/web/cmaps/UniJIS-UTF8-V.bcmap +0 -0
  212. package/assets/_default/api/pdf/web/cmaps/UniJIS2004-UTF16-H.bcmap +0 -0
  213. package/assets/_default/api/pdf/web/cmaps/UniJIS2004-UTF16-V.bcmap +0 -0
  214. package/assets/_default/api/pdf/web/cmaps/UniJIS2004-UTF32-H.bcmap +0 -0
  215. package/assets/_default/api/pdf/web/cmaps/UniJIS2004-UTF32-V.bcmap +0 -0
  216. package/assets/_default/api/pdf/web/cmaps/UniJIS2004-UTF8-H.bcmap +0 -0
  217. package/assets/_default/api/pdf/web/cmaps/UniJIS2004-UTF8-V.bcmap +0 -0
  218. package/assets/_default/api/pdf/web/cmaps/UniJISPro-UCS2-HW-V.bcmap +0 -0
  219. package/assets/_default/api/pdf/web/cmaps/UniJISPro-UCS2-V.bcmap +0 -0
  220. package/assets/_default/api/pdf/web/cmaps/UniJISPro-UTF8-V.bcmap +0 -0
  221. package/assets/_default/api/pdf/web/cmaps/UniJISX0213-UTF32-H.bcmap +0 -0
  222. package/assets/_default/api/pdf/web/cmaps/UniJISX0213-UTF32-V.bcmap +0 -0
  223. package/assets/_default/api/pdf/web/cmaps/UniJISX02132004-UTF32-H.bcmap +0 -0
  224. package/assets/_default/api/pdf/web/cmaps/UniJISX02132004-UTF32-V.bcmap +0 -0
  225. package/assets/_default/api/pdf/web/cmaps/UniKS-UCS2-H.bcmap +0 -0
  226. package/assets/_default/api/pdf/web/cmaps/UniKS-UCS2-V.bcmap +0 -0
  227. package/assets/_default/api/pdf/web/cmaps/UniKS-UTF16-H.bcmap +0 -0
  228. package/assets/_default/api/pdf/web/cmaps/UniKS-UTF16-V.bcmap +0 -0
  229. package/assets/_default/api/pdf/web/cmaps/UniKS-UTF32-H.bcmap +0 -0
  230. package/assets/_default/api/pdf/web/cmaps/UniKS-UTF32-V.bcmap +0 -0
  231. package/assets/_default/api/pdf/web/cmaps/UniKS-UTF8-H.bcmap +0 -0
  232. package/assets/_default/api/pdf/web/cmaps/UniKS-UTF8-V.bcmap +0 -0
  233. package/assets/_default/api/pdf/web/cmaps/V.bcmap +0 -0
  234. package/assets/_default/api/pdf/web/cmaps/WP-Symbol.bcmap +0 -0
  235. package/assets/_default/api/pdf/web/compressed.tracemonkey-pldi-09.pdf +0 -0
  236. package/assets/_default/api/pdf/web/debugger.js +0 -1
  237. package/assets/_default/api/pdf/web/images/annotation-check.svg +0 -11
  238. package/assets/_default/api/pdf/web/images/annotation-comment.svg +0 -16
  239. package/assets/_default/api/pdf/web/images/annotation-help.svg +0 -26
  240. package/assets/_default/api/pdf/web/images/annotation-insert.svg +0 -10
  241. package/assets/_default/api/pdf/web/images/annotation-key.svg +0 -11
  242. package/assets/_default/api/pdf/web/images/annotation-newparagraph.svg +0 -11
  243. package/assets/_default/api/pdf/web/images/annotation-noicon.svg +0 -7
  244. package/assets/_default/api/pdf/web/images/annotation-note.svg +0 -42
  245. package/assets/_default/api/pdf/web/images/annotation-paragraph.svg +0 -16
  246. package/assets/_default/api/pdf/web/images/findbarButton-next.svg +0 -4
  247. package/assets/_default/api/pdf/web/images/findbarButton-previous.svg +0 -4
  248. package/assets/_default/api/pdf/web/images/grab.cur +0 -0
  249. package/assets/_default/api/pdf/web/images/grabbing.cur +0 -0
  250. package/assets/_default/api/pdf/web/images/loading-dark.svg +0 -24
  251. package/assets/_default/api/pdf/web/images/loading-icon.gif +0 -0
  252. package/assets/_default/api/pdf/web/images/loading.svg +0 -1
  253. package/assets/_default/api/pdf/web/images/secondaryToolbarButton-documentProperties.svg +0 -15
  254. package/assets/_default/api/pdf/web/images/secondaryToolbarButton-firstPage.svg +0 -1
  255. package/assets/_default/api/pdf/web/images/secondaryToolbarButton-handTool.svg +0 -1
  256. package/assets/_default/api/pdf/web/images/secondaryToolbarButton-lastPage.svg +0 -1
  257. package/assets/_default/api/pdf/web/images/secondaryToolbarButton-rotateCcw.svg +0 -1
  258. package/assets/_default/api/pdf/web/images/secondaryToolbarButton-rotateCw.svg +0 -4
  259. package/assets/_default/api/pdf/web/images/secondaryToolbarButton-scrollHorizontal.svg +0 -1
  260. package/assets/_default/api/pdf/web/images/secondaryToolbarButton-scrollVertical.svg +0 -1
  261. package/assets/_default/api/pdf/web/images/secondaryToolbarButton-scrollWrapped.svg +0 -1
  262. package/assets/_default/api/pdf/web/images/secondaryToolbarButton-selectTool.svg +0 -4
  263. package/assets/_default/api/pdf/web/images/secondaryToolbarButton-spreadEven.svg +0 -1
  264. package/assets/_default/api/pdf/web/images/secondaryToolbarButton-spreadNone.svg +0 -1
  265. package/assets/_default/api/pdf/web/images/secondaryToolbarButton-spreadOdd.svg +0 -1
  266. package/assets/_default/api/pdf/web/images/shadow.png +0 -0
  267. package/assets/_default/api/pdf/web/images/toolbarButton-bookmark.svg +0 -1
  268. package/assets/_default/api/pdf/web/images/toolbarButton-currentOutlineItem.svg +0 -1
  269. package/assets/_default/api/pdf/web/images/toolbarButton-download.svg +0 -4
  270. package/assets/_default/api/pdf/web/images/toolbarButton-menuArrow.svg +0 -1
  271. package/assets/_default/api/pdf/web/images/toolbarButton-openFile.svg +0 -4
  272. package/assets/_default/api/pdf/web/images/toolbarButton-pageDown.svg +0 -7
  273. package/assets/_default/api/pdf/web/images/toolbarButton-pageUp.svg +0 -12
  274. package/assets/_default/api/pdf/web/images/toolbarButton-presentationMode.svg +0 -1
  275. package/assets/_default/api/pdf/web/images/toolbarButton-print.svg +0 -4
  276. package/assets/_default/api/pdf/web/images/toolbarButton-search.svg +0 -4
  277. package/assets/_default/api/pdf/web/images/toolbarButton-secondaryToolbarToggle.svg +0 -4
  278. package/assets/_default/api/pdf/web/images/toolbarButton-sidebarToggle.svg +0 -4
  279. package/assets/_default/api/pdf/web/images/toolbarButton-viewAttachments.svg +0 -1
  280. package/assets/_default/api/pdf/web/images/toolbarButton-viewLayers.svg +0 -1
  281. package/assets/_default/api/pdf/web/images/toolbarButton-viewOutline.svg +0 -1
  282. package/assets/_default/api/pdf/web/images/toolbarButton-viewThumbnail.svg +0 -4
  283. package/assets/_default/api/pdf/web/images/toolbarButton-zoomIn.svg +0 -4
  284. package/assets/_default/api/pdf/web/images/toolbarButton-zoomOut.svg +0 -4
  285. package/assets/_default/api/pdf/web/images/treeitem-collapsed.svg +0 -1
  286. package/assets/_default/api/pdf/web/images/treeitem-expanded.svg +0 -1
  287. package/assets/_default/api/pdf/web/locale/ach/viewer.properties +0 -199
  288. package/assets/_default/api/pdf/web/locale/af/viewer.properties +0 -176
  289. package/assets/_default/api/pdf/web/locale/an/viewer.properties +0 -242
  290. package/assets/_default/api/pdf/web/locale/ar/viewer.properties +0 -246
  291. package/assets/_default/api/pdf/web/locale/ast/viewer.properties +0 -207
  292. package/assets/_default/api/pdf/web/locale/az/viewer.properties +0 -242
  293. package/assets/_default/api/pdf/web/locale/be/viewer.properties +0 -248
  294. package/assets/_default/api/pdf/web/locale/bg/viewer.properties +0 -234
  295. package/assets/_default/api/pdf/web/locale/bn/viewer.properties +0 -236
  296. package/assets/_default/api/pdf/web/locale/bo/viewer.properties +0 -237
  297. package/assets/_default/api/pdf/web/locale/br/viewer.properties +0 -246
  298. package/assets/_default/api/pdf/web/locale/brx/viewer.properties +0 -204
  299. package/assets/_default/api/pdf/web/locale/bs/viewer.properties +0 -193
  300. package/assets/_default/api/pdf/web/locale/ca/viewer.properties +0 -250
  301. package/assets/_default/api/pdf/web/locale/cak/viewer.properties +0 -248
  302. package/assets/_default/api/pdf/web/locale/ckb/viewer.properties +0 -233
  303. package/assets/_default/api/pdf/web/locale/cs/viewer.properties +0 -248
  304. package/assets/_default/api/pdf/web/locale/cy/viewer.properties +0 -248
  305. package/assets/_default/api/pdf/web/locale/da/viewer.properties +0 -248
  306. package/assets/_default/api/pdf/web/locale/de/viewer.properties +0 -248
  307. package/assets/_default/api/pdf/web/locale/dsb/viewer.properties +0 -248
  308. package/assets/_default/api/pdf/web/locale/el/viewer.properties +0 -248
  309. package/assets/_default/api/pdf/web/locale/en-CA/viewer.properties +0 -248
  310. package/assets/_default/api/pdf/web/locale/en-GB/viewer.properties +0 -248
  311. package/assets/_default/api/pdf/web/locale/en-US/viewer.properties +0 -248
  312. package/assets/_default/api/pdf/web/locale/eo/viewer.properties +0 -248
  313. package/assets/_default/api/pdf/web/locale/es-AR/viewer.properties +0 -248
  314. package/assets/_default/api/pdf/web/locale/es-CL/viewer.properties +0 -248
  315. package/assets/_default/api/pdf/web/locale/es-ES/viewer.properties +0 -248
  316. package/assets/_default/api/pdf/web/locale/es-MX/viewer.properties +0 -248
  317. package/assets/_default/api/pdf/web/locale/et/viewer.properties +0 -238
  318. package/assets/_default/api/pdf/web/locale/eu/viewer.properties +0 -248
  319. package/assets/_default/api/pdf/web/locale/fa/viewer.properties +0 -215
  320. package/assets/_default/api/pdf/web/locale/ff/viewer.properties +0 -234
  321. package/assets/_default/api/pdf/web/locale/fi/viewer.properties +0 -248
  322. package/assets/_default/api/pdf/web/locale/fr/viewer.properties +0 -248
  323. package/assets/_default/api/pdf/web/locale/fy-NL/viewer.properties +0 -248
  324. package/assets/_default/api/pdf/web/locale/ga-IE/viewer.properties +0 -176
  325. package/assets/_default/api/pdf/web/locale/gd/viewer.properties +0 -248
  326. package/assets/_default/api/pdf/web/locale/gl/viewer.properties +0 -248
  327. package/assets/_default/api/pdf/web/locale/gn/viewer.properties +0 -248
  328. package/assets/_default/api/pdf/web/locale/gu-IN/viewer.properties +0 -234
  329. package/assets/_default/api/pdf/web/locale/he/viewer.properties +0 -248
  330. package/assets/_default/api/pdf/web/locale/hi-IN/viewer.properties +0 -234
  331. package/assets/_default/api/pdf/web/locale/hr/viewer.properties +0 -248
  332. package/assets/_default/api/pdf/web/locale/hsb/viewer.properties +0 -248
  333. package/assets/_default/api/pdf/web/locale/hu/viewer.properties +0 -248
  334. package/assets/_default/api/pdf/web/locale/hy-AM/viewer.properties +0 -238
  335. package/assets/_default/api/pdf/web/locale/hye/viewer.properties +0 -244
  336. package/assets/_default/api/pdf/web/locale/ia/viewer.properties +0 -248
  337. package/assets/_default/api/pdf/web/locale/id/viewer.properties +0 -248
  338. package/assets/_default/api/pdf/web/locale/is/viewer.properties +0 -231
  339. package/assets/_default/api/pdf/web/locale/it/viewer.properties +0 -190
  340. package/assets/_default/api/pdf/web/locale/ja/viewer.properties +0 -259
  341. package/assets/_default/api/pdf/web/locale/ka/viewer.properties +0 -248
  342. package/assets/_default/api/pdf/web/locale/kab/viewer.properties +0 -248
  343. package/assets/_default/api/pdf/web/locale/kk/viewer.properties +0 -248
  344. package/assets/_default/api/pdf/web/locale/km/viewer.properties +0 -209
  345. package/assets/_default/api/pdf/web/locale/kn/viewer.properties +0 -186
  346. package/assets/_default/api/pdf/web/locale/ko/viewer.properties +0 -248
  347. package/assets/_default/api/pdf/web/locale/lij/viewer.properties +0 -234
  348. package/assets/_default/api/pdf/web/locale/lo/viewer.properties +0 -145
  349. package/assets/_default/api/pdf/web/locale/locale.properties +0 -321
  350. package/assets/_default/api/pdf/web/locale/lt/viewer.properties +0 -248
  351. package/assets/_default/api/pdf/web/locale/ltg/viewer.properties +0 -212
  352. package/assets/_default/api/pdf/web/locale/lv/viewer.properties +0 -234
  353. package/assets/_default/api/pdf/web/locale/meh/viewer.properties +0 -111
  354. package/assets/_default/api/pdf/web/locale/mk/viewer.properties +0 -138
  355. package/assets/_default/api/pdf/web/locale/mr/viewer.properties +0 -230
  356. package/assets/_default/api/pdf/web/locale/ms/viewer.properties +0 -234
  357. package/assets/_default/api/pdf/web/locale/my/viewer.properties +0 -190
  358. package/assets/_default/api/pdf/web/locale/nb-NO/viewer.properties +0 -248
  359. package/assets/_default/api/pdf/web/locale/ne-NP/viewer.properties +0 -176
  360. package/assets/_default/api/pdf/web/locale/nl/viewer.properties +0 -248
  361. package/assets/_default/api/pdf/web/locale/nn-NO/viewer.properties +0 -248
  362. package/assets/_default/api/pdf/web/locale/oc/viewer.properties +0 -248
  363. package/assets/_default/api/pdf/web/locale/pa-IN/viewer.properties +0 -248
  364. package/assets/_default/api/pdf/web/locale/pl/viewer.properties +0 -248
  365. package/assets/_default/api/pdf/web/locale/pt-BR/viewer.properties +0 -248
  366. package/assets/_default/api/pdf/web/locale/pt-PT/viewer.properties +0 -248
  367. package/assets/_default/api/pdf/web/locale/rm/viewer.properties +0 -248
  368. package/assets/_default/api/pdf/web/locale/ro/viewer.properties +0 -240
  369. package/assets/_default/api/pdf/web/locale/ru/viewer.properties +0 -248
  370. package/assets/_default/api/pdf/web/locale/scn/viewer.properties +0 -101
  371. package/assets/_default/api/pdf/web/locale/sco/viewer.properties +0 -248
  372. package/assets/_default/api/pdf/web/locale/si/viewer.properties +0 -201
  373. package/assets/_default/api/pdf/web/locale/sk/viewer.properties +0 -248
  374. package/assets/_default/api/pdf/web/locale/sl/viewer.properties +0 -248
  375. package/assets/_default/api/pdf/web/locale/son/viewer.properties +0 -172
  376. package/assets/_default/api/pdf/web/locale/sq/viewer.properties +0 -235
  377. package/assets/_default/api/pdf/web/locale/sr/viewer.properties +0 -250
  378. package/assets/_default/api/pdf/web/locale/sv-SE/viewer.properties +0 -248
  379. package/assets/_default/api/pdf/web/locale/szl/viewer.properties +0 -246
  380. package/assets/_default/api/pdf/web/locale/ta/viewer.properties +0 -193
  381. package/assets/_default/api/pdf/web/locale/te/viewer.properties +0 -217
  382. package/assets/_default/api/pdf/web/locale/tg/viewer.properties +0 -142
  383. package/assets/_default/api/pdf/web/locale/th/viewer.properties +0 -248
  384. package/assets/_default/api/pdf/web/locale/tl/viewer.properties +0 -242
  385. package/assets/_default/api/pdf/web/locale/tr/viewer.properties +0 -248
  386. package/assets/_default/api/pdf/web/locale/trs/viewer.properties +0 -206
  387. package/assets/_default/api/pdf/web/locale/uk/viewer.properties +0 -248
  388. package/assets/_default/api/pdf/web/locale/ur/viewer.properties +0 -238
  389. package/assets/_default/api/pdf/web/locale/uz/viewer.properties +0 -162
  390. package/assets/_default/api/pdf/web/locale/vi/viewer.properties +0 -248
  391. package/assets/_default/api/pdf/web/locale/wo/viewer.properties +0 -122
  392. package/assets/_default/api/pdf/web/locale/xh/viewer.properties +0 -176
  393. package/assets/_default/api/pdf/web/locale/zh-CN/viewer.properties +0 -248
  394. package/assets/_default/api/pdf/web/locale/zh-TW/viewer.properties +0 -248
  395. package/assets/_default/api/pdf/web/standard_fonts/FoxitDingbats.pfb +0 -0
  396. package/assets/_default/api/pdf/web/standard_fonts/FoxitFixed.pfb +0 -0
  397. package/assets/_default/api/pdf/web/standard_fonts/FoxitFixedBold.pfb +0 -0
  398. package/assets/_default/api/pdf/web/standard_fonts/FoxitFixedBoldItalic.pfb +0 -0
  399. package/assets/_default/api/pdf/web/standard_fonts/FoxitFixedItalic.pfb +0 -0
  400. package/assets/_default/api/pdf/web/standard_fonts/FoxitSans.pfb +0 -0
  401. package/assets/_default/api/pdf/web/standard_fonts/FoxitSansBold.pfb +0 -0
  402. package/assets/_default/api/pdf/web/standard_fonts/FoxitSansBoldItalic.pfb +0 -0
  403. package/assets/_default/api/pdf/web/standard_fonts/FoxitSansItalic.pfb +0 -0
  404. package/assets/_default/api/pdf/web/standard_fonts/FoxitSerif.pfb +0 -0
  405. package/assets/_default/api/pdf/web/standard_fonts/FoxitSerifBold.pfb +0 -0
  406. package/assets/_default/api/pdf/web/standard_fonts/FoxitSerifBoldItalic.pfb +0 -0
  407. package/assets/_default/api/pdf/web/standard_fonts/FoxitSerifItalic.pfb +0 -0
  408. package/assets/_default/api/pdf/web/standard_fonts/FoxitSymbol.pfb +0 -0
  409. package/assets/_default/api/pdf/web/standard_fonts/LICENSE_FOXIT +0 -27
  410. package/assets/_default/api/pdf/web/standard_fonts/LICENSE_LIBERATION +0 -102
  411. package/assets/_default/api/pdf/web/standard_fonts/LiberationSans-Bold.ttf +0 -0
  412. package/assets/_default/api/pdf/web/standard_fonts/LiberationSans-BoldItalic.ttf +0 -0
  413. package/assets/_default/api/pdf/web/standard_fonts/LiberationSans-Italic.ttf +0 -0
  414. package/assets/_default/api/pdf/web/standard_fonts/LiberationSans-Regular.ttf +0 -0
  415. package/assets/_default/api/pdf/web/viewer.css +0 -2746
  416. package/assets/_default/api/pdf/web/viewer.html +0 -398
  417. package/assets/_default/api/pdf/web/viewer.js +0 -2
  418. package/assets/_default/api/pdf/web/viewer.js.LICENSE.txt +0 -21
  419. package/assets/_default/api/pdf/web/viewer.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { Injectable, Inject, ApplicationRef, NgZone, Pipe, NgModule, EventEmitter, Injector, ɵɵdefineInjectable, ɵɵinject, ErrorHandler, Optional, SkipSelf, Component, Input, Output, ViewEncapsulation, ElementRef, Renderer2, Directive, HostListener, ChangeDetectionStrategy, ChangeDetectorRef, ViewChild, HostBinding, ViewContainerRef, ViewChildren, forwardRef, ContentChildren, ANALYZE_FOR_ENTRY_COMPONENTS, InjectionToken, ComponentFactoryResolver, ContentChild, QueryList } from '@angular/core';
1
+ import { Injectable, Inject, ApplicationRef, NgZone, Pipe, NgModule, EventEmitter, Injector, ɵɵdefineInjectable, ɵɵinject, ErrorHandler, Optional, SkipSelf, Component, HostBinding, Input, Output, HostListener, ViewEncapsulation, ElementRef, Renderer2, Directive, ChangeDetectionStrategy, ChangeDetectorRef, ViewChild, ViewContainerRef, ViewChildren, forwardRef, ContentChildren, ANALYZE_FOR_ENTRY_COMPONENTS, InjectionToken, ComponentFactoryResolver, ContentChild, QueryList } from '@angular/core';
2
2
  import { DecimalPipe, PercentPipe, CurrencyPipe, DatePipe, getLocaleDateTimeFormat, FormatWidth, getLocaleTimeFormat, getLocaleDateFormat, CommonModule, Location, PlatformLocation } from '@angular/common';
3
3
  import { HttpClient, HttpResponse, HttpErrorResponse, HttpClientModule, HTTP_INTERCEPTORS, HttpHeaders } from '@angular/common/http';
4
4
  import { ReplaySubject, BehaviorSubject, from, forkJoin, of, Subject, fromEvent, AsyncSubject, Observable } from 'rxjs';
@@ -2876,40 +2876,35 @@ SafeHtmlPipe.ctorParameters = () => [
2876
2876
 
2877
2877
  class SimpleAccordionComponent {
2878
2878
  constructor() {
2879
+ this.role = 'tablist';
2880
+ this._open = false;
2879
2881
  this.onOpen = new EventEmitter();
2880
- this.index = null;
2881
- this.lastIndex = -1;
2882
2882
  }
2883
- set selected(val) {
2884
- this._selected = val;
2883
+ set open(o) {
2884
+ this._open = o;
2885
+ this.onOpen.emit(this.open);
2885
2886
  }
2886
- get selected() {
2887
- return this._selected;
2888
- }
2889
- onTabOpen(e) {
2890
- const index = e.index;
2891
- this.selected = true;
2892
- this.onOpen.emit(this.selected);
2887
+ get open() {
2888
+ return this._open;
2893
2889
  }
2894
- onTabClose(e = false) {
2895
- this.index = this.lastIndex--;
2896
- this.selected = false;
2897
- this.onOpen.emit(this.selected);
2890
+ onKeyDown(e) {
2891
+ e.preventDefault();
2892
+ this.open = !this.open;
2898
2893
  }
2899
2894
  }
2900
2895
  SimpleAccordionComponent.decorators = [
2901
2896
  { type: Component, args: [{
2902
2897
  selector: 'eo-simple-accordion',
2903
- template: "<p-accordion styleClass=\"{{styles}}\"\n [activeIndex]=\"index\"\n (onOpen)=\"onTabOpen($event)\"\n (onClose)=\"onTabClose($event)\">\n <p-accordionTab class=\"{{headerClass}}\" header=\"{{header}}\"\n [selected]=\"selected\">\n <ng-content></ng-content>\n </p-accordionTab>\n</p-accordion>\n",
2904
- styles: [":host ::ng-deep .ui-accordion .ui-accordion-header{background:transparent;border:0}:host ::ng-deep .ui-accordion .ui-accordion-header a{padding:0;text-decoration:none}:host ::ng-deep .ui-accordion .ui-accordion-header:not(.ui-state-active):not(.ui-state-disabled):hover{background:transparent}"]
2898
+ template: "<header tabindex=\"0\" role=\"tab\" (click)=\"open = !open\" (keydown.enter)=\"open = !open\">{{header}}</header>\n<section *ngIf=\"open\" role=\"tabpanel\"><ng-content></ng-content></section>",
2899
+ styles: [":host{--accordion-arrow-color:rgba(0,0,0,0.26);--accordion-outline-color:rgba(0,0,0,0.15)}:host.open>header:before{transform:translateY(.15em) rotate(225deg)}:host>header{-moz-user-select:none;-webkit-user-select:none;align-items:center;background-color:var(--panel-background-grey);border:1px solid var(--accordion-outline-color);border-radius:2px;cursor:pointer;display:flex;padding:calc(var(--app-pane-padding)/4) calc(var(--app-pane-padding)/2);user-select:none}:host>header:focus,:host>header:focus-visible{outline:2px solid var(--color-accent)}:host>header:before{-webkit-margin-end:.5em;border-color:var(--accordion-arrow-color);border-style:solid;border-width:0 2px 2px 0;content:\"\";display:inline-block;height:.5em;margin-inline-end:.5em;transform:translateY(-.15em) rotate(45deg);transition:transform .2s ease-in-out;width:.5em}"]
2905
2900
  },] }
2906
2901
  ];
2907
2902
  SimpleAccordionComponent.propDecorators = {
2903
+ role: [{ type: HostBinding, args: ['attr.role',] }],
2908
2904
  header: [{ type: Input }],
2909
- styles: [{ type: Input }],
2910
- headerClass: [{ type: Input }],
2911
- selected: [{ type: Input }],
2912
- onOpen: [{ type: Output }]
2905
+ onOpen: [{ type: Output }],
2906
+ open: [{ type: HostBinding, args: ['class.open',] }, { type: Input }],
2907
+ onKeyDown: [{ type: HostListener, args: ['keydown.space', ['$event'],] }]
2913
2908
  };
2914
2909
 
2915
2910
  class AccordionModule {
@@ -3329,7 +3324,7 @@ class ClipboardComponent {
3329
3324
  const isCopy = (action === ClipboardAction.COPY);
3330
3325
  const isCut = (action === ClipboardAction.CUT);
3331
3326
  const cutAction = (isCut && this.activeLocation && elements.length && elements[0].contextFolder ? this.activeLocation.id !== elements[0].contextFolder.id : true);
3332
- const baseCondition = this.clipboard && this.activeLocation && elements.length;
3327
+ const baseCondition = this.clipboard && this.activeLocation && elements.length && !elements.some(element => element.isFolder);
3333
3328
  this.isPasteAllowed = baseCondition && cutAction;
3334
3329
  this.isPasteAsContentlinkAllowed = baseCondition && elements[0].contextFolder && isCopy && this.contentAvailableForAllItems(elements);
3335
3330
  // trigger change detction here because this method is called from all subscriptions
@@ -3381,7 +3376,7 @@ class IndexdataSummaryComponent {
3381
3376
  this.item = item;
3382
3377
  this.storageInfos = null;
3383
3378
  if (this.storageAccordion) {
3384
- this.storageAccordion.onTabClose();
3379
+ this.storageAccordion.open = false;
3385
3380
  }
3386
3381
  }
3387
3382
  set diff({ indexdata, indexdata2, baseparams, baseparams2 }) {
@@ -3461,9 +3456,9 @@ class IndexdataSummaryComponent {
3461
3456
  IndexdataSummaryComponent.decorators = [
3462
3457
  { type: Component, args: [{
3463
3458
  selector: 'eo-indexdata-summary',
3464
- template: "<div class=\"empty-container\" *ngIf=\"emptyState\">{{'eo.indexdata.summary.no.change' | translate}}</div>\n<div class=\"indexdata-summary\">\n\n <div class=\"core-section\" *ngIf=\"coreValues?.length\">\n\n <eo-indexdata-summary-entry *ngFor=\"let item of coreValues\"\n [label]=\"item.label\"\n [value]=\"item._value\"\n (onValueClicked)=\"onValueClick($event, item)\">\n </eo-indexdata-summary-entry>\n\n </div>\n <div class=\"data-section\" *ngIf=\"dataValues && dataValues.length\">\n <eo-simple-accordion #dataAccordion\n [header]=\"('eo.indexdata.summary.more' | translate)\"\n [selected]=\"moreInfoAcc\"\n (onOpen)=\"onMoreInfoToggle($event)\">\n <div class=\"data\">\n\n <eo-indexdata-summary-entry *ngFor=\"let item of dataValues\"\n [label]=\"item.label\"\n [value]=\"item._value\"\n (onValueClicked)=\"onValueClick($event, item)\">\n </eo-indexdata-summary-entry>\n </div>\n </eo-simple-accordion>\n </div>\n\n <div class=\"baseparams-section\" *ngIf=\"baseparams\">\n\n <eo-indexdata-summary-entry *ngIf=\"baseparams.modifiedOn && !diffActive\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.modified' | translate\"\n [value]=\"baseparams.modifiedOn | localeDate\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry *ngIf=\"!diffActive\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.modifier' | translate\"\n [value]=\"baseparams.modifiedBy\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry *ngIf=\"baseparams.createdOn && !diffActive\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.created' | translate\"\n [value]=\"baseparams.createdOn | localeDate\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry *ngIf=\"!diffActive\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.creator' | translate\"\n [value]=\"baseparams.createdBy\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry *ngIf=\"!diffActive\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.object.summary.version' | translate\"\n [value]=\"getVersionLink(baseparams.version)\"\n (onValueClicked)=\"onValueClick($event, {version: baseparams.version})\">\n </eo-indexdata-summary-entry>\n\n\n <eo-indexdata-summary-entry [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.filename' | translate\"\n [value]=\"baseparams.contentFileName\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry *ngIf=\"baseparams.contentFileSize\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.filesize' | translate\"\n [value]=\"diffActive ? {val1: baseparams.contentFileSize['val1'] | fileSize, val2: baseparams.contentFileSize['val2'] | fileSize} : (baseparams.contentFileSize | fileSize)\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.mimegroup' | translate\"\n [value]=\"baseparams.mimeGroup\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.mimetype' | translate\"\n [value]=\"baseparams.mimeType\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry *ngIf=\"!diffActive\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.id' | translate\"\n [value]=\"baseparams.id\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry *ngIf=\"baseparams.contentId !== baseparams.id && !diffActive\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.contentId' | translate\"\n [value]=\"baseparams.contentId\">\n </eo-indexdata-summary-entry>\n </div>\n\n <div class=\"storageinfo\" *ngIf=\"item?.content && isUserAllowedToShowStorageSection && !diffActive\">\n <eo-simple-accordion #storageAccordion\n [header]=\"('eo.state.settings.storageinfo' | translate)\"\n [selected]=\"dataInfoAcc\"\n (onOpen)=\"onStorageInfoToggle($event)\">\n\n <div class=\"storageinfo-entry baseparams-section\" *ngIf=\"baseparams\">\n <eo-indexdata-summary-entry [className]=\"'storageinfo-subentry'\"\n [label]=\"'eo.global.baseparam.digest' | translate\"\n [value]=\"baseparams.digest\">\n </eo-indexdata-summary-entry>\n </div>\n\n <div class=\"storageinfo-entry baseparams-section\" *ngFor=\"let stInfo of storageInfos; trackBy: trackByIndex\">\n <eo-indexdata-summary-entry [className]=\"'storageinfo-subentry'\"\n [label]=\"'eo.object.storageinfo.retention' | translate\"\n [value]=\"stInfo.retention | localeDate : 'eoShortDate'\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry [className]=\"'storageinfo-subentry'\"\n [label]=\"'eo.object.storageinfo.permanence' | translate\"\n [value]=\"stInfo.permanence\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry [className]=\"'storageinfo-subentry'\"\n [label]=\"'eo.object.storageinfo.setname' | translate\"\n [value]=\"stInfo.setname\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry [className]=\"'storageinfo-subentry'\"\n [label]=\"'eo.object.storageinfo.storagename' | translate\"\n [value]=\"stInfo.storagename\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry [className]=\"'storageinfo-subentry'\"\n [label]=\"'eo.object.storageinfo.location' | translate\"\n [value]=\"stInfo.location\">\n </eo-indexdata-summary-entry>\n </div>\n </eo-simple-accordion>\n </div>\n\n</div>\n",
3459
+ template: "<div class=\"empty-container\" *ngIf=\"emptyState\">{{'eo.indexdata.summary.no.change' | translate}}</div>\n<div class=\"indexdata-summary\">\n\n <div class=\"core-section\" *ngIf=\"coreValues?.length\">\n\n <eo-indexdata-summary-entry *ngFor=\"let item of coreValues\"\n [label]=\"item.label\"\n [value]=\"item._value\"\n (onValueClicked)=\"onValueClick($event, item)\">\n </eo-indexdata-summary-entry>\n\n </div>\n <div class=\"data-section\" *ngIf=\"dataValues && dataValues.length\">\n <eo-simple-accordion #dataAccordion\n [header]=\"('eo.indexdata.summary.more' | translate)\"\n [open]=\"moreInfoAcc\"\n (onOpen)=\"onMoreInfoToggle($event)\">\n <div class=\"data\">\n\n <eo-indexdata-summary-entry *ngFor=\"let item of dataValues\"\n [label]=\"item.label\"\n [value]=\"item._value\"\n (onValueClicked)=\"onValueClick($event, item)\">\n </eo-indexdata-summary-entry>\n </div>\n </eo-simple-accordion>\n </div>\n\n <div class=\"baseparams-section\" *ngIf=\"baseparams\">\n\n <eo-indexdata-summary-entry *ngIf=\"baseparams.modifiedOn && !diffActive\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.modified' | translate\"\n [value]=\"baseparams.modifiedOn | localeDate\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry *ngIf=\"!diffActive\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.modifier' | translate\"\n [value]=\"baseparams.modifiedBy\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry *ngIf=\"baseparams.createdOn && !diffActive\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.created' | translate\"\n [value]=\"baseparams.createdOn | localeDate\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry *ngIf=\"!diffActive\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.creator' | translate\"\n [value]=\"baseparams.createdBy\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry *ngIf=\"!diffActive\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.object.summary.version' | translate\"\n [value]=\"getVersionLink(baseparams.version)\"\n (onValueClicked)=\"onValueClick($event, {version: baseparams.version})\">\n </eo-indexdata-summary-entry>\n\n\n <eo-indexdata-summary-entry [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.filename' | translate\"\n [value]=\"baseparams.contentFileName\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry *ngIf=\"baseparams.contentFileSize\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.filesize' | translate\"\n [value]=\"diffActive ? {val1: baseparams.contentFileSize['val1'] | fileSize, val2: baseparams.contentFileSize['val2'] | fileSize} : (baseparams.contentFileSize | fileSize)\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.mimegroup' | translate\"\n [value]=\"baseparams.mimeGroup\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.mimetype' | translate\"\n [value]=\"baseparams.mimeType\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry *ngIf=\"!diffActive\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.id' | translate\"\n [value]=\"baseparams.id\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry *ngIf=\"baseparams.contentId !== baseparams.id && !diffActive\"\n [className]=\"'baseparams-section'\"\n [label]=\"'eo.global.baseparam.contentId' | translate\"\n [value]=\"baseparams.contentId\">\n </eo-indexdata-summary-entry>\n </div>\n\n <div class=\"storageinfo\" *ngIf=\"item?.content && isUserAllowedToShowStorageSection && !diffActive\">\n <eo-simple-accordion #storageAccordion\n [header]=\"('eo.state.settings.storageinfo' | translate)\"\n [open]=\"dataInfoAcc\"\n (onOpen)=\"onStorageInfoToggle($event)\">\n\n <div class=\"storageinfo-entry baseparams-section\" *ngIf=\"baseparams\">\n <eo-indexdata-summary-entry [className]=\"'storageinfo-subentry'\"\n [label]=\"'eo.global.baseparam.digest' | translate\"\n [value]=\"baseparams.digest\">\n </eo-indexdata-summary-entry>\n </div>\n\n <div class=\"storageinfo-entry baseparams-section\" *ngFor=\"let stInfo of storageInfos; trackBy: trackByIndex\">\n <eo-indexdata-summary-entry [className]=\"'storageinfo-subentry'\"\n [label]=\"'eo.object.storageinfo.retention' | translate\"\n [value]=\"stInfo.retention | localeDate : 'eoShortDate'\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry [className]=\"'storageinfo-subentry'\"\n [label]=\"'eo.object.storageinfo.permanence' | translate\"\n [value]=\"stInfo.permanence\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry [className]=\"'storageinfo-subentry'\"\n [label]=\"'eo.object.storageinfo.setname' | translate\"\n [value]=\"stInfo.setname\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry [className]=\"'storageinfo-subentry'\"\n [label]=\"'eo.object.storageinfo.storagename' | translate\"\n [value]=\"stInfo.storagename\">\n </eo-indexdata-summary-entry>\n\n <eo-indexdata-summary-entry [className]=\"'storageinfo-subentry'\"\n [label]=\"'eo.object.storageinfo.location' | translate\"\n [value]=\"stInfo.location\">\n </eo-indexdata-summary-entry>\n </div>\n </eo-simple-accordion>\n </div>\n\n</div>\n",
3465
3460
  changeDetection: ChangeDetectionStrategy.OnPush,
3466
- styles: [":host{display:block}:host .baseparams-section,:host .core-section,:host .data-section{line-height:1.5em;list-style:none;margin:0}:host .core-section,:host .data-section{margin-bottom:calc(var(--app-pane-padding)/2)}:host .data-section .data{margin-bottom:var(--app-pane-padding);margin-top:calc(var(--app-pane-padding)/2)}:host::ng-deep .ui-accordion .ui-accordion-content{padding:0}:host .storageinfo,:host .storageinfo .storageinfo-entry{margin-top:var(--app-pane-padding)}:host .empty-container{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}"]
3461
+ styles: [":host{display:block}:host .baseparams-section,:host .core-section,:host .data-section{line-height:1.5em;list-style:none;margin:0}:host .core-section,:host .data-section{margin-bottom:calc(var(--app-pane-padding)/2)}:host .data-section .data{margin-bottom:var(--app-pane-padding);margin-top:calc(var(--app-pane-padding)/2)}:host .storageinfo,:host .storageinfo .storageinfo-entry{margin-top:var(--app-pane-padding)}:host .empty-container{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}"]
3467
3462
  },] }
3468
3463
  ];
3469
3464
  IndexdataSummaryComponent.ctorParameters = () => [
@@ -3528,10 +3523,15 @@ class OverlayComponent {
3528
3523
  this.iconClass = '';
3529
3524
  this.styleClass = '';
3530
3525
  this.active = false;
3526
+ this.onToggle = new EventEmitter();
3531
3527
  }
3532
3528
  onActiveChanged(event) {
3533
3529
  this.active = event;
3534
3530
  }
3531
+ toggle(event) {
3532
+ this.op.toggle(event);
3533
+ this.onToggle.emit();
3534
+ }
3535
3535
  close() {
3536
3536
  if (this.op) {
3537
3537
  this.op.hide();
@@ -3541,7 +3541,7 @@ class OverlayComponent {
3541
3541
  OverlayComponent.decorators = [
3542
3542
  { type: Component, args: [{
3543
3543
  selector: 'eo-overlay',
3544
- template: "<ng-container *ngIf=\"iconSrc;else btn\">\n <eo-icon class=\"overlayIcon button {{iconClass}}\"\n (click)=\"op.toggle($event)\"\n (keyup.enter)=\"op.toggle($event)\"\n [iconSrc]=\"iconSrc\"\n [badge]=\"badge\"\n [ngClass]=\"{active: active}\"\n tabindex=\"0\"\n [iconTitle]=\"iconTitle\"></eo-icon>\n</ng-container>\n<ng-template #btn>\n <div (click)=\"op.toggle($event)\" (keyup.enter)=\"op.toggle($event)\">\n <ng-content select=\".btn\"></ng-content>\n </div>\n</ng-template>\n<p-overlayPanel #op [styleClass]=\"styleClass\" [dismissable]=\"false\" (eoOutsideClick)=\"op.hide()\">\n <ng-content></ng-content>\n</p-overlayPanel>\n",
3544
+ template: "<ng-container *ngIf=\"iconSrc;else btn\">\n <eo-icon class=\"overlayIcon button {{iconClass}}\"\n (click)=\"toggle($event)\"\n (keyup.enter)=\"toggle($event)\"\n [iconSrc]=\"iconSrc\"\n [badge]=\"badge\"\n [ngClass]=\"{active: active}\"\n tabindex=\"0\"\n [iconTitle]=\"iconTitle\"></eo-icon>\n</ng-container>\n<ng-template #btn>\n <div (click)=\"toggle($event)\" (keyup.enter)=\"toggle($event)\">\n <ng-content select=\".btn\"></ng-content>\n </div>\n</ng-template>\n<p-overlayPanel #op [styleClass]=\"styleClass\" [dismissable]=\"false\" (eoOutsideClick)=\"op.hide()\">\n <ng-content></ng-content>\n</p-overlayPanel>\n",
3545
3545
  styles: [":host ::ng-deep eo-icon.active{color:var(--color-accent)}.eo-header-actions :host ::ng-deep p-overlaypanel>.ui-overlaypanel{background-color:var(--color-white);left:inherit!important;right:var(--app-pane-padding)!important;top:calc(var(--app-pane-padding)*3)!important}.eo-grid-header :host ::ng-deep p-overlaypanel>.ui-overlaypanel{background-color:var(--color-white);left:inherit!important;right:var(--app-pane-padding)!important;top:24px!important}.eo-app-bar :host ::ng-deep p-overlaypanel>.ui-overlaypanel{background-color:var(--color-primary-2);top:var(--app-bar-height)!important}.eo-app-bar :host ::ng-deep p-overlaypanel>.ui-overlaypanel .ui-overlaypanel-content{padding:0}"]
3546
3546
  },] }
3547
3547
  ];
@@ -3552,7 +3552,8 @@ OverlayComponent.propDecorators = {
3552
3552
  iconClass: [{ type: Input }],
3553
3553
  styleClass: [{ type: Input }],
3554
3554
  active: [{ type: Input }],
3555
- iconTitle: [{ type: Input }]
3555
+ iconTitle: [{ type: Input }],
3556
+ onToggle: [{ type: Output }]
3556
3557
  };
3557
3558
 
3558
3559
  class ErrorMessageComponent {
@@ -3944,7 +3945,7 @@ const panelLoadingAnimations = trigger('panelLoading', [
3944
3945
  ]);
3945
3946
 
3946
3947
  class AppBarComponent extends UnsubscribeOnDestroy {
3947
- constructor(userService, capabilityService, translate, inboxService, prepareService, clipboard, renderer, router, bpmService, eventService, config) {
3948
+ constructor(userService, capabilityService, translate, inboxService, prepareService, clipboard, renderer, router, bpmService, eventService, config, elemRef) {
3948
3949
  super();
3949
3950
  this.userService = userService;
3950
3951
  this.capabilityService = capabilityService;
@@ -3957,6 +3958,7 @@ class AppBarComponent extends UnsubscribeOnDestroy {
3957
3958
  this.bpmService = bpmService;
3958
3959
  this.eventService = eventService;
3959
3960
  this.config = config;
3961
+ this.elemRef = elemRef;
3960
3962
  this.transparent = false;
3961
3963
  this.sidebarShow = false;
3962
3964
  this.pageVisible = true;
@@ -4016,6 +4018,11 @@ class AppBarComponent extends UnsubscribeOnDestroy {
4016
4018
  });
4017
4019
  });
4018
4020
  }
4021
+ onToggleProfileOverlay() {
4022
+ setTimeout(() => {
4023
+ this.elemRef.nativeElement.querySelector('#settings').focus();
4024
+ });
4025
+ }
4019
4026
  setIconTitles() {
4020
4027
  this.iconTitles = {
4021
4028
  search: this.translate.instant('eo.bar.button.search.tooltip'),
@@ -4081,7 +4088,7 @@ class AppBarComponent extends UnsubscribeOnDestroy {
4081
4088
  AppBarComponent.decorators = [
4082
4089
  { type: Component, args: [{
4083
4090
  selector: 'eo-app-bar',
4084
- template: "<eo-side-bar (eoOutsideClick)=\"sidebarShow = !sidebarShow\" *ngIf=\"sidebarShow\">\n <div class=\"navi\">\n <ng-content select=\"eo-sidebar-plugin.navi\"></ng-content>\n </div>\n <div class=\"help\">\n <ng-content select=\"eo-sidebar-plugin.help\"></ng-content>\n </div>\n</eo-side-bar>\n\n<div class=\"eo-app-bar\" [ngClass]=\"{transparent: transparent}\" eoRtlAware>\n\n <div class=\"left\">\n\n <eo-icon id=\"app-menu\" class=\"menu white\" tabindex=\"0\"\n (click)=\"sidebarShow = !sidebarShow\" (keyup.enter)=\"sidebarShow = !sidebarShow\"\n [iconSrc]=\"'assets/_default/svg/ic_hamburger.svg'\"></eo-icon>\n <eo-icon (click)=\"openDashboard($event.ctrlKey)\" (auxclick)=\"openDashboard(true)\" \n (keyup.enter)=\"openDashboard(false)\" tabindex=\"0\"\n class=\"logo white\" [iconSrc]=\"logo\"></eo-icon>\n\n <div class=\"actions\">\n <a [routerLink]=\"[ {outlets: { modal: 'search' } } ]\">\n <eo-icon id=\"app-search\" class=\"search white\" queryParamsHandling=\"preserve\"\n [iconTitle]=\"iconTitles.search\"\n [iconSrc]=\"'assets/_default/svg/ic_search.svg'\"></eo-icon>\n </a>\n\n <a [routerLink]=\"[ {outlets: { modal: 'add' } } ]\">\n <eo-icon id=\"app-add\" class=\"add white\" *ngIf=\"capabilities.intray\"\n [iconTitle]=\"iconTitles.file\"\n [iconSrc]=\"'assets/_default/svg/ic_add.svg'\"></eo-icon>\n </a> \n <a [routerLink]=\"[ {outlets: { modal: 'actions' } } ]\">\n <eo-icon id=\"app-actions\" class=\"actions white\" *ngIf=\"exeActions\"\n [iconTitle]=\"iconTitles.exeactions\"\n [iconSrc]=\"'assets/_default/svg/ic_bpm_start.svg'\"></eo-icon>\n </a>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"sub\">\n <eo-clipboard></eo-clipboard>\n <eo-app-layout></eo-app-layout>\n </div>\n <a routerLink=\"/favorites\">\n <eo-icon class=\"button white favorite\"\n [iconTitle]=\"iconTitles.favorites\" *ngIf=\"capabilities.favorites\"\n [iconSrc]=\"'assets/_default/svg/ic_favorite.svg'\"></eo-icon>\n </a>\n <a routerLink=\"/prepare\">\n <eo-icon class=\"button white prepare\" *ngIf=\"capabilities.intray\"\n [iconTitle]=\"iconTitles.prepare\"\n [badge]=\"preparedItemsCount\" [iconSrc]=\"'assets/_default/svg/ic_prepare.svg'\"></eo-icon>\n </a>\n <a routerLink=\"/inbox\">\n <eo-icon class=\"button white inbox\" [ngClass]=\"{alert: inboxState?.overduemessages > 0}\" *ngIf=\"capabilities.inbox\"\n [iconTitle]=\"iconTitles.index\"\n [badge]=\"inboxState?.totalmessages\" [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\n </a>\n <eo-overlay #userpanel>\n <eo-user-avatar class=\"btn\" id=\"app-profile\" [showPresence]=\"true\" [title]=\"iconTitles.profile\" tabindex=\"0\"></eo-user-avatar>\n\n <div class=\"eo-profile\" tabindex=\"-1\">\n <div class=\"avatar\" tabindex=\"-1\">\n <eo-user-avatar tabindex=\"-1\" ></eo-user-avatar>\n <div class=\"overlay\" tabindex=\"-1\">\n <div class=\"name\">{{user.firstname}} {{user.lastname}}</div>\n <div class=\"mail\">{{user.email}}</div>\n <div class=\"presence\" *ngIf=\"!user.present\" translate>eo.state.settings.presence.absent</div>\n </div>\n </div>\n <div class=\"nav\" eoTrapFocus>\n <div class=\"nav-item settings\" (click)=\"userpanel?.close()\" >\n <a routerLink=\"/settings\" tabindex=\"0\" routerLinkActive=\"active-link\" focusable translate>eo.bar.button.settings.title</a>\n </div>\n <div class=\"nav-item logout\" *ngIf=\"!capabilities.sso\">\n <a [routerLink]=\"['/enter', { logout: true }]\" routerLinkActive=\"active-link\" translate>eo.bar.button.logout.title</a>\n </div>\n <ng-content select=\"eo-sidebar-plugin.profile\"></ng-content>\n </div>\n </div>\n </eo-overlay>\n\n\n </div>\n</div>\n",
4091
+ template: "<eo-side-bar (eoOutsideClick)=\"sidebarShow = !sidebarShow\" *ngIf=\"sidebarShow\">\n <div class=\"navi\">\n <ng-content select=\"eo-sidebar-plugin.navi\"></ng-content>\n </div>\n <div class=\"help\">\n <ng-content select=\"eo-sidebar-plugin.help\"></ng-content>\n </div>\n</eo-side-bar>\n\n<div class=\"eo-app-bar\" [ngClass]=\"{transparent: transparent}\" eoRtlAware>\n\n <div class=\"left\">\n\n <eo-icon id=\"app-menu\" class=\"menu white\" tabindex=\"0\"\n (click)=\"sidebarShow = !sidebarShow\" (keyup.enter)=\"sidebarShow = !sidebarShow\"\n [iconSrc]=\"'assets/_default/svg/ic_hamburger.svg'\"></eo-icon>\n <eo-icon (click)=\"openDashboard($event.ctrlKey)\" (auxclick)=\"openDashboard(true)\" \n (keyup.enter)=\"openDashboard(false)\" tabindex=\"0\"\n class=\"logo white\" [iconSrc]=\"logo\"></eo-icon>\n\n <div class=\"actions\">\n <a [routerLink]=\"[ {outlets: { modal: 'search' } } ]\">\n <eo-icon id=\"app-search\" class=\"search white\" queryParamsHandling=\"preserve\"\n [iconTitle]=\"iconTitles.search\"\n [iconSrc]=\"'assets/_default/svg/ic_search.svg'\"></eo-icon>\n </a>\n\n <a [routerLink]=\"[ {outlets: { modal: 'add' } } ]\">\n <eo-icon id=\"app-add\" class=\"add white\" *ngIf=\"capabilities.intray\"\n [iconTitle]=\"iconTitles.file\"\n [iconSrc]=\"'assets/_default/svg/ic_add.svg'\"></eo-icon>\n </a> \n <a [routerLink]=\"[ {outlets: { modal: 'actions' } } ]\">\n <eo-icon id=\"app-actions\" class=\"actions white\" *ngIf=\"exeActions\"\n [iconTitle]=\"iconTitles.exeactions\"\n [iconSrc]=\"'assets/_default/svg/ic_bpm_start.svg'\"></eo-icon>\n </a>\n </div>\n </div>\n <div class=\"right\">\n <div class=\"sub\">\n <eo-clipboard></eo-clipboard>\n <eo-app-layout></eo-app-layout>\n </div>\n <a routerLink=\"/favorites\">\n <eo-icon class=\"button white favorite\"\n [iconTitle]=\"iconTitles.favorites\" *ngIf=\"capabilities.favorites\"\n [iconSrc]=\"'assets/_default/svg/ic_favorite.svg'\"></eo-icon>\n </a>\n <a routerLink=\"/prepare\">\n <eo-icon class=\"button white prepare\" *ngIf=\"capabilities.intray\"\n [iconTitle]=\"iconTitles.prepare\"\n [badge]=\"preparedItemsCount\" [iconSrc]=\"'assets/_default/svg/ic_prepare.svg'\"></eo-icon>\n </a>\n <a routerLink=\"/inbox\">\n <eo-icon class=\"button white inbox\" [ngClass]=\"{alert: inboxState?.overduemessages > 0}\" *ngIf=\"capabilities.inbox\"\n [iconTitle]=\"iconTitles.index\"\n [badge]=\"inboxState?.totalmessages\" [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\n </a>\n <eo-overlay #userpanel (onToggle)=\"onToggleProfileOverlay()\">\n <eo-user-avatar class=\"btn\" id=\"app-profile\" [showPresence]=\"true\" [title]=\"iconTitles.profile\" tabindex=\"0\"></eo-user-avatar>\n\n <div class=\"eo-profile\" tabindex=\"-1\">\n <div class=\"avatar\" tabindex=\"-1\">\n <eo-user-avatar tabindex=\"-1\" ></eo-user-avatar>\n <div class=\"overlay\" tabindex=\"-1\">\n <div class=\"name\">{{user.firstname}} {{user.lastname}}</div>\n <div class=\"mail\">{{user.email}}</div>\n <div class=\"presence\" *ngIf=\"!user.present\" translate>eo.state.settings.presence.absent</div>\n </div>\n </div>\n <div class=\"nav\" eoTrapFocus>\n <div class=\"nav-item settings\" (click)=\"userpanel?.close()\" >\n <a routerLink=\"/settings\" id=\"settings\" tabindex=\"0\" routerLinkActive=\"active-link\" focusable translate>eo.bar.button.settings.title</a>\n </div>\n <div class=\"nav-item logout\" *ngIf=\"!capabilities.sso\">\n <a [routerLink]=\"['/enter', { logout: true }]\" routerLinkActive=\"active-link\" translate>eo.bar.button.logout.title</a>\n </div>\n <ng-content select=\"eo-sidebar-plugin.profile\"></ng-content>\n </div>\n </div>\n </eo-overlay>\n\n\n </div>\n</div>\n",
4085
4092
  styles: [":host .eo-app-bar{--profile-dropdown-width:180px;align-items:center;background:var(--color-primary);color:var(--color-white);display:flex;flex-flow:row nowrap;height:var(--app-bar-height);justify-content:space-between;left:0;position:absolute;right:0;top:0;z-index:5}:host .eo-app-bar a:focus eo-icon,:host .eo-app-bar a:hover eo-icon,:host .eo-app-bar eo-icon:focus,:host .eo-app-bar eo-icon:hover{background:rgba(var(--color-white-rgb),.25)}:host .eo-app-bar .left{align-items:center;display:flex;flex-flow:row nowrap;height:var(--app-bar-height)}@media (max-width:480px){:host .eo-app-bar .left{padding-right:0}}:host .eo-app-bar .left eo-icon.menu{background-color:var(--color-accent);box-sizing:border-box;cursor:pointer;height:var(--app-bar-height);padding:20px;width:var(--app-bar-height);z-index:22}:host .eo-app-bar .left eo-icon.menu:focus{outline:1px solid var(--color-white);outline-offset:-1px}:host .eo-app-bar .left eo-icon.logo{background-color:transparent;cursor:pointer;height:auto;margin:0 4px;padding:var(--app-pane-padding) calc(var(--app-pane-padding)*2) var(--app-pane-padding) calc(var(--app-pane-padding)/2);width:104px}@media (max-width:480px){:host .eo-app-bar .left eo-icon.logo{width:80px}}:host .eo-app-bar .left eo-icon.logo:focus{outline:1px solid var(--color-accent)}:host .eo-app-bar .left .actions{align-items:center;display:flex;flex-flow:row nowrap}:host .eo-app-bar .left .actions a eo-icon{border-radius:50%;box-sizing:content-box;color:var(--color-white);cursor:pointer;margin:4px;padding:8px}:host .eo-app-bar .left .actions a:focus eo-icon,:host .eo-app-bar .left .actions a:hover eo-icon{background:var(--color-accent)}:host .eo-app-bar .right,:host .eo-app-bar .right .sub{align-items:center;display:flex;flex-flow:row nowrap}:host .eo-app-bar .right .sub{margin:0 calc(var(--app-pane-padding)/2);padding:calc(var(--app-pane-padding)/4) calc(var(--app-pane-padding)/2)}:host .eo-app-bar .right .sub>*{margin:0 calc(var(--app-pane-padding)/4)}:host .eo-app-bar .right eo-icon{margin:0 4px}:host .eo-app-bar .right eo-icon.alert{position:relative}:host .eo-app-bar .right eo-icon.alert:after{background-color:var(--color-error);bottom:-4px;content:\"\";height:4px;left:0;position:absolute;right:0}@media (max-width:480px){:host .eo-app-bar .right eo-icon{display:none}}:host .eo-app-bar .right #app-profile{border:2px solid transparent;border-radius:50%;cursor:pointer;height:40px;margin:0 var(--app-pane-padding);width:40px}:host .eo-app-bar .right #app-profile:focus,:host .eo-app-bar .right #app-profile:hover{border-color:var(--color-accent)}:host .eo-app-bar .right .eo-profile{background:var(--color-primary);color:var(--color-white);width:var(--profile-dropdown-width)}:host .eo-app-bar .right .eo-profile .avatar{position:relative}:host .eo-app-bar .right .eo-profile .avatar,:host .eo-app-bar .right .eo-profile .avatar eo-user-avatar{height:var(--profile-dropdown-width);width:var(--profile-dropdown-width)}:host .eo-app-bar .right .eo-profile .avatar .overlay{background:rgba(var(--color-primary-rgb),.6);bottom:0;left:0;padding:calc(var(--app-pane-padding)/2) calc(var(--app-pane-padding)/2) calc(var(--app-pane-padding)/2) var(--app-pane-padding);position:absolute;right:0}:host .eo-app-bar .right .eo-profile .avatar .overlay .mail,:host .eo-app-bar .right .eo-profile .avatar .overlay .name{word-break:break-all}:host .eo-app-bar .right .eo-profile .avatar .overlay .mail{font-size:var(--font-caption)}:host .eo-app-bar .right .eo-profile .avatar .overlay .presence{background:var(--color-error);border-radius:2px;color:var(--color-white);display:inline-block;font-size:var(--font-hint);margin-top:calc(var(--app-pane-padding)/2);padding:0 8px 1px}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item{border-bottom:1px solid rgba(var(--color-white-rgb),.1)}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;color:var(--color-white);cursor:pointer;display:block;padding:calc(var(--app-pane-padding)/2);text-decoration:none;transition:all var(--app-default-transition-duration) ease-in-out}[dir=ltr] :host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a{border-left:4px solid transparent}[dir=rtl] :host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a{border-right:4px solid transparent}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a.active-link{background:rgba(var(--color-white-rgb),.06);border-color:var(--color-accent);cursor:default}:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a:not(.active-link):focus,:host .eo-app-bar .right .eo-profile .nav ::ng-deep .nav-item a:not(.active-link):hover{background:rgba(var(--color-white-rgb),.1)}:host .eo-app-bar.transparent{background:transparent}:host .eo-app-bar.transparent .left eo-icon.menu{background-color:transparent}:host .eo-app-bar.transparent .left eo-icon.menu:focus{outline:1px solid var(--color-accent)}@media (max-width:480px){:host .eo-app-bar.rtl .left{padding-left:0;padding-right:var(--app-pane-padding)}}@-webkit-keyframes dropDownAppear{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes dropDownAppear{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}"]
4086
4093
  },] }
4087
4094
  ];
@@ -4096,7 +4103,8 @@ AppBarComponent.ctorParameters = () => [
4096
4103
  { type: Router },
4097
4104
  { type: BpmService },
4098
4105
  { type: EventService },
4099
- { type: Config }
4106
+ { type: Config },
4107
+ { type: ElementRef }
4100
4108
  ];
4101
4109
  AppBarComponent.propDecorators = {
4102
4110
  transparent: [{ type: Input }],
@@ -4829,6 +4837,18 @@ class AppSearchComponent {
4829
4837
  }
4830
4838
  saveQuery() {
4831
4839
  // const queryParams: NavigationExtras = {queryParamsHandling : 'preserve'};
4840
+ let queryHasDynamicList = false;
4841
+ this.query.filters.forEach((filter, index) => {
4842
+ const formElementDynamicList = this.idxSearch.type.elements.find(element => element.qname === filter.property && element.type === 'STRING'
4843
+ && !element.reference && element.classification === 'selector');
4844
+ if (formElementDynamicList) {
4845
+ queryHasDynamicList = true;
4846
+ this.query.filters.splice(index, 1);
4847
+ }
4848
+ });
4849
+ if (queryHasDynamicList) {
4850
+ this.notifications.warning(this.translate.instant('eo.search.save.dynamic.lists.warning'));
4851
+ }
4832
4852
  this.router
4833
4853
  .navigate([{ outlets: { modal: null } }], { replaceUrl: true })
4834
4854
  .then(() => this.router.navigate(['/stored-queries'], { queryParams: { create: true } }));
@@ -6526,7 +6546,7 @@ class DatetimeComponent {
6526
6546
  DatetimeComponent.decorators = [
6527
6547
  { type: Component, args: [{
6528
6548
  selector: 'eo-datetime',
6529
- template: "<!-- non web environments use native pickers -->\n<div class=\"eo-datepicker native\" lang=\"{{locale}}\" *ngIf=\"!isWebEnv; else web\">\n <input type=\"date\" [(ngModel)]=\"value\" *ngIf=\"!withTime\" [readonly]=\"readonly\"/>\n <input type=\"datetime-local\" [(ngModel)]=\"value\" [readonly]=\"readonly\" *ngIf=\"withTime\"/>\n</div>\n\n\n<ng-template #web>\n\n <eo-dialog [styleClass]=\"'date-picker'\" [title]=\"pickerTitle\" [(visible)]=\"showPicker\" *ngIf=\"showPicker\">\n <eo-datepicker [date]=\"value\" [withTime]=\"withTime\" [withAmPm]=\"withAmPm\"\n [onlyFutureDates]=\"onlyFutureDates\"\n [useDatabaseMinimumTime]=\"validateDatabaseTimeRange\"\n (onCanceled)=\"(showPicker = false)\"\n (onDateChanged)=\"setValueFromPicker($event)\"></eo-datepicker>\n </eo-dialog>\n\n <div class=\"eo-datepicker\">\n <p-inputMask [mask]=\"maskPattern\" [(ngModel)]=\"innerValue\"\n (ngModelChange)=\"onMaskValueChange($event)\"\n (onComplete)=\"setValueFromMask()\"\n [readonly]=\"readonly\"\n [autoClear]=\"true\"\n [placeholder]=\"datePattern\"></p-inputMask>\n\n <button class=\"ui-button\" (click)=\"(showPicker = true)\" (keyup.arrowDown)=\"(showPicker = true)\" *ngIf=\"!readonly\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_datepicker.svg'\"></eo-icon>\n </button>\n </div>\n\n</ng-template>\n\n\n\n\n\n",
6549
+ template: "<!-- non web environments use native pickers -->\n<div class=\"eo-datepicker native\" lang=\"{{locale}}\" *ngIf=\"!isWebEnv; else web\">\n <input type=\"date\" [(ngModel)]=\"value\" *ngIf=\"!withTime\" [readonly]=\"readonly\"/>\n <input type=\"datetime-local\" [(ngModel)]=\"value\" [readonly]=\"readonly\" *ngIf=\"withTime\"/>\n</div>\n\n\n<ng-template #web>\n\n <eo-dialog [styleClass]=\"'date-picker'\" [title]=\"pickerTitle\" [(visible)]=\"showPicker\" *ngIf=\"showPicker\">\n <eo-datepicker [date]=\"value\" [withTime]=\"withTime\" [withAmPm]=\"withAmPm\"\n [onlyFutureDates]=\"onlyFutureDates\"\n [useDatabaseMinimumTime]=\"validateDatabaseTimeRange\"\n (onCanceled)=\"(showPicker = false)\"\n (onDateChanged)=\"setValueFromPicker($event)\"></eo-datepicker>\n </eo-dialog>\n\n <div class=\"eo-datepicker\">\n <p-inputMask [mask]=\"maskPattern\" [(ngModel)]=\"innerValue\"\n (ngModelChange)=\"onMaskValueChange($event)\"\n (onComplete)=\"setValueFromMask()\"\n [readonly]=\"readonly\"\n [autoClear]=\"true\"\n [placeholder]=\"readonly ? '' : datePattern\"></p-inputMask>\n\n <button class=\"ui-button\" (click)=\"(showPicker = true)\" (keyup.arrowDown)=\"(showPicker = true)\" *ngIf=\"!readonly\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_datepicker.svg'\"></eo-icon>\n </button>\n </div>\n\n</ng-template>\n\n\n\n\n\n",
6530
6550
  providers: [
6531
6551
  {
6532
6552
  provide: NG_VALUE_ACCESSOR,
@@ -6874,7 +6894,7 @@ FormInputComponent.decorators = [
6874
6894
  { type: Component, args: [{
6875
6895
  selector: 'eo-form-input',
6876
6896
  template: "<div class=\"fe-wrapper\" eoInputFocus [disabled]=\"isDisabled\">\n <div class=\"tag\" *ngIf=\"tag\" title=\"{{tag.title}}\">{{tag.label}}</div>\n <label class=\"form-input__label\" (click)=\"toggle()\">{{_label}}</label>\n <div class=\"control\">\n <ng-content *ngIf=\"!toggled; else tplnull\"></ng-content>\n\n <ng-template #tplnull><span translate>eo.form.input.null</span></ng-template>\n </div>\n</div>\n<div class=\"description\" *ngIf=\"description\">{{description}}</div>\n\n",
6877
- styles: [":host .fe-wrapper{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;align-items:center;border-bottom:1px solid rgba(var(--color-black-rgb),.15);display:flex;flex-flow:row nowrap;padding:calc(var(--app-pane-padding)/4) 0;transition:all var(--app-default-transition-duration) ease-in-out}:host .fe-wrapper.focused{border-color:var(--color-accent)}:host .fe-wrapper.focused>label{color:var(--color-accent)}:host .fe-wrapper>div.control{flex:1 1 auto;order:1;padding:0 calc(var(--app-pane-padding)/4)}:host .fe-wrapper>div.control>span{background-color:var(--color-accent);border-radius:2px;color:var(--color-white);display:inline-block;font-size:var(--font-hint);padding:0 calc(var(--app-pane-padding)/4)}:host .fe-wrapper>.form-input__label{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-moz-user-select:none;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-user-select:none;border-radius:2px;color:var(--text-color-caption);flex:0 1 auto;font-size:var(--font-caption);margin-right:3px;order:2;padding:2px calc(var(--app-pane-padding)/4);text-align:end;transition:all var(--app-default-transition-duration) ease-in-out;user-select:none}:host .fe-wrapper>.tag{background-color:var(--color-primary-2);border-radius:2px;color:var(--color-white);cursor:default;display:inline-block;flex:0 0 auto;font-size:var(--font-hint);line-height:1em;order:3;padding:2px}:host.checkbox .fe-wrapper>label{text-align:start}:host .description{color:var(--text-color-caption);font-size:var(--font-hint);font-style:italic;padding:calc(var(--app-pane-padding)/8) calc(var(--app-pane-padding)/8) 0 calc(var(--app-pane-padding)/8)}:host.required .fe-wrapper>label{background-color:rgba(var(--color-black-rgb),.06)}:host.required .fe-wrapper>label:after{content:\"*\";font-weight:700;padding:0 4px}:host.invalid .fe-wrapper{background:rgba(var(--color-error),.15);border-color:var(--color-error)}:host.invalid .fe-wrapper>label{background-color:var(--color-error);color:var(--color-white);margin:0 4px}:host.invalid .fe-wrapper>label:after{content:\"!\";margin-left:calc(var(--app-pane-padding)/2)}:host.disabled{opacity:.5}:host.checkbox .fe-wrapper{border-color:transparent!important}:host.checkbox .fe-wrapper>div.control{flex:0 0 auto}:host.checkbox .fe-wrapper>label{flex:0 1 auto}:host-context(.dark) .fe-wrapper{border-color:rgba(var(--color-white-rgb),.54)}:host-context(.dark) .fe-wrapper>label{color:rgba(var(--color-white-rgb),.84)}:host-context(.dark) .fe-wrapper.focused{border-color:var(--color-white)}:host-context(.dark) .fe-wrapper.focused>label{color:var(--color-white)}:host-context(.dark) ::ng-deep .ui-dropdown.range{background-color:rgba(var(--color-white-rgb),.1)}:host-context(.fe-wrapper) .fe-wrapper{background:transparent;padding:0}:host ::ng-deep .ui-inputtext,:host ::ng-deep input{align-items:center;border:0!important;display:flex;flex-wrap:wrap;padding:0;width:100%}:host ::ng-deep input{background-color:transparent}:host ::ng-deep button.ui-button{background:rgba(var(--color-black-rgb),.08);border:0;border-radius:2px;color:var(--text-color-caption);cursor:pointer;height:20px;width:20px}:host ::ng-deep button.ui-button.ui-spinner-button:enabled:hover,:host ::ng-deep button.ui-button:enabled:active,:host ::ng-deep button.ui-button:enabled:focus,:host ::ng-deep button.ui-button:enabled:hover{background:var(--color-accent);border:0;color:var(--color-white)}:host ::ng-deep button.ui-button .fa{color:currentColor!important}:host ::ng-deep button.ui-button eo-icon{height:16px;margin:auto;width:16px}:host ::ng-deep .ui-dropdown.range{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;background:rgba(var(--color-black-rgb),.1);border:0;border-radius:2px;margin:0 4px;transition:all var(--app-default-transition-duration) ease-in-out;width:20px!important}:host ::ng-deep .ui-dropdown.range.ui-state-focus{background:var(--color-accent)!important}:host ::ng-deep .ui-dropdown.range.ui-state-focus label{color:var(--color-primary-4)}:host ::ng-deep .ui-dropdown.range:not(.ui-state-disabled):hover{background:rgba(var(--color-black-rgb),.2)}:host ::ng-deep .ui-dropdown.range .ui-dropdown-panel .ui-dropdown-items .ui-dropdown-item{padding:calc(var(--app-pane-padding)/4) calc(var(--app-pane-padding)/2)}:host ::ng-deep .ui-dropdown.range .ui-dropdown-trigger{display:none}:host ::ng-deep .ui-dropdown.range .ui-dropdown-item,:host ::ng-deep .ui-dropdown.range label{display:block;font-family:monospace;text-align:center}:host ::ng-deep .ui-dropdown.range label:after{display:none}"]
6897
+ styles: [":host .fe-wrapper{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;align-items:center;border-bottom:1px solid rgba(var(--color-black-rgb),.15);display:flex;flex-flow:row nowrap;padding:calc(var(--app-pane-padding)/4) 0;transition:all var(--app-default-transition-duration) ease-in-out}:host .fe-wrapper.focused{border-color:var(--color-accent)}:host .fe-wrapper.focused>label{color:var(--color-accent)}:host .fe-wrapper>div.control{flex:1 1 auto;min-width:0;order:1;padding:0 calc(var(--app-pane-padding)/4)}:host .fe-wrapper>div.control>span{background-color:var(--color-accent);border-radius:2px;color:var(--color-white);display:inline-block;font-size:var(--font-hint);padding:0 calc(var(--app-pane-padding)/4)}:host .fe-wrapper>.form-input__label{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-moz-user-select:none;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-user-select:none;border-radius:2px;color:var(--text-color-caption);flex:0 1 auto;font-size:var(--font-caption);margin-right:3px;order:2;padding:2px calc(var(--app-pane-padding)/4);text-align:end;transition:all var(--app-default-transition-duration) ease-in-out;user-select:none}:host .fe-wrapper>.tag{background-color:var(--color-primary-2);border-radius:2px;color:var(--color-white);cursor:default;display:inline-block;flex:0 0 auto;font-size:var(--font-hint);line-height:1em;order:3;padding:2px}:host.checkbox .fe-wrapper>label{text-align:start}:host .description{color:var(--text-color-caption);font-size:var(--font-hint);font-style:italic;padding:calc(var(--app-pane-padding)/8) calc(var(--app-pane-padding)/8) 0 calc(var(--app-pane-padding)/8)}:host.required .fe-wrapper>label{background-color:rgba(var(--color-black-rgb),.06)}:host.required .fe-wrapper>label:after{content:\"*\";font-weight:700;padding:0 4px}:host.invalid .fe-wrapper{background:rgba(var(--color-error),.15);border-color:var(--color-error)}:host.invalid .fe-wrapper>label{background-color:var(--color-error);color:var(--color-white);margin:0 4px}:host.invalid .fe-wrapper>label:after{content:\"!\";margin-left:calc(var(--app-pane-padding)/2)}:host.checkbox .fe-wrapper{border-color:transparent!important}:host.checkbox .fe-wrapper>div.control{flex:0 0 auto}:host.checkbox .fe-wrapper>label{flex:0 1 auto}:host-context(.dark) .fe-wrapper{border-color:rgba(var(--color-white-rgb),.54)}:host-context(.dark) .fe-wrapper>label{color:rgba(var(--color-white-rgb),.84)}:host-context(.dark) .fe-wrapper.focused{border-color:var(--color-white)}:host-context(.dark) .fe-wrapper.focused>label{color:var(--color-white)}:host-context(.dark) ::ng-deep .ui-dropdown.range{background-color:rgba(var(--color-white-rgb),.1)}:host-context(.fe-wrapper) .fe-wrapper{background:transparent;padding:0}:host ::ng-deep .ui-inputtext,:host ::ng-deep input{align-items:center;border:0!important;display:flex;flex-wrap:wrap;padding:0;width:100%}:host ::ng-deep input{background-color:transparent}:host ::ng-deep button.ui-button{background:rgba(var(--color-black-rgb),.08);border:0;border-radius:2px;color:var(--text-color-caption);cursor:pointer;height:20px;width:20px}:host ::ng-deep button.ui-button.ui-spinner-button:enabled:hover,:host ::ng-deep button.ui-button:enabled:active,:host ::ng-deep button.ui-button:enabled:focus,:host ::ng-deep button.ui-button:enabled:hover{background:var(--color-accent);border:0;color:var(--color-white)}:host ::ng-deep button.ui-button .fa{color:currentColor!important}:host ::ng-deep button.ui-button eo-icon{height:16px;margin:auto;width:16px}:host ::ng-deep .ui-dropdown.range{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;background:rgba(var(--color-black-rgb),.1);border:0;border-radius:2px;margin:0 4px;transition:all var(--app-default-transition-duration) ease-in-out;width:20px!important}:host ::ng-deep .ui-dropdown.range.ui-state-focus{background:var(--color-accent)!important}:host ::ng-deep .ui-dropdown.range.ui-state-focus label{color:var(--color-primary-4)}:host ::ng-deep .ui-dropdown.range:not(.ui-state-disabled):hover{background:rgba(var(--color-black-rgb),.2)}:host ::ng-deep .ui-dropdown.range .ui-dropdown-panel .ui-dropdown-items .ui-dropdown-item{padding:calc(var(--app-pane-padding)/4) calc(var(--app-pane-padding)/2)}:host ::ng-deep .ui-dropdown.range .ui-dropdown-trigger{display:none}:host ::ng-deep .ui-dropdown.range .ui-dropdown-item,:host ::ng-deep .ui-dropdown.range label{display:block;font-family:monospace;text-align:center}:host ::ng-deep .ui-dropdown.range label:after{display:none}"]
6878
6898
  },] }
6879
6899
  ];
6880
6900
  FormInputComponent.propDecorators = {
@@ -7126,7 +7146,7 @@ IdReferenceComponent.decorators = [
7126
7146
  multi: true
7127
7147
  }
7128
7148
  ],
7129
- styles: [".eo-id-reference{align-items:center;display:flex}.eo-id-reference__element{align-self:center;display:flex;flex-wrap:wrap}.eo-id-reference .ui-button:disabled{cursor:default}::ng-deep .reference-field-dialog{width:577px}::ng-deep .ref-type-icon{height:16px;width:16px}::ng-deep .deleted-reference-label{color:var(--color-error)}::ng-deep .label{display:flex;flex-flow:column;margin-left:4px;margin-right:1em}::ng-deep .label>span{font-size:var(--font-hint)}::ng-deep .label.rtl{margin-left:1em;margin-right:4px}::ng-deep .remove-icon{color:var(--text-color-hint);flex:0 0 auto;height:14px;width:14px}::ng-deep .remove-icon:hover{color:var(--text-color-caption);cursor:pointer}::ng-deep .ui-autocomplete.xxx .ui-autocomplete-multiple-container.ui-inputtext{cursor:default}::ng-deep .ui-autocomplete.xxx .ui-autocomplete-input-token{display:none}p-autoComplete{width:100%}"]
7149
+ styles: [".eo-id-reference{align-items:center;display:flex}.eo-id-reference__element{align-self:center;display:flex;flex-wrap:wrap}.eo-id-reference .ui-button:disabled{cursor:default}::ng-deep .reference-field-dialog{width:577px}::ng-deep .ref-type-icon{height:16px;width:16px}::ng-deep .deleted-reference-label{color:var(--color-error)}::ng-deep .label{display:flex;display:inline-block;flex-flow:column;margin-left:4px;margin-right:1em;max-width:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}::ng-deep .label>span{font-size:var(--font-hint)}::ng-deep .label.rtl{margin-left:1em;margin-right:4px}::ng-deep .remove-icon{color:var(--text-color-hint);flex:0 0 auto;height:14px;width:14px}::ng-deep .remove-icon:hover{color:var(--text-color-caption);cursor:pointer}::ng-deep .ui-autocomplete.xxx .ui-autocomplete-multiple-container.ui-inputtext{cursor:default}::ng-deep .ui-autocomplete.xxx .ui-autocomplete-input-token{display:none}p-autoComplete{width:100%}"]
7130
7150
  },] }
7131
7151
  ];
7132
7152
  IdReferenceComponent.ctorParameters = () => [
@@ -7297,7 +7317,7 @@ class ReferenceFinderComponent {
7297
7317
  this.resultList = this.referenceFinderService.generateResults(this.clipboardItems, hits, this.currentSelection, this.types);
7298
7318
  }
7299
7319
  else {
7300
- this.resultList = [];
7320
+ this.searchTerm$.next('*');
7301
7321
  this.clipboardOpen = true;
7302
7322
  }
7303
7323
  this.markedItem = null;
@@ -7487,9 +7507,9 @@ class ReferenceFinderComponent {
7487
7507
  ReferenceFinderComponent.decorators = [
7488
7508
  { type: Component, args: [{
7489
7509
  selector: 'eo-reference-finder',
7490
- template: "\n<section class=\"reference-finder-search--input\">\n <input #searchInput autofocus tabindex=\"1\" (input)=\"searchTerm$.next($event.target.value)\" class=\"search\" type=\"text\" placeholder=\"{{('eo.search.result.term' | translate)}}\"/>\n</section>\n\n<section class=\"reference-finder--content\">\n <div class=\"results\">\n <eo-simple-accordion *ngIf=\"clipboardItems.length && !copyOnly\"\n [header]=\"'eo.clipboard.type.copy' | translate\"\n [selected]=\"clipboardOpen\"\n (onOpen)=\"clipboardOpen = $event;\"\n class=\"results-accordion\">\n <eo-reference-finder-entry *ngFor=\"let list of clipboardItems\" #entry\n [@fadeInOut]\n [list]=\"list\"\n [multiselect]=\"multiselect\"\n (selectReference)=\"selectReference($event)\"\n [marked]=\"list.id === markedItem?.id\"\n >\n </eo-reference-finder-entry>\n </eo-simple-accordion>\n\n <section *ngIf=\"clipboardItems.length && copyOnly\">\n <eo-reference-finder-entry *ngFor=\"let list of clipboardItems\" #entry\n [@fadeInOut]\n [list]=\"list\"\n [multiselect]=\"multiselect\"\n (selectReference)=\"selectReference($event)\"\n [marked]=\"list.id === markedItem?.id\"\n >\n </eo-reference-finder-entry>\n </section>\n <div class=\"padding\"></div>\n\n <eo-simple-accordion *ngIf=\"resultList.length && !searchOnly\" [header]=\"'eo.search.title' | translate\" [selected]=\"true\" class=\"results-accordion\">\n <eo-reference-finder-entry *ngFor=\"let list of resultList\" #entry\n [@fadeInOut]\n [list]=\"list\"\n [multiselect]=\"multiselect\"\n (selectReference)=\"selectReference($event)\"\n [marked]=\"list.id === markedItem?.id\"\n >\n </eo-reference-finder-entry>\n </eo-simple-accordion>\n\n <section *ngIf=\"resultList.length && searchOnly\">\n <eo-reference-finder-entry *ngFor=\"let list of resultList\" #entry\n [@fadeInOut]\n [list]=\"list\"\n [multiselect]=\"multiselect\"\n (selectReference)=\"selectReference($event)\"\n [marked]=\"list.id === markedItem?.id\"\n >\n </eo-reference-finder-entry>\n </section>\n </div>\n\n\n <div class=\"cta\">\n <button type=\"button\" *ngIf=\"multiselect\" (click)=\"selectAllEntries()\">{{('eo.cta.button.select.all' | translate)}}</button>\n <button type=\"button\" class=\"add\" (click)=\"addItems()\" *ngIf=\"!disableAdd\" [@fadeInOut] [class.active]=\"!disableAdd\" [disabled]=\"disableAdd\" [title]=\"'eo.cta.button.add' | translate\">\n {{('eo.cta.button.add' | translate)}}\n </button>\n </div>\n</section>\n",
7510
+ template: "\n<section class=\"reference-finder-search--input\">\n <input #searchInput autofocus tabindex=\"1\" (input)=\"searchTerm$.next($event.target.value)\" class=\"search\" type=\"text\" placeholder=\"{{('eo.search.result.term' | translate)}}\"/>\n</section>\n\n<section class=\"reference-finder--content\">\n <div class=\"results\">\n <eo-simple-accordion *ngIf=\"clipboardItems.length && !copyOnly\"\n [header]=\"'eo.clipboard.type.copy' | translate\"\n [open]=\"clipboardOpen\"\n (onOpen)=\"clipboardOpen = $event;\"\n class=\"results-accordion\">\n <eo-reference-finder-entry *ngFor=\"let list of clipboardItems\" #entry\n [@fadeInOut]\n [list]=\"list\"\n [multiselect]=\"multiselect\"\n (selectReference)=\"selectReference($event)\"\n [marked]=\"list.id === markedItem?.id\"\n >\n </eo-reference-finder-entry>\n </eo-simple-accordion>\n\n <section *ngIf=\"clipboardItems.length && copyOnly\">\n <eo-reference-finder-entry *ngFor=\"let list of clipboardItems\" #entry\n [@fadeInOut]\n [list]=\"list\"\n [multiselect]=\"multiselect\"\n (selectReference)=\"selectReference($event)\"\n [marked]=\"list.id === markedItem?.id\"\n >\n </eo-reference-finder-entry>\n </section>\n <div class=\"padding\"></div>\n\n <eo-simple-accordion *ngIf=\"resultList.length && !searchOnly\" [header]=\"'eo.search.title' | translate\" [open]=\"true\" class=\"results-accordion\">\n <eo-reference-finder-entry *ngFor=\"let list of resultList\" #entry\n [@fadeInOut]\n [list]=\"list\"\n [multiselect]=\"multiselect\"\n (selectReference)=\"selectReference($event)\"\n [marked]=\"list.id === markedItem?.id\"\n >\n </eo-reference-finder-entry>\n </eo-simple-accordion>\n\n <section *ngIf=\"resultList.length && searchOnly\">\n <eo-reference-finder-entry *ngFor=\"let list of resultList\" #entry\n [@fadeInOut]\n [list]=\"list\"\n [multiselect]=\"multiselect\"\n (selectReference)=\"selectReference($event)\"\n [marked]=\"list.id === markedItem?.id\"\n >\n </eo-reference-finder-entry>\n </section>\n </div>\n\n\n <div class=\"cta\">\n <button type=\"button\" *ngIf=\"multiselect\" (click)=\"selectAllEntries()\">{{('eo.cta.button.select.all' | translate)}}</button>\n <button type=\"button\" class=\"add\" (click)=\"addItems()\" *ngIf=\"!disableAdd\" [@fadeInOut] [class.active]=\"!disableAdd\" [disabled]=\"disableAdd\" [title]=\"'eo.cta.button.add' | translate\">\n {{('eo.cta.button.add' | translate)}}\n </button>\n </div>\n</section>\n",
7491
7511
  animations: [fadeInOut],
7492
- styles: [".reference-finder-search--input{background-color:var(--color-accent);grid-template-areas:\"search\";padding:var(--app-pane-padding)}.reference-finder--content,.reference-finder-search--input{display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr}.reference-finder--content{align-items:center;grid-template-areas:\"results\" \"cta\"}.search{-ms-grid-column:1;-ms-grid-row:1;border:0;border:1px solid var(--panel-background-grey);box-shadow:0 2px 2px 0 rgba(0,0,0,.2);box-sizing:border-box;font-size:var(--font-title);grid-area:search;padding:calc(var(--app-pane-padding)/2);width:100%}.search-result--hint{font-size:var(--font-caption)}.results{-ms-grid-column:1;-ms-grid-row:1;grid-area:results;height:330px;margin:var(--app-pane-padding);overflow:scroll}.results-accordion:nth-child(odd){margin-bottom:10px}.cta{align-items:center;border-top:1px solid rgba(var(--color-black-rgb),.1);display:flex;justify-content:space-between;padding:var(--app-pane-padding)}.add{grid-area:add}.add.active{background-color:var(--color-accent);color:var(--color-white)}.padding{padding:5px}:host ::-webkit-scrollbar{width:5px}:host ::ng-deep .ui-accordion-content{padding:1em 0}:host ::ng-deep .ui-accordion-header-text{color:var(--color-black);font-size:var(--font-subhead)}"]
7512
+ styles: [".reference-finder-search--input{background-color:var(--color-accent);grid-template-areas:\"search\";padding:var(--app-pane-padding)}.reference-finder--content,.reference-finder-search--input{display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr}.reference-finder--content{align-items:center;grid-template-areas:\"results\" \"cta\"}.search{-ms-grid-column:1;-ms-grid-row:1;border:0;border:1px solid var(--panel-background-grey);box-shadow:0 2px 2px 0 rgba(0,0,0,.2);box-sizing:border-box;font-size:var(--font-title);grid-area:search;padding:calc(var(--app-pane-padding)/2);width:100%}.search-result--hint{font-size:var(--font-caption)}.results{-ms-grid-column:1;-ms-grid-row:1;grid-area:results;height:330px;margin:var(--app-pane-padding);overflow:scroll}.results-accordion:nth-child(odd){margin-bottom:10px}.cta{align-items:center;border-top:1px solid rgba(var(--color-black-rgb),.1);display:flex;justify-content:space-between;padding:var(--app-pane-padding)}.add{grid-area:add}.add.active{background-color:var(--color-accent);color:var(--color-white)}.padding{padding:5px}:host ::-webkit-scrollbar{width:5px}:host ::ng-deep .ui-accordion-content{padding:1em 0}"]
7493
7513
  },] }
7494
7514
  ];
7495
7515
  ReferenceFinderComponent.ctorParameters = () => [
@@ -7919,7 +7939,7 @@ OrganizationComponent.decorators = [
7919
7939
  multi: true
7920
7940
  }
7921
7941
  ],
7922
- styles: [".eo-organization .ui-autocomplete-token-label{display:inline-block}.eo-organization .fa.fa-user,.eo-organization .fa.fa-users{margin:0 4px;text-align:center;width:18px}:host.readonly ::ng-deep .ui-autocomplete-token-icon{display:none}:host ::ng-deep .ui-autocomplete-token{border:none!important;margin:0!important;padding:0!important}:host ::ng-deep .ui-autocomplete-token .token{align-items:center;border:1px solid rgba(0,0,0,.1);display:flex;padding:2px}:host ::ng-deep .ui-autocomplete-token-icon{opacity:1}[dir=ltr] :host ::ng-deep .ui-autocomplete-token-icon{margin-right:4px}[dir=rtl] :host ::ng-deep .ui-autocomplete-token-icon{margin-left:4px}:host ::ng-deep .ui-autocomplete-token-icon.del{color:var(--color-white)!important}:host ::ng-deep .deleted-user-label{color:var(--color-error)}:host ::ng-deep .eo-organization.acInputHidden .ui-autocomplete-input-token{margin:0;padding:0;width:0!important}:host ::ng-deep .eo-organization.acInputHidden .ui-autocomplete-input-token input{width:0!important}"]
7942
+ styles: [".eo-organization .ui-autocomplete-token-label{display:inline-block}.eo-organization .fa.fa-user,.eo-organization .fa.fa-users{margin:0 4px;text-align:center;width:18px}:host.readonly ::ng-deep .ui-autocomplete-token-icon{display:none}:host ::ng-deep .ui-autocomplete-token{border:none!important;margin:0!important;padding:0!important}:host ::ng-deep .ui-autocomplete-token .token{align-items:center;border:1px solid rgba(0,0,0,.1);display:flex;overflow:hidden;padding:2px}:host ::ng-deep .ui-autocomplete-token-icon{opacity:1}[dir=ltr] :host ::ng-deep .ui-autocomplete-token-icon{margin-right:4px}[dir=rtl] :host ::ng-deep .ui-autocomplete-token-icon{margin-left:4px}:host ::ng-deep .ui-autocomplete-token-icon.del{color:var(--color-white)!important}:host ::ng-deep .deleted-user-label{color:var(--color-error)}:host ::ng-deep .eo-organization.acInputHidden .ui-autocomplete-input-token{margin:0;padding:0;width:0!important}:host ::ng-deep .eo-organization.acInputHidden .ui-autocomplete-input-token input{width:0!important}"]
7923
7943
  },] }
7924
7944
  ];
7925
7945
  OrganizationComponent.ctorParameters = () => [
@@ -8171,7 +8191,7 @@ class StringComponent {
8171
8191
  };
8172
8192
  }
8173
8193
  set autocomplete(autoCom) {
8174
- this._autocomplete = this.envService.isCloud() ? false : autoCom;
8194
+ this._autocomplete = autoCom;
8175
8195
  }
8176
8196
  get autocomplete() {
8177
8197
  return this._autocomplete;
@@ -8367,7 +8387,7 @@ StringComponent.decorators = [
8367
8387
  multi: true
8368
8388
  }
8369
8389
  ],
8370
- styles: [".eo-form-string{align-items:center;display:flex;flex-flow:row nowrap}.eo-form-string p-autocomplete{width:100%}.eo-form-string .classify a{color:var(--text-color-hint)}.eo-form-string .classify a:focus,.eo-form-string .classify a:hover{color:var(--text-color-caption)}.eo-form-string .classify.empty{display:none}.eo-form-string .input-textarea{resize:vertical}.eo-form-string .input-textarea.size-small{height:4em}.eo-form-string .input-textarea.size-medium{height:6em}.eo-form-string .input-textarea.size-large{height:8em}:host ::ng-deep input{width:100%}:host ::ng-deep p-chips .ui-state-disabled .ui-chips-input-token{display:none}:host ::ng-deep p-chips{width:100%}"]
8390
+ styles: [".eo-form-string{align-items:center;display:flex;flex-flow:row nowrap}.eo-form-string p-autocomplete{width:100%}.eo-form-string .classify a{color:var(--text-color-hint)}.eo-form-string .classify a:focus,.eo-form-string .classify a:hover{color:var(--text-color-caption)}.eo-form-string .classify.empty{display:none}.eo-form-string .input-textarea{resize:vertical}.eo-form-string .input-textarea.size-small{height:4em}.eo-form-string .input-textarea.size-medium{height:6em}.eo-form-string .input-textarea.size-large{height:8em}:host ::ng-deep input{width:100%}:host ::ng-deep p-chips .ui-state-disabled .ui-chips-input-token{display:none}:host ::ng-deep .ui-chips-input-token{flex:1;min-width:10ch}:host ::ng-deep p-chips{width:100%}"]
8371
8391
  },] }
8372
8392
  ];
8373
8393
  StringComponent.ctorParameters = () => [
@@ -11782,7 +11802,7 @@ class DatetimeFilterComponent extends DatetimeComponent {
11782
11802
  DatetimeFilterComponent.decorators = [
11783
11803
  { type: Component, args: [{
11784
11804
  selector: 'eo-datetime-custom',
11785
- template: "<!-- non web environments use native pickers -->\n<div class=\"eo-datepicker native\" lang=\"{{locale}}\" *ngIf=\"!isWebEnv; else web\">\n <input type=\"date\" [(ngModel)]=\"value\" *ngIf=\"!withTime\" [readonly]=\"readonly\"/>\n <input type=\"datetime-local\" [(ngModel)]=\"value\" [readonly]=\"readonly\" *ngIf=\"withTime\"/>\n</div>\n\n\n<ng-template #web>\n\n <eo-dialog [styleClass]=\"'date-picker'\" [title]=\"pickerTitle\" [(visible)]=\"showPicker\" *ngIf=\"showPicker\">\n <eo-datepicker [date]=\"value\" [withTime]=\"withTime\" [withAmPm]=\"withAmPm\"\n [onlyFutureDates]=\"onlyFutureDates\"\n [useDatabaseMinimumTime]=\"validateDatabaseTimeRange\"\n (onCanceled)=\"(showPicker = false)\"\n (onDateChanged)=\"setValueFromPicker($event)\"></eo-datepicker>\n </eo-dialog>\n\n <div class=\"eo-datepicker\">\n <p-inputMask [mask]=\"maskPattern\" [(ngModel)]=\"innerValue\"\n (ngModelChange)=\"onMaskValueChange($event)\"\n (onComplete)=\"setValueFromMask()\"\n [readonly]=\"readonly\"\n [autoClear]=\"true\"\n [placeholder]=\"datePattern\"></p-inputMask>\n\n <button class=\"ui-button\" (click)=\"(showPicker = true)\" (keyup.arrowDown)=\"(showPicker = true)\" *ngIf=\"!readonly\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_datepicker.svg'\"></eo-icon>\n </button>\n </div>\n\n</ng-template>\n\n\n\n\n\n",
11805
+ template: "<!-- non web environments use native pickers -->\n<div class=\"eo-datepicker native\" lang=\"{{locale}}\" *ngIf=\"!isWebEnv; else web\">\n <input type=\"date\" [(ngModel)]=\"value\" *ngIf=\"!withTime\" [readonly]=\"readonly\"/>\n <input type=\"datetime-local\" [(ngModel)]=\"value\" [readonly]=\"readonly\" *ngIf=\"withTime\"/>\n</div>\n\n\n<ng-template #web>\n\n <eo-dialog [styleClass]=\"'date-picker'\" [title]=\"pickerTitle\" [(visible)]=\"showPicker\" *ngIf=\"showPicker\">\n <eo-datepicker [date]=\"value\" [withTime]=\"withTime\" [withAmPm]=\"withAmPm\"\n [onlyFutureDates]=\"onlyFutureDates\"\n [useDatabaseMinimumTime]=\"validateDatabaseTimeRange\"\n (onCanceled)=\"(showPicker = false)\"\n (onDateChanged)=\"setValueFromPicker($event)\"></eo-datepicker>\n </eo-dialog>\n\n <div class=\"eo-datepicker\">\n <p-inputMask [mask]=\"maskPattern\" [(ngModel)]=\"innerValue\"\n (ngModelChange)=\"onMaskValueChange($event)\"\n (onComplete)=\"setValueFromMask()\"\n [readonly]=\"readonly\"\n [autoClear]=\"true\"\n [placeholder]=\"readonly ? '' : datePattern\"></p-inputMask>\n\n <button class=\"ui-button\" (click)=\"(showPicker = true)\" (keyup.arrowDown)=\"(showPicker = true)\" *ngIf=\"!readonly\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_datepicker.svg'\"></eo-icon>\n </button>\n </div>\n\n</ng-template>\n\n\n\n\n\n",
11786
11806
  styles: [":host .eo-datepicker{align-items:center;display:flex;flex-flow:row nowrap}:host ::ng-deep p-inputmask{flex:1 1 auto}:host ::ng-deep p-inputmask input{background:transparent;border:0;width:100%}"]
11787
11807
  },] }
11788
11808
  ];
@@ -11847,7 +11867,7 @@ OrganizationFilterComponent.decorators = [
11847
11867
  { type: Component, args: [{
11848
11868
  selector: 'eo-organization-filter',
11849
11869
  template: "<div class=\"eo-organization\" [ngClass]=\"{acInputHidden: !multiselect && innerValue.length}\">\n\n <p-autoComplete [(ngModel)]=\"innerValue\" [minLength]=\"1\" #autocomplete\n (onSelect)=\"onSelect($event)\" (onUnselect)=\"onUnselect($event)\"\n (onBlur)=\"onAutoCompleteBlur()\"\n [readonly]=\"readonly\"\n [disabled]=\"readonly\"\n [placeholder]=\"placeholder\"\n [suggestions]=\"autocompleteRes\" field=\"title\"\n (completeMethod)=\"autocompleteFn($event)\" [multiple]=\"true\">\n\n <!-- template for the suggest list -->\n <ng-template let-item pTemplate=\"item\">\n <i class=\"fa {{item.type === 'group' ? 'fa-users' : 'fa-user'}}\"></i>\n <span *ngIf=\"(item.firstname?.length && item.lastname?.length) || item.type === 'group'\" class=\"ui-autocomplete-token-label\">{{item.title}} ({{item.name}})</span>\n <span *ngIf=\"!item.firstname?.length && !item.lastname?.length && item.type !== 'group'\" class=\"ui-autocomplete-token-label\">({{item.name}})</span>\n <span *ngIf=\"!item.firstname?.length && item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.lastname}} ({{item.name}})</span>\n <span *ngIf=\"item.firstname?.length && !item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.firstname}} ({{item.name}})</span>\n </ng-template>\n\n <!-- template for the selected items when multiple -->\n <ng-template let-item pTemplate=\"selectedItem\">\n <div class=\"token\">\n <i class=\"fa {{item.type === 'group' ? 'fa-users' : 'fa-user'}}\" [ngClass]=\"{'deleted-user-label': !item.firstname?.length && !item.lastname?.length && !item.active && !item.type}\"></i>\n <span *ngIf=\"(item.firstname?.length && item.lastname?.length && item.active) || item.type === 'group'\" class=\"ui-autocomplete-token-label\">{{item.title}} ({{item.name}})</span>\n <span *ngIf=\"(!item.firstname?.length && !item.lastname?.length && !item.active && !item.type)\" class=\"ui-autocomplete-token-label deleted-user-label\">{{'eo.form.property.organization.error.usernotfound'|translate}}</span>\n <span *ngIf=\"!item.firstname?.length && !item.lastname?.length && item.active && item.type !== 'group'\" class=\"ui-autocomplete-token-label\">({{item.name}})</span>\n <span *ngIf=\"!item.firstname?.length && item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.lastname}} ({{item.name}})</span>\n <span *ngIf=\"item.firstname?.length && !item.lastname?.length\" class=\"ui-autocomplete-token-label\">{{item.firstname}} ({{item.name}})</span>\n </div>\n </ng-template>\n\n </p-autoComplete>\n</div>\n",
11850
- styles: [".eo-organization .ui-autocomplete-token-label{display:inline-block}.eo-organization .fa.fa-user,.eo-organization .fa.fa-users{margin:0 4px;text-align:center;width:18px}:host.readonly ::ng-deep .ui-autocomplete-token-icon{display:none}:host ::ng-deep .ui-autocomplete-token{border:none!important;margin:0!important;padding:0!important}:host ::ng-deep .ui-autocomplete-token .token{align-items:center;border:1px solid rgba(0,0,0,.1);display:flex;padding:2px}:host ::ng-deep .ui-autocomplete-token-icon{opacity:1}[dir=ltr] :host ::ng-deep .ui-autocomplete-token-icon{margin-right:4px}[dir=rtl] :host ::ng-deep .ui-autocomplete-token-icon{margin-left:4px}:host ::ng-deep .ui-autocomplete-token-icon.del{color:var(--color-white)!important}:host ::ng-deep .deleted-user-label{color:var(--color-error)}:host ::ng-deep .eo-organization.acInputHidden .ui-autocomplete-input-token{margin:0;padding:0;width:0!important}:host ::ng-deep .eo-organization.acInputHidden .ui-autocomplete-input-token input{width:0!important}"]
11870
+ styles: [".eo-organization .ui-autocomplete-token-label{display:inline-block}.eo-organization .fa.fa-user,.eo-organization .fa.fa-users{margin:0 4px;text-align:center;width:18px}:host.readonly ::ng-deep .ui-autocomplete-token-icon{display:none}:host ::ng-deep .ui-autocomplete-token{border:none!important;margin:0!important;padding:0!important}:host ::ng-deep .ui-autocomplete-token .token{align-items:center;border:1px solid rgba(0,0,0,.1);display:flex;overflow:hidden;padding:2px}:host ::ng-deep .ui-autocomplete-token-icon{opacity:1}[dir=ltr] :host ::ng-deep .ui-autocomplete-token-icon{margin-right:4px}[dir=rtl] :host ::ng-deep .ui-autocomplete-token-icon{margin-left:4px}:host ::ng-deep .ui-autocomplete-token-icon.del{color:var(--color-white)!important}:host ::ng-deep .deleted-user-label{color:var(--color-error)}:host ::ng-deep .eo-organization.acInputHidden .ui-autocomplete-input-token{margin:0;padding:0;width:0!important}:host ::ng-deep .eo-organization.acInputHidden .ui-autocomplete-input-token input{width:0!important}"]
11851
11871
  },] }
11852
11872
  ];
11853
11873
  OrganizationFilterComponent.ctorParameters = () => [
@@ -13890,11 +13910,6 @@ class MediaComponent extends UnsubscribeOnDestroy {
13890
13910
  this.SIZE_LIMIT = 1024 * 1024 * 10; // 10MB
13891
13911
  this._disabled = false;
13892
13912
  this.attachments = [];
13893
- this.isMedia = false;
13894
- this.isOctetStream = false;
13895
- this.isNotSupported = false;
13896
- this.isLarge = false;
13897
- this.hasError = false;
13898
13913
  this.customConfig = [];
13899
13914
  this.defaultViewers = [
13900
13915
  {
@@ -13913,7 +13928,7 @@ class MediaComponent extends UnsubscribeOnDestroy {
13913
13928
  "mimeType": ["message/rfc822", "application/vnd.ms-outlook"],
13914
13929
  "viewer": "viewer/view/api/mail/?path=${path}&mimeType=${mimeType}&fileExtension=${fileExtension}&lang=${lang}&theme=${theme}"
13915
13930
  },
13916
- { "viewer": "() => parameters.defaultViewer + '#'" },
13931
+ { "viewer": "() => parameters.defaultViewer" },
13917
13932
  { "error": true, "type": "error", "viewer": "viewer/view/api/error/?path=${path}&mimeType=${mimeType}&fileExtension=${fileExtension}&lang=${lang}&theme=${theme}" }
13918
13933
  ];
13919
13934
  this.undockDisabled = false;
@@ -13921,7 +13936,6 @@ class MediaComponent extends UnsubscribeOnDestroy {
13921
13936
  // by default, the viewer ignores the version of the dms object. This will always show the latest version.
13922
13937
  // We need this to be able to refresh the viewer because otherwise pdfjs worker will fail.
13923
13938
  this.useVersion = false;
13924
- this.fileSizePipe = new FileSizePipe(translate);
13925
13939
  this.SIZE_LIMIT = this.config.getRaw('preview.fileSizeLimit') || this.SIZE_LIMIT;
13926
13940
  this.customConfig = (this.config.getRaw('preview.viewers') || []).concat(this.defaultViewers);
13927
13941
  this.pluginsService.api.content.catchError().subscribe((evt) => {
@@ -13933,7 +13947,7 @@ class MediaComponent extends UnsubscribeOnDestroy {
13933
13947
  win,
13934
13948
  parameters
13935
13949
  ]);
13936
- uri && this.loadDocument(this.resolveUri(uri, parameters), true);
13950
+ uri && win && (win.location.href = this.resolveUri(uri, parameters));
13937
13951
  });
13938
13952
  if (ContentPreviewService.undockWinActive()) {
13939
13953
  this.undock(false);
@@ -13964,14 +13978,10 @@ class MediaComponent extends UnsubscribeOnDestroy {
13964
13978
  return this._previewUri;
13965
13979
  }
13966
13980
  set previewFile(file) {
13967
- var _a;
13968
13981
  if (file) {
13969
13982
  this.viewer = this.getViewer(file);
13970
- this.isMedia = this.viewer.viewer !== MediaComponent.PDF_VIEWER;
13971
- this.isOctetStream = !!((_a = file.mimegroup) === null || _a === void 0 ? void 0 : _a.match(/octet-stream/));
13972
- this.isLarge = file.size && file.size > this.SIZE_LIMIT;
13973
13983
  this.mediaType = file.mediaTypeName && this.system.getObjectType(file.mediaTypeName);
13974
- this.previewUri = this.isMedia ? this.viewer.previewUri : file.uriPdf;
13984
+ this.previewUri = this.viewer.previewUri;
13975
13985
  }
13976
13986
  else {
13977
13987
  this.previewUri = '';
@@ -13997,7 +14007,7 @@ class MediaComponent extends UnsubscribeOnDestroy {
13997
14007
  path: file.path,
13998
14008
  mediaTypeName: item.typeName
13999
14009
  };
14000
- if (!!((_a = file.mimegroup) === null || _a === void 0 ? void 0 : _a.match(/^mail|octet-stream/)) && !this.isMedia) {
14010
+ if (!!((_a = file.mimegroup) === null || _a === void 0 ? void 0 : _a.match(/^mail|octet-stream/)) && this.viewer.viewer.startsWith(MediaComponent.PDF_VIEWER)) {
14001
14011
  this.slideUri = this.dms.getSlide(item.content.id, item.content.type, this.useVersion ? item.version : null, 256);
14002
14012
  this.attachmentsLoading = this.dms.getAttachments(item).subscribe(a => this.setAttachments = a);
14003
14013
  }
@@ -14006,13 +14016,12 @@ class MediaComponent extends UnsubscribeOnDestroy {
14006
14016
  this.previewUri = '';
14007
14017
  }
14008
14018
  }
14009
- selectAttachment(attachment, force) {
14010
- const previewUri = attachment && this.isMedia ? this.getViewer({ uriPdf: attachment === null || attachment === void 0 ? void 0 : attachment.previewUri }).previewUri : attachment === null || attachment === void 0 ? void 0 : attachment.previewUri;
14011
- this.loadDocument(previewUri || this.previewUri, force);
14019
+ selectAttachment(attachment) {
14020
+ const previewUri = attachment && this.getViewer({ uriPdf: attachment.previewUri }).previewUri;
14021
+ this.loadDocument(previewUri || this.previewUri, true);
14012
14022
  }
14013
14023
  toogleViewer() {
14014
14024
  this.open = !this.disabled && !!this.previewUri;
14015
- this.undockDisabled = this.undockDisabled ? true : this.previewUri === '';
14016
14025
  if (this.undockDisabled) {
14017
14026
  this.isUndocked = false;
14018
14027
  }
@@ -14023,18 +14032,11 @@ class MediaComponent extends UnsubscribeOnDestroy {
14023
14032
  refresh() {
14024
14033
  this.loadDocument(this.previewUri, true);
14025
14034
  }
14026
- openPdfViewer(uri) {
14027
- this.pdfjs.contentWindow.PDFViewerApplication.open(uri).then(() => (this.hasError = false)).catch((err) => {
14028
- this.hasError = !this.isOctetStream;
14029
- this.isNotSupported = this.isOctetStream;
14030
- });
14031
- // this.search();
14032
- }
14033
14035
  getViewer(file) {
14034
14036
  var _a, _b;
14035
14037
  const isVideo = !!((_a = file.mimegroup) === null || _a === void 0 ? void 0 : _a.match(/^audio|^video/));
14036
14038
  const defaultViewer = isVideo ? MediaComponent.VIDEO_VIEWER : MediaComponent.PDF_VIEWER;
14037
- const fileExtension = ((_b = file.path) === null || _b === void 0 ? void 0 : _b.includes('.')) ? file.path.split('.').pop() : '';
14039
+ const fileExtension = file.fileExtension || (((_b = file.path) === null || _b === void 0 ? void 0 : _b.includes('.')) ? file.path.split('.').pop() : '');
14038
14040
  const mimeType = file.mimetype;
14039
14041
  const config = this.customConfig.find((c) => {
14040
14042
  const matchMT = !c.mimeType || (typeof c.mimeType === 'string' ? [c.mimeType] : c.mimeType).includes(mimeType === null || mimeType === void 0 ? void 0 : mimeType.toLowerCase());
@@ -14117,48 +14119,19 @@ class MediaComponent extends UnsubscribeOnDestroy {
14117
14119
  }
14118
14120
  loadDocument(uri, force) {
14119
14121
  var _a, _b;
14120
- if (force) {
14121
- this.isLarge = false;
14122
- }
14123
- if (!force && (this.disabled || !uri || (uri === this.latestUri && !this.hasError))) {
14122
+ if (!force && (this.disabled || !uri || (uri === this.latestUri))) {
14124
14123
  return false;
14125
14124
  }
14126
14125
  this.latestUri = uri || '';
14127
- this.hasError = false;
14128
- this.isNotSupported = false;
14129
14126
  if (this.isUndocked) {
14130
14127
  this.openWindow(this.latestUri);
14131
14128
  const onload = () => { var _a; return this.pluginsService.applyFunction((_a = this.viewer) === null || _a === void 0 ? void 0 : _a.load, 'iframe, component', [this.undockWin, this]); };
14132
14129
  this.iframeInit(this.undockWin, ((_a = this.viewer) === null || _a === void 0 ? void 0 : _a.load) && onload);
14133
- return false;
14134
- }
14135
- if (this.isMedia) {
14136
- this.renderer.setAttribute(this.iframeMedia.nativeElement, 'src', this.latestUri);
14137
- const onload = () => { var _a; return this.pluginsService.applyFunction((_a = this.viewer) === null || _a === void 0 ? void 0 : _a.load, 'iframe, component', [this.iframeMedia.nativeElement, this]); };
14138
- this.iframeInit(this.iframeMedia.nativeElement, ((_b = this.viewer) === null || _b === void 0 ? void 0 : _b.load) && onload);
14139
14130
  }
14140
14131
  else {
14141
- if (!this.pdfjs) {
14142
- this.pdfjs = this.iframe.nativeElement;
14143
- this.renderer.setAttribute(this.pdfjs, 'src', MediaComponent.PDF_VIEWER.replace(/\?.*/, '?file=&'));
14144
- this.renderer.listen(this.pdfjs, 'load', () => {
14145
- this.pdfjs.contentWindow.PDFViewerApplicationOptions.set('sidebarViewOnLoad', 0);
14146
- this.pdfjs.contentWindow.PDFViewerApplicationOptions.set('viewOnLoad', false);
14147
- this.pdfjs.contentWindow.PDFViewerApplicationOptions.set('locale', ContentPreviewService.mapLang(this.translate.currentLang));
14148
- this.pdfjs.contentWindow.document.webL10n.setLanguage(ContentPreviewService.mapLang(this.translate.currentLang));
14149
- this.pdfjs.contentWindow.PDFViewerApplication._initializeL10n();
14150
- this.pdfjs.contentWindow.PDFViewerApplicationOptions.set('viewerCssTheme', 1);
14151
- this.pdfjs.contentWindow.PDFViewerApplication._forceCssTheme();
14152
- this.pdfjs.contentWindow.PDFViewerApplication.appConfig.viewerContainer
14153
- .addEventListener('dragenter', e => window.document.dispatchEvent(new DragEvent('dragenter', e)));
14154
- this.pdfjs.contentWindow.PDFViewerApplication.appConfig.viewerContainer.addEventListener('drop', e => e.stopPropagation());
14155
- this.openPdfViewer(this.latestUri);
14156
- });
14157
- }
14158
- else if (this.pdfjs.contentWindow && this.pdfjs.contentWindow.PDFViewerApplication) {
14159
- this.pdfjs.contentWindow.PDFViewerApplication.pdfSidebar.close();
14160
- this.openPdfViewer(this.latestUri);
14161
- }
14132
+ this.renderer.setAttribute(this.iframe.nativeElement, 'src', this.latestUri);
14133
+ const onload = () => { var _a; return this.pluginsService.applyFunction((_a = this.viewer) === null || _a === void 0 ? void 0 : _a.load, 'iframe, component', [this.iframe.nativeElement, this]); };
14134
+ this.iframeInit(this.iframe.nativeElement, ((_b = this.viewer) === null || _b === void 0 ? void 0 : _b.load) && onload);
14162
14135
  }
14163
14136
  }
14164
14137
  /**
@@ -14167,28 +14140,23 @@ class MediaComponent extends UnsubscribeOnDestroy {
14167
14140
  * @param win iframe window
14168
14141
  */
14169
14142
  searchPDF(term = '', win) {
14170
- var _a, _b;
14143
+ var _a, _b, _c;
14171
14144
  // remove all special characters
14172
14145
  term = (term || '').replace(/[\"|\*]/g, '').trim();
14173
14146
  if (term && ((_b = (_a = win === null || win === void 0 ? void 0 : win.PDFViewerApplication) === null || _a === void 0 ? void 0 : _a.appConfig) === null || _b === void 0 ? void 0 : _b.findBar)) {
14174
- win.PDFViewerApplication.findController.executeCommand('find', {
14175
- caseSensitive: false,
14176
- findPrevious: undefined,
14177
- highlightAll: true,
14178
- phraseSearch: true,
14179
- query: term
14180
- });
14181
14147
  win.PDFViewerApplication.appConfig.findBar.findField.value = term;
14182
14148
  win.PDFViewerApplication.appConfig.findBar.highlightAllCheckbox.checked = true;
14183
14149
  win.PDFViewerApplication.appConfig.findBar.caseSensitiveCheckbox.checked = false;
14150
+ // trigger find event on pdf.js load
14151
+ (_c = win.PDFViewerApplication.initializedPromise) === null || _c === void 0 ? void 0 : _c.then(() => win.PDFViewerApplication.findBar.dispatchEvent());
14184
14152
  }
14185
14153
  }
14186
14154
  preventDropEvent(win) {
14187
- var _a, _b, _c, _d;
14188
- if ((_b = (_a = this.iframe) === null || _a === void 0 ? void 0 : _a.src) === null || _b === void 0 ? void 0 : _b.startsWith(window.location.origin)) {
14189
- (_c = win === null || win === void 0 ? void 0 : win.document) === null || _c === void 0 ? void 0 : _c.addEventListener('drop', (e) => e.stopPropagation());
14155
+ var _a, _b, _c;
14156
+ if (((_a = win === null || win === void 0 ? void 0 : win.location) === null || _a === void 0 ? void 0 : _a.origin) === window.location.origin) {
14157
+ (_b = win === null || win === void 0 ? void 0 : win.document) === null || _b === void 0 ? void 0 : _b.addEventListener('drop', (e) => e.stopPropagation());
14190
14158
  // dispach drag & drop events to main window
14191
- (_d = win === null || win === void 0 ? void 0 : win.document) === null || _d === void 0 ? void 0 : _d.addEventListener('dragenter', (e) => {
14159
+ (_c = win === null || win === void 0 ? void 0 : win.document) === null || _c === void 0 ? void 0 : _c.addEventListener('dragenter', (e) => {
14192
14160
  window.document.dispatchEvent(new DragEvent('dragenter', e));
14193
14161
  setTimeout(() => window.document.dispatchEvent(new DragEvent('dragleave', e)), 10);
14194
14162
  });
@@ -14196,13 +14164,14 @@ class MediaComponent extends UnsubscribeOnDestroy {
14196
14164
  }
14197
14165
  iframeInit(iframe = this.iframe, onload) {
14198
14166
  if (iframe) {
14167
+ this.loading = true;
14199
14168
  iframe._init || fromEvent(iframe, 'load')
14200
14169
  .pipe(takeUntil(this.componentDestroyed$))
14201
14170
  .subscribe(() => {
14202
14171
  const win = this.setApi(iframe);
14203
14172
  onload && onload();
14173
+ this.loading = false;
14204
14174
  setTimeout(() => {
14205
- // this.loading = false;
14206
14175
  this.searchPDF(this.searchTerm, win);
14207
14176
  this.preventDropEvent(win);
14208
14177
  }, 100);
@@ -14211,9 +14180,17 @@ class MediaComponent extends UnsubscribeOnDestroy {
14211
14180
  }
14212
14181
  }
14213
14182
  setApi(iframe) {
14183
+ var _a;
14214
14184
  // set api to iframe window
14215
14185
  const win = (iframe === null || iframe === void 0 ? void 0 : iframe.contentWindow) || iframe;
14216
14186
  win['api'] = window['api'];
14187
+ if ((_a = win['api']) === null || _a === void 0 ? void 0 : _a.content) {
14188
+ win['api'].content.resolveViewerParams = (parameters) => {
14189
+ const uri = parameters.path.replace(location.origin, '');
14190
+ const viewer = this.getViewer({ uri, mimetype: parameters.mimeType, fileExtension: parameters.fileExtension, uriPdf: '', mimegroup: '', size: 1 });
14191
+ return { uri: viewer.previewUri || parameters.path };
14192
+ };
14193
+ }
14217
14194
  return win;
14218
14195
  }
14219
14196
  ngAfterViewInit() {
@@ -14227,7 +14204,7 @@ MediaComponent.PDF_VIEWER = 'viewer/view/api/pdf/web/viewer.html?file=&path=${pa
14227
14204
  MediaComponent.decorators = [
14228
14205
  { type: Component, args: [{
14229
14206
  selector: 'eo-media',
14230
- template: "<div [hidden]=\"!open\">\n\n <!-- attachments overlay -->\n <div class=\"attachments\" *ngIf=\"attachments?.length\" [ngClass]=\"{notmain: latestUri !== previewUri && !attachmentsShown, active: attachmentsShown}\"\n (eoOutsideClick)=\"attachmentsShown = false\">\n <div class=\"attachments-list\" *ngIf=\"attachmentsShown\">\n <div class=\"attachment main\" (click)=\"selectAttachment(null, isLarge)\" [ngClass]=\"{current: latestUri === previewUri}\">{{dmsObjectTitle}}</div>\n <div class=\"attachment\" *ngFor=\"let a of attachments\" (click)=\"selectAttachment(a, isLarge)\" [ngClass]=\"{current: latestUri === a.previewUri}\">\n {{a.name}}\n </div>\n </div>\n\n <eo-icon class=\"button\" [badge]=\"attachments?.length\"\n (click)=\"attachmentsShown = !attachmentsShown\"\n [iconSrc]=\"attachmentsShown ? 'assets/_default/svg/ic_clear.svg' : 'assets/_default/svg/ic_attachment.svg'\"></eo-icon>\n </div>\n\n <div class=\"preview-container\" [style.overflow]=\"'hidden'\" [hidden]=\"hasError\">\n <iframe [hidden]=\"isNotSupported || isUndocked || isMedia\" #iframe height=\"100%\" width=\"100%\" frameborder=\"0\"></iframe>\n <iframe [hidden]=\"isNotSupported || isUndocked || !isMedia\" #iframeMedia height=\"100%\" width=\"100%\" frameborder=\"0\"></iframe>\n <div class=\"slide\" *ngIf=\"isNotSupported || isUndocked\">\n <!--<img *ngIf=\"!isMedia\" [src]=\"slideUri\" alt=\"preview\">-->\n <eo-icon *ngIf=\"mediaType\" [objectType]=\"mediaType\"></eo-icon>\n <div class=\"large-content not-supported\" *ngIf=\"isNotSupported\" translate>eo.object.preview.not.supported</div>\n </div>\n </div>\n</div>\n\n<div [hidden]=\"!hasError && open\" class=\"empty-container\">\n <eo-icon class=\"nofile\" [iconSrc]=\"'assets/_default/svg/ic_no-file.svg'\"></eo-icon>\n</div>\n\n<eo-icon *ngIf=\"!undockDisabled\" class=\"button undock\" [iconSrc]=\"'assets/_default/svg/ic_undock.svg'\" (click)=\"undock()\"></eo-icon>\n",
14207
+ template: "<div [hidden]=\"!open\">\n\n <!-- attachments overlay -->\n <div class=\"attachments\" *ngIf=\"attachments?.length\" [ngClass]=\"{notmain: latestUri !== previewUri && !attachmentsShown, active: attachmentsShown}\"\n (eoOutsideClick)=\"attachmentsShown = false\">\n <div class=\"attachments-list\" *ngIf=\"attachmentsShown\">\n <div class=\"attachment main\" (click)=\"selectAttachment(null)\" [ngClass]=\"{current: latestUri === previewUri}\">{{dmsObjectTitle}}</div>\n <div class=\"attachment\" *ngFor=\"let a of attachments\" (click)=\"selectAttachment(a)\" [ngClass]=\"{current: latestUri === a.previewUri}\">\n {{a.name}}\n </div>\n </div>\n\n <eo-icon class=\"button\" [badge]=\"attachments?.length\"\n (click)=\"attachmentsShown = !attachmentsShown\"\n [iconSrc]=\"attachmentsShown ? 'assets/_default/svg/ic_clear.svg' : 'assets/_default/svg/ic_attachment.svg'\"></eo-icon>\n </div>\n\n <div class=\"preview-container\" [style.overflow]=\"'hidden'\">\n <iframe [hidden]=\"isUndocked || loading\" #iframe height=\"100%\" width=\"100%\" frameborder=\"0\"></iframe>\n <div class=\"slide\" *ngIf=\"isUndocked\">\n <eo-icon *ngIf=\"mediaType\" [objectType]=\"mediaType\"></eo-icon>\n </div>\n </div>\n</div>\n\n<div [hidden]=\"open\" class=\"empty-container\">\n <eo-icon class=\"nofile\" [iconSrc]=\"'assets/_default/svg/ic_no-file.svg'\"></eo-icon>\n</div>\n\n<eo-icon *ngIf=\"!undockDisabled\" [hidden]=\"previewUri === ''\" class=\"button undock\" [iconSrc]=\"'assets/_default/svg/ic_undock.svg'\" (click)=\"undock()\"></eo-icon>\n",
14231
14208
  providers: [ContentPreviewService],
14232
14209
  styles: [":host .empty-container{align-items:center;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}:host .empty-container .nofile{height:128px;opacity:.06;width:128px}:host .button.undock{background-color:rgba(var(--color-primary-rgb),.6);bottom:var(--app-pane-padding);opacity:.2;position:absolute;right:var(--app-pane-padding)}:host .button.undock:hover{opacity:.5}:host .preview-container{bottom:0;left:0;position:absolute;right:0;top:0}:host .preview-container .slide{align-items:center;display:flex;flex:1;flex-direction:column;height:100%;justify-content:center;min-height:0;min-width:0}:host .preview-container .slide .large-content{background-color:rgba(var(--color-primary-rgb),.5);color:var(--color-white);cursor:pointer;display:flex;flex:1;flex-direction:row;justify-content:center;min-height:0;min-width:0;padding:var(--app-pane-padding);position:absolute;top:0;width:100%}:host .preview-container .slide .large-content.not-supported,:host .preview-container .slide .large-content:hover{background-color:rgba(var(--color-primary-rgb),.9)}:host .preview-container .slide .large-content.not-supported{cursor:inherit}:host .preview-container .slide img{padding:var(--app-pane-padding);width:100%}:host .preview-container .slide eo-icon{height:128px;opacity:.2;width:128px}:host .attachments{align-items:flex-end;background-color:rgba(var(--color-primary-rgb),.6);border-radius:2px;bottom:calc(var(--app-pane-padding)*3);color:var(--color-white);display:flex;flex-flow:row;max-width:calc(100% - 16px);position:absolute;right:calc(var(--app-pane-padding)/2);z-index:5}:host .attachments:hover{background-color:rgba(var(--color-primary-rgb),.9)}:host .attachments eo-icon{flex:0 0 auto;margin:calc(var(--app-pane-padding)/2)}:host .attachments .attachments-list{display:flex;flex:1;flex-direction:row;flex-flow:wrap;max-height:150px;min-height:0;min-width:0;overflow:auto;padding:calc(var(--app-pane-padding)/2)}:host .attachments .attachments-list .attachment{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;background-color:rgba(var(--color-white-rgb),.1);border:1px solid rgba(var(--color-white-rgb),0);border-radius:4px;cursor:pointer;display:inline-block;margin:calc(var(--app-pane-padding)/8);max-width:none;overflow:hidden;padding:calc(var(--app-pane-padding)/4);text-overflow:ellipsis;transition:all var(--app-default-transition-duration) ease-in-out;white-space:nowrap}:host .attachments .attachments-list .attachment:hover{border-color:rgba(var(--color-white-rgb),.5)}:host .attachments .attachments-list .attachment.current{background-color:var(--color-accent)}:host .attachments .attachments-list .attachment.main{background-color:var(--color-primary);flex:1 1 100%;order:100}:host .attachments .attachments-list .attachment:not(.main){font-style:italic}:host .attachments.notmain{background-color:var(--color-accent)}:host .attachments.active{align-items:center;background-color:rgba(var(--color-primary-rgb),.9);bottom:calc(var(--app-pane-padding)/2)}"]
14233
14210
  },] }
@@ -14247,9 +14224,7 @@ MediaComponent.propDecorators = {
14247
14224
  enableCloseBtn: [{ type: Input }],
14248
14225
  useVersion: [{ type: Input }],
14249
14226
  open: [{ type: HostBinding, args: ['class.open',] }],
14250
- codesystem: [{ type: ViewChild, args: ['codesystem',] }],
14251
14227
  iframe: [{ type: ViewChild, args: ['iframe', { static: true },] }],
14252
- iframeMedia: [{ type: ViewChild, args: ['iframeMedia', { static: true },] }],
14253
14228
  setAttachments: [{ type: Input, args: ['attachments',] }],
14254
14229
  setSearchTerm: [{ type: Input, args: ['searchTerm',] }],
14255
14230
  disabled: [{ type: Input }],
@@ -14468,7 +14443,7 @@ AppAddDialogComponent.decorators = [
14468
14443
  { type: Component, args: [{
14469
14444
  selector: 'eo-app-add-dialog',
14470
14445
  template: "<section class=\"autocomplete\">\n <p-autoComplete [(ngModel)]=\"selectedNode\" [minLength]=\"1\" [delay]=\"500\" #autocomplete\n [suggestions]=\"autocompleteRes\" field=\"label\"\n [forceSelection]=\"true\"\n (onSelect)=\"onSelect($event)\"\n (completeMethod)=\"autocompleteFn($event)\">\n \n <ng-template let-item pTemplate=\"item\">\n <span class=\"ui-autocomplete-token-label\" title=\"{{item.label}} ({{item.location}})\">\n <strong>{{item.label}}</strong>\n <span>{{item.location}}</span>\n </span>\n </ng-template>\n </p-autoComplete>\n</section>\n\n<section class=\"type-lists\">\n <section class=\"section location\" *ngIf=\"locationParent\">\n <div class=\"subhead\"><span translate>eo.add.title.location</span><span> \"{{locationParent.title}}\"</span></div>\n <div class=\"type sub\" (click)=\"addToSubfolder()\" *ngIf=\"subfolder\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_create_new_folder.svg'\"></eo-icon>\n <div>\n <div class=\"label\">{{'eo.add.title.location.subfolder'|translate: ({folder: subfolder.title})}}</div>\n <div class=\"group\">{{subFolderDescription}}</div>\n </div>\n </div>\n <div class=\"type\" *ngFor=\"let type of locationTypes; trackBy: trackByFn\" (click)=\"prepare(type)\">\n <eo-icon [objectType]=\"type\"></eo-icon>\n <div>\n <div class=\"label\">{{type.label}}</div>\n <div class=\"group\">{{type.group}}</div>\n </div>\n </div>\n </section>\n \n <section class=\"section general\" *ngIf=\"rootTypes.length; else noRootTypes\">\n <div class=\"subhead\"><span translate>eo.add.title.location.common</span></div>\n <div class=\"type\" *ngFor=\"let type of rootTypes; trackBy: trackByFn\"\n [ngClass]=\"{context: type.isContextFolder}\"\n (click)=\"prepare(type, true)\">\n <eo-icon [objectType]=\"type\"></eo-icon>\n <div>\n <div class=\"label\">{{type.label}}</div>\n <div class=\"group\">{{type.group}}</div>\n </div>\n </div>\n </section>\n</section>\n\n<ng-template #noRootTypes>\n <div *ngIf=\"!locationParent\">\n <span class=\"empty__root-types\" translate>eo.add.empty.root.types</span>\n </div>\n</ng-template>\n",
14471
- styles: ["::ng-deep .eo-dialog-content.add--content{max-height:620px;overflow:hidden}:host{display:flex;flex:1;flex-direction:column;min-height:0;min-width:0}:host ::ng-deep p-autocomplete{width:100%}:host ::ng-deep p-autocomplete .ui-autocomplete input.ui-inputtext{border:0;box-shadow:0 2px 2px 0 rgba(0,0,0,.2);font-size:var(--font-title);padding:calc(var(--app-pane-padding)/2)}:host ::ng-deep p-autocomplete .ui-autocomplete-token-label{display:flex;flex-flow:column}:host ::ng-deep p-autocomplete .ui-autocomplete-token-label>span{font-size:var(--font-hint)}:host .autocomplete{background-color:var(--color-accent);display:flex;padding:var(--app-pane-padding)}:host .type-lists{display:flex;flex:1;flex-direction:row;min-height:0;min-width:0;overflow:auto;padding:var(--app-pane-padding) 0}:host .type-lists .section{padding:0 var(--app-pane-padding)}:host .type-lists .section .subhead{color:var(--color-accent);font-size:var(--font-subhead);font-weight:var(--font-weight-normal);margin:0;padding:calc(var(--app-pane-padding)/2)}:host .type-lists .section .type{-moz-transition:background-color var(--app-default-transition-duration) ease-in-out;-o-transition:background-color var(--app-default-transition-duration) ease-in-out;-webkit-transition:background-color var(--app-default-transition-duration) ease-in-out;align-items:center;border-top:1px solid rgba(var(--color-black-rgb),.06);cursor:pointer;display:flex;flex-flow:row nowrap;padding:calc(var(--app-pane-padding)/4) var(--app-pane-padding);transition:background-color var(--app-default-transition-duration) ease-in-out}:host .type-lists .section .type.context>div .label{font-weight:var(--font-weight-bold)}:host .type-lists .section .type.context eo-icon{background-color:rgba(var(--color-black-rgb),.15)}:host .type-lists .section .type.sub{padding-bottom:calc(var(--app-pane-padding)/2);padding-top:calc(var(--app-pane-padding)/2)}:host .type-lists .section .type.sub>div .label{font-weight:var(--font-weight-bold)}:host .type-lists .section .type eo-icon{border-radius:2px;box-sizing:content-box;color:var(--text-color-caption);flex:0 0 auto;height:18px;padding:2px;width:18px}:host .type-lists .section .type>div{flex:1 1 auto;padding:0 var(--app-pane-padding)}:host .type-lists .section .type>div .label{color:var(--text-color-body)}:host .type-lists .section .type>div .group{color:var(--text-color-caption);font-size:var(--font-hint)}:host .type-lists .section .type:hover{background-color:var(--panel-background-grey)}:host .type-lists .empty__root-types{padding:8px}"]
14446
+ styles: ["::ng-deep .eo-dialog-content.add--content{max-height:620px;overflow:hidden}:host{display:flex;flex:1;flex-direction:column;min-height:0;min-width:0}:host ::ng-deep p-autocomplete{width:100%}:host ::ng-deep p-autocomplete .ui-autocomplete input.ui-inputtext{border:0;box-shadow:0 2px 2px 0 rgba(0,0,0,.2);font-size:var(--font-title);padding:calc(var(--app-pane-padding)/2)}:host ::ng-deep p-autocomplete .ui-autocomplete-token-label{display:flex;flex-flow:column}:host ::ng-deep p-autocomplete .ui-autocomplete-token-label>span{font-size:var(--font-hint)}:host .autocomplete{background-color:var(--color-accent);display:flex;padding:var(--app-pane-padding)}:host .type-lists{display:flex;flex:1;flex-direction:row;min-height:0;min-width:0;overflow-y:auto;padding:var(--app-pane-padding) 0}:host .type-lists .section{padding:0 var(--app-pane-padding)}:host .type-lists .section .subhead{color:var(--color-accent);font-size:var(--font-subhead);font-weight:var(--font-weight-normal);margin:0;padding:calc(var(--app-pane-padding)/2)}:host .type-lists .section .type{-moz-transition:background-color var(--app-default-transition-duration) ease-in-out;-o-transition:background-color var(--app-default-transition-duration) ease-in-out;-webkit-transition:background-color var(--app-default-transition-duration) ease-in-out;align-items:center;border-top:1px solid rgba(var(--color-black-rgb),.06);cursor:pointer;display:flex;flex-flow:row nowrap;padding:calc(var(--app-pane-padding)/4) var(--app-pane-padding);transition:background-color var(--app-default-transition-duration) ease-in-out}:host .type-lists .section .type.context>div .label{font-weight:var(--font-weight-bold)}:host .type-lists .section .type.context eo-icon{background-color:rgba(var(--color-black-rgb),.15)}:host .type-lists .section .type.sub{padding-bottom:calc(var(--app-pane-padding)/2);padding-top:calc(var(--app-pane-padding)/2)}:host .type-lists .section .type.sub>div .label{font-weight:var(--font-weight-bold)}:host .type-lists .section .type eo-icon{border-radius:2px;box-sizing:content-box;color:var(--text-color-caption);flex:0 0 auto;height:18px;padding:2px;width:18px}:host .type-lists .section .type>div{flex:1 1 auto;padding:0 var(--app-pane-padding)}:host .type-lists .section .type>div .label{color:var(--text-color-body)}:host .type-lists .section .type>div .group{color:var(--text-color-caption);font-size:var(--font-hint)}:host .type-lists .section .type:hover{background-color:var(--panel-background-grey)}:host .type-lists .empty__root-types{padding:8px}"]
14472
14447
  },] }
14473
14448
  ];
14474
14449
  AppAddDialogComponent.ctorParameters = () => [
@@ -14705,7 +14680,7 @@ class CopyActionComponent extends DmsObjectTarget {
14705
14680
  }
14706
14681
  isExecutable(item) {
14707
14682
  const isAllowedType = this.actionService.isAllowedType([item], ['sysemail']);
14708
- return of(this.isAllowedState() && isAllowedType && this.capabilityService.getCapabilities().intray && !item.isFolder);
14683
+ return of(this.isAllowedState() && isAllowedType && this.capabilityService.getCapabilities().intray);
14709
14684
  }
14710
14685
  ;
14711
14686
  run(selection) {
@@ -16108,7 +16083,8 @@ class ShareObjectComponent {
16108
16083
  }
16109
16084
  ngOnInit() {
16110
16085
  let orgaValue = [];
16111
- this.includeChildrenField.setValue(true);
16086
+ const shareChildren = this.selection[0].shares[0] ? this.selection[0].shares[0].sharechildren : true;
16087
+ this.includeChildrenField.setValue(shareChildren);
16112
16088
  if (this.selection[0].isFolder) {
16113
16089
  this.header = this.translate.instant('eo.manage.rights.folder.title');
16114
16090
  }
@@ -16635,13 +16611,14 @@ AppLayoutComponent.propDecorators = {
16635
16611
  class TrapFocusDirective {
16636
16612
  constructor(el) {
16637
16613
  this.el = el;
16614
+ this.focusableSelectors = 'a[href], button, textarea, input[type="text"],' +
16615
+ 'input[type="radio"], input[type="checkbox"], select, [focusable]';
16638
16616
  }
16639
16617
  ngAfterViewInit() {
16640
16618
  this.trapFocus(this.el.nativeElement);
16641
16619
  }
16642
16620
  trapFocus(element) {
16643
- let focusableElements = element.querySelectorAll('a[href], button, textarea, input[type="text"],' +
16644
- 'input[type="radio"], input[type="checkbox"], select, [focusable]');
16621
+ let focusableElements = element.querySelectorAll(this.focusableSelectors);
16645
16622
  focusableElements = Array.from(focusableElements)
16646
16623
  .filter((el) => !el.disabled && !el.classList.contains('disabled'));
16647
16624
  const firstFocusableElement = focusableElements[0];
@@ -16664,6 +16641,20 @@ class TrapFocusDirective {
16664
16641
  }
16665
16642
  }));
16666
16643
  }
16644
+ isArrowUpOrDownPressed(event) {
16645
+ const key = event.key;
16646
+ if (key === 'ArrowUp' || key === 'ArrowDown') {
16647
+ event.preventDefault();
16648
+ let focusableElements = this.el.nativeElement.parentElement.querySelectorAll(this.focusableSelectors);
16649
+ const currentIndex = Array.from(focusableElements).indexOf(document.activeElement);
16650
+ if (key === 'ArrowDown' && currentIndex < focusableElements.length - 1) {
16651
+ focusableElements[currentIndex + 1].focus();
16652
+ }
16653
+ else if (key === 'ArrowUp' && currentIndex > 0) {
16654
+ focusableElements[currentIndex - 1].focus();
16655
+ }
16656
+ }
16657
+ }
16667
16658
  }
16668
16659
  TrapFocusDirective.decorators = [
16669
16660
  { type: Directive, args: [{
@@ -16673,6 +16664,9 @@ TrapFocusDirective.decorators = [
16673
16664
  TrapFocusDirective.ctorParameters = () => [
16674
16665
  { type: ElementRef }
16675
16666
  ];
16667
+ TrapFocusDirective.propDecorators = {
16668
+ isArrowUpOrDownPressed: [{ type: HostListener, args: ['keydown', ['$event'],] }]
16669
+ };
16676
16670
 
16677
16671
  /**
16678
16672
  * Module holding the base components of the application shell like application bar, side, search etc.
@@ -16820,8 +16814,8 @@ class ChangePasswordFormComponent {
16820
16814
  ChangePasswordFormComponent.decorators = [
16821
16815
  { type: Component, args: [{
16822
16816
  selector: 'eo-change-password-form',
16823
- template: "<section class=\"change-password\">\n <form #changePasswordFormElement [formGroup]=\"changePasswordForm\" (ngSubmit)=\"onSubmit()\" autocomplete=\"off\">\n <div class=\"form-item\">\n\n <eo-form-input [label]=\"('eo.password.reset.current-password' | translate)\" [required]=\"true\" [invalid]=\"passwordIsNew\">\n <eo-password [parent]=\"changePasswordForm\"\n [element]=\"'currentPassword'\"\n [canChangepasswordVisiblety]=\"false\"\n [passwordVisible]=\"passwordIsVisible\"\n [placeholder]=\"('eo.password.reset.current-password' | translate)\"></eo-password>\n </eo-form-input>\n\n <eo-form-input [label]=\"('eo.password.reset.new-password' | translate)\" [required]=\"true\" [invalid]=\"matchingPasswords || passwordIsNew\">\n <eo-password [parent]=\"changePasswordForm\"\n [element]=\"'password'\"\n [canChangepasswordVisiblety]=\"false\"\n [passwordVisible]=\"passwordIsVisible\"\n [placeholder]=\"('eo.password.reset.new-password' | translate)\"></eo-password>\n </eo-form-input>\n\n <eo-form-input [label]=\"('eo.password.reset.confirm-password' | translate)\" [required]=\"true\" [invalid]=\"matchingPasswords\">\n <eo-password [parent]=\"changePasswordForm\"\n [element]=\"'confirmPassword'\"\n [canChangepasswordVisiblety]=\"false\"\n [passwordVisible]=\"passwordIsVisible\"\n [placeholder]=\"('eo.password.reset.confirm-password' | translate)\"></eo-password>\n </eo-form-input>\n\n <div class=\"invalid error\" *ngIf=\"passwordIsNew\">\n {{'eo.password.reset.error.same.password' | translate}}\n </div>\n\n <div class=\"invalid error\" *ngIf=\"matchingPasswords\">\n {{'eo.password.reset.error.matiching.password' | translate}}\n </div>\n\n <div class=\"invalid error\" translate [translateParams]=\"{amount: passwordValidation.amount}\" *ngIf=\"passwordValidation.type === 'short'\">\n eo.password.reset.error.new.password.short\n </div>\n\n <div class=\"invalid error\" translate [translateParams]=\"{amount: passwordValidation.amount}\" *ngIf=\"passwordValidation.type === 'number'\">\n eo.password.reset.error.new.password.number\n </div>\n\n <div class=\"invalid error\" translate [translateParams]=\"{amount: passwordValidation.amount}\" *ngIf=\"passwordValidation.type === 'specialchars'\">\n eo.password.reset.error.new.password.specialchars\n </div>\n\n <section class=\"change-password__cta\">\n <button class=\"change-password__submit-button\" type=\"submit\"\n [disabled]=\"changePasswordForm.invalid || passwordValidation.type !== 'valid'\" translate>eo.password.reset.confirm-button</button>\n\n <a (click)=\"showPasswords()\">\n <eo-icon class=\"change-password__icon-show\"\n [iconSrc]=\"'assets/_default/svg/ic_eye.svg'\"\n [iconTitle]=\"('eo.password.reset.toogle.icon' | translate)\"\n [ngClass]=\"{'visible': passwordIsVisible}\"></eo-icon>\n </a>\n </section>\n </div>\n </form>\n\n</section>\n",
16824
- styles: [".change-password .invalid.error{color:var(--color-error);padding:5px 0}.change-password__cta{align-items:center;display:flex;margin-top:10px}.change-password__submit-button{margin-right:10px}.change-password__icon-show{color:var(--color-primary-4)}.change-password__icon-show.visible{color:var(--color-primary-3)}"]
16817
+ template: "<section class=\"change-password\">\n <form #changePasswordFormElement [formGroup]=\"changePasswordForm\" (ngSubmit)=\"onSubmit()\" autocomplete=\"off\">\n <div class=\"form-item\">\n\n <eo-form-input [label]=\"('eo.password.reset.current-password' | translate)\" [required]=\"true\" [invalid]=\"passwordIsNew\">\n <eo-password [parent]=\"changePasswordForm\"\n [element]=\"'currentPassword'\"\n [canChangepasswordVisiblety]=\"false\"\n [passwordVisible]=\"passwordIsVisible\"\n [placeholder]=\"('eo.password.reset.current-password' | translate)\"></eo-password>\n </eo-form-input>\n\n <eo-form-input [label]=\"('eo.password.reset.new-password' | translate)\" [required]=\"true\" [invalid]=\"matchingPasswords || passwordIsNew\">\n <eo-password [parent]=\"changePasswordForm\"\n [element]=\"'password'\"\n [canChangepasswordVisiblety]=\"false\"\n [passwordVisible]=\"passwordIsVisible\"\n [placeholder]=\"('eo.password.reset.new-password' | translate)\"></eo-password>\n </eo-form-input>\n\n <eo-form-input [label]=\"('eo.password.reset.confirm-password' | translate)\" [required]=\"true\" [invalid]=\"matchingPasswords\">\n <eo-password [parent]=\"changePasswordForm\"\n [element]=\"'confirmPassword'\"\n [canChangepasswordVisiblety]=\"false\"\n [passwordVisible]=\"passwordIsVisible\"\n [placeholder]=\"('eo.password.reset.confirm-password' | translate)\"></eo-password>\n </eo-form-input>\n\n <div class=\"invalid error\" *ngIf=\"passwordIsNew\">\n {{'eo.password.reset.error.same.password' | translate}}\n </div>\n\n <div class=\"invalid error\" *ngIf=\"matchingPasswords\">\n {{'eo.password.reset.error.matiching.password' | translate}}\n </div>\n\n <div class=\"invalid error\" translate [translateParams]=\"{amount: passwordValidation.amount}\" *ngIf=\"passwordValidation.type === 'short'\">\n eo.password.reset.error.new.password.short\n </div>\n\n <div class=\"invalid error\" translate [translateParams]=\"{amount: passwordValidation.amount}\" *ngIf=\"passwordValidation.type === 'number'\">\n eo.password.reset.error.new.password.number\n </div>\n\n <div class=\"invalid error\" translate [translateParams]=\"{amount: passwordValidation.amount}\" *ngIf=\"passwordValidation.type === 'specialchars'\">\n eo.password.reset.error.new.password.specialchars\n </div>\n\n <section class=\"change-password__cta\">\n <button class=\"change-password__submit-button\" type=\"submit\"\n [disabled]=\"changePasswordForm.invalid || passwordValidation.type !== 'valid'\" translate>eo.password.reset.confirm-button</button>\n\n <a (click)=\"showPasswords()\" tabindex=\"0\" (keydown.enter)=\"showPasswords()\" >\n <eo-icon class=\"change-password__icon-show\"\n [iconSrc]=\"'assets/_default/svg/ic_eye.svg'\"\n [iconTitle]=\"('eo.password.reset.toogle.icon' | translate)\"\n [ngClass]=\"{'visible': passwordIsVisible}\"></eo-icon>\n </a>\n </section>\n </div>\n </form>\n\n</section>\n",
16818
+ styles: [".change-password .invalid.error{color:var(--color-error);padding:5px 0}.change-password :focus{outline:2px solid var(--text-color-caption)}.change-password__cta{align-items:center;display:flex;margin-top:10px}.change-password__submit-button{margin-right:10px}.change-password__icon-show{color:var(--text-color-caption);cursor:pointer}.change-password__icon-show:hover{color:var(--color-accent)}.change-password__icon-show.visible{color:var(--color-primary-3)}"]
16825
16819
  },] }
16826
16820
  ];
16827
16821
  ChangePasswordFormComponent.ctorParameters = () => [
@@ -17405,7 +17399,7 @@ StoredQueryComponent.propDecorators = {
17405
17399
  };
17406
17400
 
17407
17401
  class StoredQueryDetailsComponent extends UnsubscribeOnDestroy {
17408
- constructor(router, searchService, userService, systemService, selection, pendingChanges, storedQueriesService, formHelperService, translate) {
17402
+ constructor(router, searchService, userService, systemService, selection, pendingChanges, storedQueriesService, formHelperService, elemRef, translate) {
17409
17403
  super();
17410
17404
  this.router = router;
17411
17405
  this.searchService = searchService;
@@ -17415,6 +17409,7 @@ class StoredQueryDetailsComponent extends UnsubscribeOnDestroy {
17415
17409
  this.pendingChanges = pendingChanges;
17416
17410
  this.storedQueriesService = storedQueriesService;
17417
17411
  this.formHelperService = formHelperService;
17412
+ this.elemRef = elemRef;
17418
17413
  this.translate = translate;
17419
17414
  this.FORM_INPUT_TITLE = 'storedQueryTitle';
17420
17415
  this.FORM_INPUT_FULLTEXT = 'storedQueryFulltext';
@@ -17453,6 +17448,9 @@ class StoredQueryDetailsComponent extends UnsubscribeOnDestroy {
17453
17448
  this.edit();
17454
17449
  this.startPending();
17455
17450
  this.notifyList.emit({ unselect: true, update: false });
17451
+ setTimeout(() => {
17452
+ this.elemRef.nativeElement.querySelector('[name="storedQueryTitle"]').focus();
17453
+ }, 500);
17456
17454
  }
17457
17455
  }
17458
17456
  }
@@ -17861,7 +17859,7 @@ class StoredQueryDetailsComponent extends UnsubscribeOnDestroy {
17861
17859
  StoredQueryDetailsComponent.decorators = [
17862
17860
  { type: Component, args: [{
17863
17861
  selector: 'eo-stored-query-details',
17864
- template: "<ng-container *ngIf=\"storedQuery\">\n <div class=\"eo-head\">\n <header class=\"eo-header\">\n <eo-icon class=\"eo-header-icon\"\n [iconSrc]=\"'assets/_default/svg/ic_search.svg'\"\n [iconTitle]=\"('eo.sidebar.navigation.storedqueries' | translate)\">\n </eo-icon>\n <div class=\"eo-header-info\">\n <h2 class=\"eo-header-title\">{{storedQuery.name}}</h2>\n <h3 class=\"eo-header-subtitle\" translate>eo.search.title.storedqueries</h3>\n </div>\n </header>\n </div>\n\n <div class=\"eo-body\">\n\n <div class=\"form\">\n\n <ng-template #queryForm>\n <eo-stored-query [query]=\"storedQuery\" [formOnly]=\"true\" #storedQueryForm\n (onQueryLoaded)=\"onStoredQueryLoaded()\"\n (onQueryExecute)=\"onStoredQueryExecute($event)\"></eo-stored-query>\n </ng-template>\n\n <form class=\"edit-form\" [formGroup]=\"editForm.form\" *ngIf=\"editForm.form; else queryForm\">\n\n <div class=\"context dark\">\n\n <!-- title and fulltext term fields -->\n <eo-form-input class=\"title\">\n <input type=\"text\" name=\"storedQueryTitle\" maxlength=\"64\" autofocus=\"autofocus\" [formControlName]=\"'storedQueryTitle'\"/>\n </eo-form-input>\n \n <eo-query-scope-select [selection]=\"queryScope\" (select)=\"setQueryScope($event)\"></eo-query-scope-select>\n <div class=\"form-field\">\n <eo-form-element [skipToggle]=\"true\" [element]=\"editForm.fulltextFormControl\" [situation]=\"'SEARCH'\"></eo-form-element>\n <eo-dynamic-property-switch [parentFormControl]=\"editForm.fulltextFormControl\"\n (onPropertyChanged)=\"parameterChanged($event)\"></eo-dynamic-property-switch>\n </div>\n\n <!-- context type form controls -->\n <h3>{{storedQuery.contextFolderTypes[0]?.label}}</h3>\n <div class=\"form-field\" *ngFor=\"let ctxElement of editForm.contextControls; trackBy: trackByQName\">\n <eo-form-element [element]=\"ctxElement\" [situation]=\"'SEARCH'\"></eo-form-element>\n <eo-dynamic-property-switch [parentFormControl]=\"ctxElement\" (onPropertyChanged)=\"parameterChanged($event)\"></eo-dynamic-property-switch>\n </div>\n </div>\n\n <!-- object type form controls -->\n <div class=\"form-fields\" [ngClass]=\"{empty: !editForm.controls?.length}\">\n <div class=\"form-field\" *ngFor=\"let element of editForm.controls; trackBy: trackByQName\">\n <eo-form-element [element]=\"element\" [situation]=\"'SEARCH'\"></eo-form-element>\n <eo-dynamic-property-switch [parentFormControl]=\"element\" (onPropertyChanged)=\"parameterChanged($event)\"></eo-dynamic-property-switch>\n </div>\n </div>\n </form>\n </div>\n\n <aside class=\"aside\" *ngIf=\"!isNewQuery\">\n\n <!-- favorite and share -->\n <div class=\"meta-actions\">\n\n <ng-container *ngIf=\"isOwnQuery; else sharedWithMe\">\n <eo-icon class=\"button btn-share\" [iconSrc]=\"'assets/_default/svg/ic_share.svg'\" *ngIf=\"enableSharing\"\n [ngClass]=\"{active: storedQuery.shared || storedQuery.roles.length, editing: editingShare}\"\n (click)=\"toggleShareEdit()\"\n [iconTitle]=\"iconTitles.share\"></eo-icon>\n\n <eo-icon class=\"button btn-fav\" [iconSrc]=\"'assets/_default/svg/ic_favorite.svg'\"\n [ngClass]=\"{active: storedQuery.favorite}\"\n (click)=\"toggleFavoriteState()\"\n [iconTitle]=\"iconTitles.favor\"></eo-icon>\n </ng-container>\n\n <ng-template #sharedWithMe>\n <eo-icon class=\"sharedWithMe\" [iconSrc]=\"'assets/_default/svg/ic_share.svg'\" [iconTitle]=\"iconTitles.shared\"></eo-icon>\n <eo-icon class=\"sharedWithMe\" [iconSrc]=\"'assets/_default/svg/ic_favorite.svg'\" [iconTitle]=\"iconTitles.favored\"></eo-icon>\n </ng-template>\n\n </div>\n\n <!-- roles that share this query -->\n <div class=\"meta-roles\" [ngClass]=\"{dark: editingShare, empty: !storedQuery.roles?.length}\">\n\n <div class=\"label\" translate>eo.storedquery.share.sharedwith</div>\n <div class=\"form-field\" *ngIf=\"rolesPicker?.codesystem?.entries\">\n <eo-codesystem [pickerTitle]=\"rolesPicker.title\"\n [codesystem]=\"rolesPicker.codesystem\"\n [multiselect]=\"true\"\n [readonly]=\"!editingShare\"\n [inputStyleClass]=\"'stored-query__share'\"\n [(ngModel)]=\"rolesPicker.value\"></eo-codesystem>\n </div>\n\n <div class=\"share-actions\" *ngIf=\"editingShare\">\n <button class=\"secondary\" (click)=\"cancelShare()\" translate>eo.storedquery.share.cancel</button>\n <button class=\"primary\" (click)=\"share()\" translate>eo.storedquery.share.ok</button>\n </div>\n </div>\n\n <!-- queries meta info like baseparam settings -->\n <div class=\"meta-data\" *ngIf=\"restrictions?.length\">\n <div class=\"restriction\" *ngFor=\"let restriction of restrictions; trackBy: trackByIndex\">\n <div class=\"label\">{{restriction.label}}</div>\n <div class=\"items\">\n <div *ngFor=\"let item of restriction.items; trackBy: trackByIndex\">{{item}}</div>\n </div>\n </div>\n </div>\n\n </aside>\n\n </div>\n\n <div class=\"actions\">\n <ng-container *ngIf=\"!editForm.form; else actionEdit\">\n <button class=\"secondary btn-delete\" (click)=\"delete()\" [disabled]=\"!isOwnQuery\" translate>eo.storedquery.action.delete</button>\n <button class=\"secondary btn-open\" (click)=\"setQueryToAppSearch()\" [disabled]=\"!isOwnQuery\" translate>eo.storedquery.load</button>\n <button class=\"primary grey btn-edit\" (click)=\"edit()\" [disabled]=\"!isOwnQuery\" translate>eo.storedquery.action.edit</button>\n <button class=\"primary btn-search\" [disabled]=\"storedQuery.state?.isEmpty\" (click)=\"executeQuery()\" translate>eo.storedquery.run</button>\n </ng-container>\n\n <ng-template #actionEdit>\n <!-- action while editing the query form -->\n <button class=\"secondary btn-cancel\" (click)=\"cancelEdit()\" translate>eo.storedquery.action.cancel</button>\n <button class=\"primary btn-save\" (click)=\"updateStoredQuery()\" [disabled]=\"editForm.form.invalid\" translate>eo.storedquery.action.save</button>\n </ng-template>\n </div>\n\n</ng-container>\n",
17862
+ template: "<ng-container *ngIf=\"storedQuery\">\n <div class=\"eo-head\">\n <header class=\"eo-header\">\n <eo-icon class=\"eo-header-icon\"\n [iconSrc]=\"'assets/_default/svg/ic_search.svg'\"\n [iconTitle]=\"('eo.sidebar.navigation.storedqueries' | translate)\">\n </eo-icon>\n <div class=\"eo-header-info\">\n <h2 class=\"eo-header-title\">{{storedQuery.name}}</h2>\n <h3 class=\"eo-header-subtitle\" translate>eo.search.title.storedqueries</h3>\n </div>\n </header>\n </div>\n\n <div class=\"eo-body\">\n\n <div class=\"form\">\n\n <ng-template #queryForm>\n <eo-stored-query [query]=\"storedQuery\" [formOnly]=\"true\" #storedQueryForm\n (onQueryLoaded)=\"onStoredQueryLoaded()\"\n (onQueryExecute)=\"onStoredQueryExecute($event)\"></eo-stored-query>\n </ng-template>\n\n <form class=\"edit-form\" [formGroup]=\"editForm.form\" *ngIf=\"editForm.form; else queryForm\">\n\n <div class=\"context dark\">\n\n <!-- title and fulltext term fields -->\n <eo-form-input class=\"title\">\n <input type=\"text\" name=\"storedQueryTitle\" maxlength=\"64\" onfocus=\"this.select()\" [formControlName]=\"'storedQueryTitle'\"/>\n </eo-form-input>\n \n <eo-query-scope-select [selection]=\"queryScope\" (select)=\"setQueryScope($event)\"></eo-query-scope-select>\n <div class=\"form-field\">\n <eo-form-element [skipToggle]=\"true\" [element]=\"editForm.fulltextFormControl\" [situation]=\"'SEARCH'\"></eo-form-element>\n <eo-dynamic-property-switch [parentFormControl]=\"editForm.fulltextFormControl\"\n (onPropertyChanged)=\"parameterChanged($event)\"></eo-dynamic-property-switch>\n </div>\n\n <!-- context type form controls -->\n <h3>{{storedQuery.contextFolderTypes[0]?.label}}</h3>\n <div class=\"form-field\" *ngFor=\"let ctxElement of editForm.contextControls; trackBy: trackByQName\">\n <eo-form-element [element]=\"ctxElement\" [situation]=\"'SEARCH'\"></eo-form-element>\n <eo-dynamic-property-switch [parentFormControl]=\"ctxElement\" (onPropertyChanged)=\"parameterChanged($event)\"></eo-dynamic-property-switch>\n </div>\n </div>\n\n <!-- object type form controls -->\n <div class=\"form-fields\" [ngClass]=\"{empty: !editForm.controls?.length}\">\n <div class=\"form-field\" *ngFor=\"let element of editForm.controls; trackBy: trackByQName\">\n <eo-form-element [element]=\"element\" [situation]=\"'SEARCH'\"></eo-form-element>\n <eo-dynamic-property-switch [parentFormControl]=\"element\" (onPropertyChanged)=\"parameterChanged($event)\"></eo-dynamic-property-switch>\n </div>\n </div>\n </form>\n </div>\n\n <aside class=\"aside\" *ngIf=\"!isNewQuery\">\n\n <!-- favorite and share -->\n <div class=\"meta-actions\">\n\n <ng-container *ngIf=\"isOwnQuery; else sharedWithMe\">\n <eo-icon class=\"button btn-share\" [iconSrc]=\"'assets/_default/svg/ic_share.svg'\" *ngIf=\"enableSharing\"\n [ngClass]=\"{active: storedQuery.shared || storedQuery.roles.length, editing: editingShare}\"\n (click)=\"toggleShareEdit()\"\n [iconTitle]=\"iconTitles.share\"></eo-icon>\n\n <eo-icon class=\"button btn-fav\" [iconSrc]=\"'assets/_default/svg/ic_favorite.svg'\"\n [ngClass]=\"{active: storedQuery.favorite}\"\n (click)=\"toggleFavoriteState()\"\n [iconTitle]=\"iconTitles.favor\"></eo-icon>\n </ng-container>\n\n <ng-template #sharedWithMe>\n <eo-icon class=\"sharedWithMe\" [iconSrc]=\"'assets/_default/svg/ic_share.svg'\" [iconTitle]=\"iconTitles.shared\"></eo-icon>\n <eo-icon class=\"sharedWithMe\" [iconSrc]=\"'assets/_default/svg/ic_favorite.svg'\" [iconTitle]=\"iconTitles.favored\"></eo-icon>\n </ng-template>\n\n </div>\n\n <!-- roles that share this query -->\n <div class=\"meta-roles\" [ngClass]=\"{dark: editingShare, empty: !storedQuery.roles?.length}\">\n\n <div class=\"label\" translate>eo.storedquery.share.sharedwith</div>\n <div class=\"form-field\" *ngIf=\"rolesPicker?.codesystem?.entries\">\n <eo-codesystem [pickerTitle]=\"rolesPicker.title\"\n [codesystem]=\"rolesPicker.codesystem\"\n [multiselect]=\"true\"\n [readonly]=\"!editingShare\"\n [inputStyleClass]=\"'stored-query__share'\"\n [(ngModel)]=\"rolesPicker.value\"></eo-codesystem>\n </div>\n\n <div class=\"share-actions\" *ngIf=\"editingShare\">\n <button class=\"secondary\" (click)=\"cancelShare()\" translate>eo.storedquery.share.cancel</button>\n <button class=\"primary\" (click)=\"share()\" translate>eo.storedquery.share.ok</button>\n </div>\n </div>\n\n <!-- queries meta info like baseparam settings -->\n <div class=\"meta-data\" *ngIf=\"restrictions?.length\">\n <div class=\"restriction\" *ngFor=\"let restriction of restrictions; trackBy: trackByIndex\">\n <div class=\"label\">{{restriction.label}}</div>\n <div class=\"items\">\n <div *ngFor=\"let item of restriction.items; trackBy: trackByIndex\">{{item}}</div>\n </div>\n </div>\n </div>\n\n </aside>\n\n </div>\n\n <div class=\"actions\">\n <ng-container *ngIf=\"!editForm.form; else actionEdit\">\n <button class=\"secondary btn-delete\" (click)=\"delete()\" [disabled]=\"!isOwnQuery\" translate>eo.storedquery.action.delete</button>\n <button class=\"secondary btn-open\" (click)=\"setQueryToAppSearch()\" [disabled]=\"!isOwnQuery\" translate>eo.storedquery.load</button>\n <button class=\"primary grey btn-edit\" (click)=\"edit()\" [disabled]=\"!isOwnQuery\" translate>eo.storedquery.action.edit</button>\n <button class=\"primary btn-search\" [disabled]=\"storedQuery.state?.isEmpty\" (click)=\"executeQuery()\" translate>eo.storedquery.run</button>\n </ng-container>\n\n <ng-template #actionEdit>\n <!-- action while editing the query form -->\n <button class=\"secondary btn-cancel\" (click)=\"cancelEdit()\" translate>eo.storedquery.action.cancel</button>\n <button class=\"primary btn-save\" (click)=\"updateStoredQuery()\" [disabled]=\"editForm.form.invalid\" translate>eo.storedquery.action.save</button>\n </ng-template>\n </div>\n\n</ng-container>\n",
17865
17863
  styles: [":host{--stored-query-aside-width:300px;background:var(--panel-background-grey);display:flex;flex:1;flex-direction:column;height:100%;min-height:0;min-width:0;overflow-y:auto}:host .eo-head{background-color:var(--color-white);border-bottom:1px solid var(--panel-header-border-bottom-color)}:host .eo-body{overflow-y:hidden}:host .eo-body .form{overflow-y:auto;padding:var(--app-pane-padding);padding-right:calc(var(--stored-query-aside-width) + var(--app-pane-padding)*2)}:host .eo-body .form eo-stored-query{background-color:var(--color-white);padding:var(--app-pane-padding)}:host .eo-body .aside{background-color:rgba(var(--color-black-rgb),.02);border:1px solid rgba(var(--color-black-rgb),.1);box-sizing:border-box;padding:var(--app-pane-padding);position:absolute;right:var(--app-pane-padding);top:var(--app-pane-padding);width:var(--stored-query-aside-width)}:host .eo-body .aside .meta-actions{display:flex;justify-content:flex-end;margin:0 -2px}:host .eo-body .aside .meta-actions eo-icon{color:var(--text-color-hint);margin:0 2px;padding:4px}:host .eo-body .aside .meta-actions eo-icon.active{color:var(--color-favorite)}:host .eo-body .aside .meta-actions eo-icon.editing{background-color:var(--color-primary-2);border-radius:2px 2px 0 0;color:var(--color-white)}:host .eo-body .aside .meta-actions eo-icon.sharedWithMe{background-color:var(--text-color-hint);border-radius:2px;color:var(--color-white)}:host .eo-body .aside .meta-roles.dark{background-color:var(--color-primary-2);border-radius:2px;color:var(--color-white);margin-bottom:var(--app-pane-padding);padding:calc(var(--app-pane-padding)/2)}:host .eo-body .aside .meta-roles.dark .actions{display:flex}:host .eo-body .aside .meta-roles.dark .label{display:none}:host .eo-body .aside .meta-roles.dark .form-field,:host .eo-body .aside .meta-roles .form-field{background-color:rgba(var(--color-white-rgb),.2)}:host .eo-body .aside .meta-roles .form-field{border:1px solid rgba(var(--color-black-rgb),.1);margin-bottom:calc(var(--app-pane-padding)/2);padding:2px 2px 4px 4px}:host .eo-body .aside .meta-roles .label{color:var(--text-color-caption);font-style:italic;margin-bottom:calc(var(--app-pane-padding)/4)}:host .eo-body .aside .meta-roles .share-actions{display:flex;justify-content:flex-end;margin:0 calc(var(--app-pane-padding)/8*-1)}:host .eo-body .aside .meta-roles .share-actions button{margin:0 calc(var(--app-pane-padding)/8);padding:calc(var(--app-pane-padding)/4) calc(var(--app-pane-padding)/2)}:host .eo-body .aside .meta-roles.empty:not(.dark) .form-field,:host .eo-body .aside .meta-roles.empty:not(.dark) .label{display:none}:host .eo-body .aside .meta-data{border-collapse:collapse;display:table;flex:1 1 40%;margin:0 0 var(--app-pane-padding) 0;order:1}:host .eo-body .aside .meta-data .restriction{display:table-row}:host .eo-body .aside .meta-data .restriction .label{color:var(--text-color-caption);display:table-cell;font-style:italic;padding-right:calc(var(--app-pane-padding)/2)}:host .eo-body .aside .meta-data .restriction .items{border-left:1px solid rgba(var(--color-black-rgb),.1);display:table-cell;padding:0 0 calc(var(--app-pane-padding)/2) calc(var(--app-pane-padding)/2)}:host .actions{background-color:var(--color-white);border-top:1px solid var(--panel-header-border-bottom-color);display:flex;flex-flow:row;justify-content:flex-end;padding:var(--app-pane-padding) calc(var(--app-pane-padding) - 2px)}:host .actions button{margin:0 2px}:host .edit-form{background-color:var(--color-white);max-width:500px}:host .edit-form .context{background-color:var(--color-primary-2);padding:calc(var(--app-pane-padding)/2)}:host .edit-form .context h3{color:var(--color-white);display:flex;font-size:var(--font-subhead);font-weight:var(--font-weight-light);justify-content:flex-end;margin:0;padding:var(--app-pane-padding) 0 calc(var(--app-pane-padding)/2) 0}:host .edit-form .form-fields{padding:calc(var(--app-pane-padding)/2)}:host .edit-form .form-fields.empty{display:none}:host .edit-form .form-field{align-items:center;display:flex;flex-flow:row nowrap}:host .edit-form .form-field eo-form-element{flex:1 1 auto}:host .edit-form .form-field eo-dynamic-property-switch{flex:0 0 auto}:host eo-stored-query{display:block;max-width:500px}:host ::ng-deep eo-form-input.title{display:block;margin-bottom:var(--app-pane-padding)}:host ::ng-deep eo-form-input.title input{font-size:var(--font-title);font-weight:var(--font-weight-light)}"]
17866
17864
  },] }
17867
17865
  ];
@@ -17874,6 +17872,7 @@ StoredQueryDetailsComponent.ctorParameters = () => [
17874
17872
  { type: PendingChangesService },
17875
17873
  { type: StoredQueriesService },
17876
17874
  { type: ObjectFormHelperService },
17875
+ { type: ElementRef },
17877
17876
  { type: TranslateService }
17878
17877
  ];
17879
17878
  StoredQueryDetailsComponent.propDecorators = {
@@ -18429,7 +18428,7 @@ class ObjectDetailsComponent extends UnsubscribeOnDestroy {
18429
18428
  ObjectDetailsComponent.decorators = [
18430
18429
  { type: Component, args: [{
18431
18430
  selector: 'eo-object-details',
18432
- template: "<div class=\"loader-overlay__mask\" *ngIf=\"showLoader\">\n <eo-loading-spinner class=\"object-detail__loader\"></eo-loading-spinner>\n</div>\n<ng-container *ngIf=\"item && !hasError; else noItem\">\n\n <div class=\"eo-head eo-head-tabs\" [eoShortcuts]=\"shortcuts\">\n <header class=\"eo-header\">\n <eo-icon class=\"eo-header-icon\" [objectType]=\"item.type\" [iconTitle]=\"item.type.label\"></eo-icon>\n <div class=\"eo-header-info\">\n <h2 class=\"eo-header-title\">{{item.title}}</h2>\n <h3 class=\"eo-header-subtitle\">{{item.description}}</h3>\n </div>\n\n <div class=\"eo-header-actions-container\">\n <div class=\"eo-header-actions\">\n <ng-container *ngIf=\"!isReference; else tplHeadReference\">\n <eo-icon class=\"button refresh-button\" [iconSrc]=\"'assets/_default/svg/ic_refresh.svg'\"\n [iconTitle]=\"('eo.list.refresh' | translate)\" (click)=\"refreshContent()\"></eo-icon>\n <eo-icon class=\"button sync-tab-btn\" *ngIf=\"enableCompare\" [ngClass]=\"{'enabled': enableSync}\"\n [iconSrc]=\"'assets/_default/svg/ic_link.svg'\" [iconTitle]=\"'eo.versions.detail.glue.tooltip' | translate\"\n (click)=\"enableSync = !enableSync\"></eo-icon>\n <eo-favorite-icon [item]=\"item\" *ngIf=\"!enableCompare && capabilities.favorites && !isJournalObject(item)\">\n </eo-favorite-icon>\n <eo-icon class=\"button oc-button\" *ngIf=\"!enableCompare && item.content\" (click)=\"downloadOriginalContent()\"\n [iconTitle]=\"('eo.action.download.dms.object.content.label' | translate)\" [iconSrc]=\"'assets/_default/svg/ic_content-download.svg'\"></eo-icon>\n <eo-edit-icon [item]=\"item\" *ngIf=\"!enableCompare && item.content && item.rights.edit && (agentIsConnected$ | async)\">\n </eo-edit-icon>\n <eo-icon class=\"button am-button\" (click)=\"showActions()\"\n [iconTitle]=\"('eo.object.details.actions.title' | translate)\"\n [iconSrc]=\"'assets/_default/svg/ic_more.svg'\"></eo-icon>\n </ng-container>\n\n <ng-template #tplHeadReference>\n <a class=\"button reference primary\"\n [title]=\"('eo.object.reference.tooltip' | translate:{title:referenceTitle})\"\n [routerLink]=\"['/object', item.id]\"\n [queryParams]=\"{type: item.typeName}\">{{'eo.object.reference.open'|translate}}</a>\n </ng-template>\n\n </div>\n\n <div class=\"eo-header-status-icons\">\n <a class=\"content-link\" [title]=\"'eo.object.contentlink.tooltip' | translate\" *ngIf=\"item.content?.linked\"\n [routerLink]=\"'/object/' + item.content.id\" [queryParams]=\"{type: item.content.type}\">\n <span>{{'eo.object.contentlink' | translate}}</span>\n </a>\n <eo-icon class=\"subscription-icon\" *ngIf=\"item.subscriptions.length\"\n [iconSrc]=\"'assets/_default/svg/ic_subscription.svg'\"\n [iconTitle]=\"subscriptionIconTooltip\"></eo-icon>\n <eo-icon class=\"resubmission-icon\" *ngIf=\"item.resubmissions.length\"\n [iconSrc]=\"'assets/_default/svg/ic_resubmission.svg'\"\n [iconTitle]=\"'eo.object.resubmission.tooltip' | translate\"></eo-icon>\n <eo-icon class=\"lock\" [ngClass]=\"{'myLock': item.lock.by.me}\" *ngIf=\"item.lock\"\n [iconSrc]=\"'assets/_default/svg/ic_lock.svg'\" [iconTitle]=\"lockTooltip\"></eo-icon>\n <eo-icon class=\"finalized-icon\" *ngIf=\"item.isFinalized\" [iconSrc]=\"'assets/_default/svg/ic_finalized.svg'\"\n [iconTitle]=\"'eo.object.finalized.tooltip' | translate\"></eo-icon>\n </div>\n </div>\n </header>\n </div>\n <div class=\"eo-body\">\n <eo-tab-container [pluginPanels]=\"externalPanels\" [cacheLayout]=\"!enableCompare && cacheLayout\" [defaultPanelOrder]=\"!enableCompare && panelOrder\"\n [dndEnabled]=\"!enableCompare\" [enableSlave]=\"!enableCompare || item2\" [enableSync]=\"enableCompare && enableSync\"\n [version]=\"enableCompare && {master: item && item.version, slave: item2 && item2.version}\">\n\n <eo-tab-panel [id]=\"'summary'\" *ngIf=\"isVisible('summary')\" header=\"{{'eo.object.summary.title' | translate}}\">\n <ng-template pTemplate=\"content\">\n <eo-indexdata-summary [indexdata]=\"indexDataPreview\" [baseparams]=\"baseparams\" [dmsObject]=\"item\"\n [enableVersions]=\"!enableCompare\"></eo-indexdata-summary>\n </ng-template>\n </eo-tab-panel>\n\n <eo-tab-panel [id]=\"'indexdata'\" *ngIf=\"isVisible('indexdata')\" header=\"{{'eo.object.indexdata.title' | translate}}\">\n <ng-template pTemplate=\"content\">\n <eo-object-form-edit [dmsObject]=\"item\" (indexDataSaved)=\"onIndexDataSaved($event, item)\"\n [formDisabled]=\"enableCompare || isReference\"></eo-object-form-edit>\n </ng-template>\n </eo-tab-panel>\n \n <eo-tab-panel [id]=\"'preview'\" *ngIf=\"isVisible('preview')\" header=\"{{'eo.object.content.title' | translate}}\" [isSlave]=\"!enableCompare\"\n #preview>\n <ng-template pTemplate=\"content\" *ngIf=\"!undockWinActive; else loadPreview\">\n <eo-media *ngIf=\"item\" [dmsObject]=\"item\" [disabled]=\"!preview.selected\"\n [useVersion]=\"item.id === item.content?.id\" [searchTerm]=\"searchTerm\" #viewer></eo-media>\n </ng-template>\n <ng-template #loadPreview>\n <eo-media *ngIf=\"item\" [dmsObject]=\"item\"\n [useVersion]=\"item.id === item.content?.id\" [searchTerm]=\"searchTerm\" #viewer></eo-media>\n </ng-template>\n </eo-tab-panel>\n\n <eo-tab-panel *ngIf=\"isVisible('history') && !enableCompare\" [id]=\"'history'\" header=\"{{'eo.object.history.title' | translate}}\" #history>\n <ng-template pTemplate=\"content\">\n <eo-object-history *ngIf=\"history.selected\" [params]=\"{id: item.id, type: item.type?.qname}\">\n </eo-object-history>\n </ng-template>\n </eo-tab-panel>\n\n <eo-tab-panel *ngIf=\"isVisible('links') && !enableCompare\" [id]=\"'links'\" header=\"{{'eo.object.links.title' | translate}}\" #links>\n <ng-template pTemplate=\"content\">\n <eo-object-links *ngIf=\"links.selected\" [dmsObject]=\"item\"></eo-object-links>\n </ng-template>\n </eo-tab-panel>\n\n <!-- slave tabs -->\n\n <eo-tab-panel *ngIf=\"isVisible('summary') && enableCompare\" [id]=\"'summary2'\" header=\"{{'eo.object.summary.title' | translate}}\"\n [isSlave]=\"true\">\n <ng-template pTemplate=\"content\">\n <eo-indexdata-summary *ngIf=\"item2\" [indexdata]=\"indexDataPreview2\" [baseparams]=\"baseparams2\"\n [dmsObject]=\"item2\" [enableVersions]=\"!enableCompare\"></eo-indexdata-summary>\n </ng-template>\n </eo-tab-panel>\n\n <eo-tab-panel *ngIf=\"isVisible('indexdata') && enableCompare\" [id]=\"'indexdata2'\" header=\"{{'eo.object.indexdata.title' | translate}}\"\n [isSlave]=\"true\">\n <ng-template pTemplate=\"content\">\n <eo-object-form-edit *ngIf=\"item2\" [dmsObject]=\"item2\" (indexDataSaved)=\"onIndexDataSaved($event, item2)\"\n [formDisabled]=\"enableCompare || isReference\"></eo-object-form-edit>\n </ng-template>\n </eo-tab-panel>\n\n <eo-tab-panel *ngIf=\"isVisible('preview') && enableCompare\" [id]=\"'preview2'\" header=\"{{'eo.object.content.title' | translate}}\"\n [isSlave]=\"true\" #preview2>\n <ng-template pTemplate=\"content\">\n <eo-media *ngIf=\"item2\" [dmsObject]=\"item2\" [disabled]=\"!preview2.selected\" [undockDisabled]=\"enableCompare\"\n [useVersion]=\"true\" [searchTerm]=\"searchTerm\" #viewer2></eo-media>\n </ng-template>\n </eo-tab-panel>\n \n <eo-tab-panel *ngIf=\"enableCompare && enableDiff\" [id]=\"'changes'\" header=\"{{'eo.object.changes.title' | translate}}\"\n [isSlave]=\"true\">\n <ng-template pTemplate=\"content\">\n <eo-indexdata-summary *ngIf=\"item2\" [diff]=\"{indexdata : indexDataPreview, indexdata2: indexDataPreview2, baseparams: baseparams, baseparams2: baseparams2}\" \n [dmsObject]=\"item2\" [enableVersions]=\"!enableCompare\"></eo-indexdata-summary>\n </ng-template>\n </eo-tab-panel>\n\n <ng-content></ng-content>\n\n </eo-tab-container>\n </div>\n</ng-container>\n\n<ng-template #noItem>\n <span class=\"not-found\" *ngIf=\"nodmsobject\" translate>eo.bpm.nodmsobject</span>\n <eo-error-message *ngIf=\"!showLoader\"\n [emptyState]=\"{icon: emptyState.icon, text: emptyState.text, className: emptyState.className}\">\n <ng-content select=\".error\"></ng-content>\n </eo-error-message>\n</ng-template>",
18431
+ template: "<div class=\"loader-overlay__mask\" *ngIf=\"showLoader\">\n <eo-loading-spinner class=\"object-detail__loader\"></eo-loading-spinner>\n</div>\n<ng-container *ngIf=\"item && !hasError; else noItem\">\n\n <div class=\"eo-head eo-head-tabs\" [eoShortcuts]=\"shortcuts\">\n <header class=\"eo-header\">\n <eo-icon class=\"eo-header-icon\" [objectType]=\"item.type\" [iconTitle]=\"item.type.label\"></eo-icon>\n <div class=\"eo-header-info\">\n <h2 class=\"eo-header-title\">{{item.title}}</h2>\n <h3 class=\"eo-header-subtitle\">{{item.description}}</h3>\n </div>\n\n <div class=\"eo-header-actions-container\">\n <div class=\"eo-header-actions\">\n <ng-container *ngIf=\"!isReference; else tplHeadReference\">\n <eo-icon class=\"button refresh-button\" [iconSrc]=\"'assets/_default/svg/ic_refresh.svg'\"\n [iconTitle]=\"('eo.list.refresh' | translate)\" (click)=\"refreshContent()\"></eo-icon>\n <eo-icon class=\"button sync-tab-btn\" *ngIf=\"enableCompare\" [ngClass]=\"{'enabled': enableSync}\"\n [iconSrc]=\"'assets/_default/svg/ic_link.svg'\" [iconTitle]=\"'eo.versions.detail.glue.tooltip' | translate\"\n (click)=\"enableSync = !enableSync\"></eo-icon>\n <eo-favorite-icon [item]=\"item\" *ngIf=\"!enableCompare && capabilities.favorites && !isJournalObject(item)\">\n </eo-favorite-icon>\n <eo-icon class=\"button oc-button\" *ngIf=\"!enableCompare && item.content\" (click)=\"downloadOriginalContent()\"\n [iconTitle]=\"('eo.action.download.dms.object.content.label' | translate)\" [iconSrc]=\"'assets/_default/svg/ic_content-download.svg'\"></eo-icon>\n <eo-edit-icon [item]=\"item\" *ngIf=\"!enableCompare && item.content && item.rights.edit && (agentIsConnected$ | async)\">\n </eo-edit-icon>\n <eo-icon class=\"button am-button\" (click)=\"showActions()\"\n [iconTitle]=\"('eo.object.details.actions.title' | translate)\"\n [iconSrc]=\"'assets/_default/svg/ic_more.svg'\"></eo-icon>\n </ng-container>\n\n <ng-template #tplHeadReference>\n <a class=\"button reference primary\"\n [title]=\"('eo.object.reference.tooltip' | translate:{title:referenceTitle})\"\n [routerLink]=\"['/object', item.id]\"\n [queryParams]=\"{type: item.typeName}\">{{'eo.object.reference.open'|translate}}</a>\n </ng-template>\n\n </div>\n\n <div class=\"eo-header-status-icons\">\n <a class=\"content-link\" [title]=\"'eo.object.contentlink.tooltip' | translate\" *ngIf=\"item.content?.linked\"\n [routerLink]=\"'/object/' + item.content.id\" [queryParams]=\"{type: item.content.type}\">\n <span>{{'eo.object.contentlink' | translate}}</span>\n </a>\n <eo-icon class=\"subscription-icon\" *ngIf=\"item.subscriptions.length\"\n [iconSrc]=\"'assets/_default/svg/ic_subscription.svg'\"\n [iconTitle]=\"subscriptionIconTooltip\"></eo-icon>\n <eo-icon class=\"resubmission-icon\" *ngIf=\"item.resubmissions.length\"\n [iconSrc]=\"'assets/_default/svg/ic_resubmission.svg'\"\n [iconTitle]=\"'eo.object.resubmission.tooltip' | translate\"></eo-icon>\n <eo-icon class=\"shared-icon\" *ngIf=\"item.additionalvisibility.length\"\n [iconSrc]=\"'assets/_default/svg/ic_share.svg'\"\n [iconTitle]=\"'eo.object.shared.tooltip' | translate\"></eo-icon>\n <eo-icon class=\"lock\" [ngClass]=\"{'myLock': item.lock.by.me}\" *ngIf=\"item.lock\"\n [iconSrc]=\"'assets/_default/svg/ic_lock.svg'\" [iconTitle]=\"lockTooltip\"></eo-icon>\n <eo-icon class=\"finalized-icon\" *ngIf=\"item.isFinalized\" [iconSrc]=\"'assets/_default/svg/ic_finalized.svg'\"\n [iconTitle]=\"'eo.object.finalized.tooltip' | translate\"></eo-icon>\n </div>\n </div>\n </header>\n </div>\n <div class=\"eo-body\">\n <eo-tab-container [pluginPanels]=\"externalPanels\" [cacheLayout]=\"!enableCompare && cacheLayout\" [defaultPanelOrder]=\"!enableCompare && panelOrder\"\n [dndEnabled]=\"!enableCompare\" [enableSlave]=\"!enableCompare || item2\" [enableSync]=\"enableCompare && enableSync\"\n [version]=\"enableCompare && {master: item && item.version, slave: item2 && item2.version}\">\n\n <eo-tab-panel [id]=\"'summary'\" *ngIf=\"isVisible('summary')\" header=\"{{'eo.object.summary.title' | translate}}\">\n <ng-template pTemplate=\"content\">\n <eo-indexdata-summary [indexdata]=\"indexDataPreview\" [baseparams]=\"baseparams\" [dmsObject]=\"item\"\n [enableVersions]=\"!enableCompare\"></eo-indexdata-summary>\n </ng-template>\n </eo-tab-panel>\n\n <eo-tab-panel [id]=\"'indexdata'\" *ngIf=\"isVisible('indexdata')\" header=\"{{'eo.object.indexdata.title' | translate}}\">\n <ng-template pTemplate=\"content\">\n <eo-object-form-edit [dmsObject]=\"item\" (indexDataSaved)=\"onIndexDataSaved($event, item)\"\n [formDisabled]=\"enableCompare || isReference\"></eo-object-form-edit>\n </ng-template>\n </eo-tab-panel>\n\n <eo-tab-panel [id]=\"'preview'\" *ngIf=\"isVisible('preview')\" header=\"{{'eo.object.content.title' | translate}}\" [isSlave]=\"!enableCompare\"\n #preview>\n <ng-template pTemplate=\"content\" *ngIf=\"!undockWinActive; else loadPreview\">\n <eo-media *ngIf=\"item\" [dmsObject]=\"item\" [disabled]=\"!preview.selected\"\n [useVersion]=\"item.id === item.content?.id\" [searchTerm]=\"searchTerm\" #viewer></eo-media>\n </ng-template>\n <ng-template #loadPreview>\n <eo-media *ngIf=\"item\" [dmsObject]=\"item\"\n [useVersion]=\"item.id === item.content?.id\" [searchTerm]=\"searchTerm\" #viewer></eo-media>\n </ng-template>\n </eo-tab-panel>\n\n <eo-tab-panel *ngIf=\"isVisible('history') && !enableCompare\" [id]=\"'history'\" header=\"{{'eo.object.history.title' | translate}}\" #history>\n <ng-template pTemplate=\"content\">\n <eo-object-history *ngIf=\"history.selected\" [params]=\"{id: item.id, type: item.type?.qname}\">\n </eo-object-history>\n </ng-template>\n </eo-tab-panel>\n\n <eo-tab-panel *ngIf=\"isVisible('links') && !enableCompare\" [id]=\"'links'\" header=\"{{'eo.object.links.title' | translate}}\" #links>\n <ng-template pTemplate=\"content\">\n <eo-object-links *ngIf=\"links.selected\" [dmsObject]=\"item\"></eo-object-links>\n </ng-template>\n </eo-tab-panel>\n\n <!-- slave tabs -->\n\n <eo-tab-panel *ngIf=\"isVisible('summary') && enableCompare\" [id]=\"'summary2'\" header=\"{{'eo.object.summary.title' | translate}}\"\n [isSlave]=\"true\">\n <ng-template pTemplate=\"content\">\n <eo-indexdata-summary *ngIf=\"item2\" [indexdata]=\"indexDataPreview2\" [baseparams]=\"baseparams2\"\n [dmsObject]=\"item2\" [enableVersions]=\"!enableCompare\"></eo-indexdata-summary>\n </ng-template>\n </eo-tab-panel>\n\n <eo-tab-panel *ngIf=\"isVisible('indexdata') && enableCompare\" [id]=\"'indexdata2'\" header=\"{{'eo.object.indexdata.title' | translate}}\"\n [isSlave]=\"true\">\n <ng-template pTemplate=\"content\">\n <eo-object-form-edit *ngIf=\"item2\" [dmsObject]=\"item2\" (indexDataSaved)=\"onIndexDataSaved($event, item2)\"\n [formDisabled]=\"enableCompare || isReference\"></eo-object-form-edit>\n </ng-template>\n </eo-tab-panel>\n\n <eo-tab-panel *ngIf=\"isVisible('preview') && enableCompare\" [id]=\"'preview2'\" header=\"{{'eo.object.content.title' | translate}}\"\n [isSlave]=\"true\" #preview2>\n <ng-template pTemplate=\"content\">\n <eo-media *ngIf=\"item2\" [dmsObject]=\"item2\" [disabled]=\"!preview2.selected\" [undockDisabled]=\"enableCompare\"\n [useVersion]=\"true\" [searchTerm]=\"searchTerm\" #viewer2></eo-media>\n </ng-template>\n </eo-tab-panel>\n\n <eo-tab-panel *ngIf=\"enableCompare && enableDiff\" [id]=\"'changes'\" header=\"{{'eo.object.changes.title' | translate}}\"\n [isSlave]=\"true\">\n <ng-template pTemplate=\"content\">\n <eo-indexdata-summary *ngIf=\"item2\" [diff]=\"{indexdata : indexDataPreview, indexdata2: indexDataPreview2, baseparams: baseparams, baseparams2: baseparams2}\"\n [dmsObject]=\"item2\" [enableVersions]=\"!enableCompare\"></eo-indexdata-summary>\n </ng-template>\n </eo-tab-panel>\n\n <ng-content></ng-content>\n\n </eo-tab-container>\n </div>\n</ng-container>\n\n<ng-template #noItem>\n <span class=\"not-found\" *ngIf=\"nodmsobject\" translate>eo.bpm.nodmsobject</span>\n <eo-error-message *ngIf=\"!showLoader\"\n [emptyState]=\"{icon: emptyState.icon, text: emptyState.text, className: emptyState.className}\">\n <ng-content select=\".error\"></ng-content>\n </eo-error-message>\n</ng-template>\n",
18433
18432
  providers: [ContentPreviewService],
18434
18433
  styles: [":host{background:var(--panel-background-grey);display:flex;flex:1;flex-direction:column;height:100%;min-height:0;min-width:0;overflow-y:auto}:host .eo-head .eo-header .eo-header-info .eo-header-subtitle,:host .eo-head .eo-header .eo-header-info .eo-header-title{-moz-user-select:text;-webkit-user-select:text;user-select:text}:host .eo-body__not-available{background:rgba(var(--color-black-rgb),.4);opacity:.4}:host .sync-tab-btn.enabled{color:var(--color-accent)}:host .lock{background:var(--color-error)!important;border-radius:2px;color:var(--color-white);height:18px;padding:1px;width:18px}:host .lock.myLock{background:var(--state-orange)!important;color:var(--color-white)}:host .not-found{background:var(--color-error);border-radius:2px;color:var(--panel-background);flex:0 0 auto;margin:calc(var(--app-pane-padding)/2);padding:calc(var(--app-pane-padding)/4);text-align:center}:host .eo-header-status-icons{display:flex;justify-content:flex-end;margin-top:var(--app-pane-padding)}:host .eo-header-status-icons>eo-icon{background-color:var(--color-primary-2);color:var(--color-white);height:18px;margin-left:1px;padding:calc(var(--app-pane-padding)/4);width:18px}:host .eo-header-status-icons>eo-icon:first-child{border-bottom-left-radius:4px;border-top-left-radius:4px}:host .eo-header-status-icons>eo-icon:last-child{border-bottom-right-radius:4px;border-top-right-radius:4px}:host .eo-header-status-icons>eo-icon.finalized-icon{background-color:var(--color-success)}:host .eo-header-status-icons>eo-icon.lock{background:var(--color-error)!important;border-radius:2px;color:var(--color-white);height:18px;padding:1px;width:18px}:host .eo-header-status-icons>eo-icon.lock.myLock{background:var(--state-orange)!important}:host .eo-header-status-icons>a{align-items:center;background-color:var(--color-success);border-radius:2px;color:var(--color-white);display:flex;font-size:var(--font-hint);line-height:var(--font-hint);margin:0 calc(var(--app-pane-padding)/4);padding:0 4px 1px;text-decoration:none}:host .loader-overlay__mask{-webkit-animation:eoFadeIn .5s;animation:eoFadeIn .5s;background:rgba(var(--color-white-rgb),.8);display:flex;height:100%;position:absolute;width:100%;z-index:11}:host .loader-overlay__mask .object-detail__loader{margin:auto}:host ::ng-deep .sync-tab-btn{color:rgba(var(--color-black-rgb),.2)}:host ::ng-deep .sync-tab-btn .svg-link{fill:transparent}:host ::ng-deep .sync-tab-btn.enabled .svg-link{fill:currentColor}:host ::ng-deep div[eosplitgutter]{background-color:var(--color-white)!important}:host ::ng-deep .indexdata-summary,:host ::ng-deep .object-form-edit{margin:var(--app-pane-padding)}:host ::ng-deep #indexdata{overflow:hidden}:host ::ng-deep #indexdata .object-form-edit{background:transparent!important;height:100%;margin:0;position:relative}:host ::ng-deep #indexdata .object-form-edit eo-object-form{background:transparent;overflow:auto}:host ::ng-deep #indexdata .object-form-edit eo-object-form .eo-object-form{background:var(--panel-background);border:1px solid rgba(var(--color-black-rgb),.1);margin:var(--app-pane-padding)}:host ::ng-deep #indexdata .object-form-edit .form-controls{-webkit-animation:eoFadeInUp .2s;animation:eoFadeInUp .2s;border:4px solid var(--panel-background-grey)}:host ::ng-deep #indexdata .object-form-edit .form-controls .buttons{background:var(--panel-background);border-top:1px solid var(--panel-divider-color);padding:calc(var(--app-pane-padding)/2) var(--app-pane-padding)!important}"]
18435
18434
  },] }
@@ -22051,7 +22050,7 @@ class DashboardComponent extends UnsubscribeOnDestroy {
22051
22050
  DashboardComponent.decorators = [
22052
22051
  { type: Component, args: [{
22053
22052
  selector: 'eo-dashboard',
22054
- template: "<div class=\"fade\"></div>\n<div class=\"dashboard\" [style.background-image]=\"backgroundImage\">\n\n <div class=\"db-content\" [ngClass]=\"{centerFocus: (quickSearchResult && quickSearchResult.total > 0) || selectedQuery}\">\n\n <!-- info area --->\n <div class=\"db-left\">\n <a class=\"info\" *ngIf=\"capabilities.inbox && inboxState && inboxState.totalmessages > 0\"\n [routerLink]=\"['/inbox']\">\n <div>\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\n <div class=\"count\">{{inboxState.totalmessages}}</div>\n </div>\n <div class=\"msg\" translate>eo.dashboard.info.inbox.msg</div>\n </a>\n <a class=\"info\" *ngIf=\"capabilities.intray && preparedItemsCount > 0\"\n [routerLink]=\"['/prepare']\">\n <div>\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_prepare.svg'\"></eo-icon>\n <div class=\"count\">{{preparedItemsCount}}</div>\n </div>\n <div class=\"msg\" translate>eo.dashboard.info.intray.msg</div>\n </a>\n </div>\n\n <!-- main content area -->\n <div class=\"db-center\">\n\n <div class=\"top\">\n <div class=\"quick-search\" [ngClass]=\"{disabled: selectedQuery}\">\n\n <div class=\"count\" *ngIf=\"quickSearchResult && quickSearchResult.total !== -1\" (click)=\"executeSearch()\">\n <div *ngIf=\"quickSearchResult.total\">\n <span class=\"count-total\">{{quickSearchResult.total | localeDecimal}}</span>\n <span class=\"label\" translate>eo.quicksearch.hits</span>\n </div>\n <span class=\"label\" *ngIf=\"!quickSearchResult.total\" translate>eo.quicksearch.reults.empty</span>\n </div>\n\n <div class=\"input\">\n <eo-quick-search (onResult)=\"onQuickSearchResult($event)\"\n (onInputChange)=\"onQuickSearchInputChange($event)\"\n #quickSearch></eo-quick-search>\n </div>\n </div>\n </div>\n\n <div class=\"bottom\">\n\n <div class=\"quick-search-results\" *ngIf=\"quickSearchResult && quickSearchResult.total > 0; else storedqueries\">\n\n <div class=\"group\" *ngFor=\"let key of quickSearchResult.groups | keys; index as i\">\n <h2 *ngIf=\"key !== '0'; else maingroup\">{{key}}</h2>\n <ng-template #maingroup>\n <h2 translate>eo.quicksearch.result.group.global</h2>\n </ng-template>\n\n <eo-tree [tree]=\"tree[key]\" [(ngModel)]=\"selectedQuickSearchResultItem\" (ngModelChange)=\"executeSearch($event.data)\" [selectionKey]=\"'Enter'\">\n </eo-tree>\n </div>\n </div>\n\n <ng-template #storedqueries>\n\n <div class=\"stored-queries\" *ngIf=\"capabilities.storedqueries && storedQueries.length\">\n\n <div class=\"query\" *ngIf=\"selectedQuery; else querylist\">\n <div>\n <eo-icon class=\"button\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"\n (click)=\"selectStoredQuery(null)\"></eo-icon>\n </div>\n <eo-stored-query [query]=\"selectedQuery\"\n (onQueryLoaded)=\"onStoredQueryLoaded()\"\n (onQueryExecute)=\"onStoredQueryExecute($event)\"></eo-stored-query>\n </div>\n\n\n <ng-template #querylist>\n <div class=\"queries\" [@listAnimation]=\"storedQueries.length\">\n <a class=\"sq lead\" [routerLink]=\"['/stored-queries']\" translate>eo.sidebar.navigation.storedqueries</a>\n\n <div class=\"sq\" *ngFor=\"let q of storedQueries; trackBy: trackByFn\" (click)=\"selectStoredQuery(q)\" (keyup.enter)=\"selectStoredQuery(q)\" tabindex=\"0\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_stored_query.svg'\"></eo-icon>\n <span>{{q.name}}</span>\n </div>\n </div>\n </ng-template>\n </div>\n </ng-template>\n\n </div>\n\n </div>\n\n <!-- files area -->\n <div class=\"db-right\">\n\n <div class=\"lastEdits\" *ngIf=\"!isCloud && modifiedByMe?.lately.length\">\n <div class=\"header\">\n <h2 translate>eo.dashboard.modified.title</h2>\n </div>\n <div class=\"body\">\n\n <a class=\"item\" *ngFor=\"let item of modifiedByMe.lately\" [routerLink]=\"['/object/', item.id]\">\n <eo-icon [objectType]=\"item.type\"></eo-icon>\n <div>\n <div class=\"modified\">{{item.modified | localeDate}}</div>\n <div class=\"title\">{{item.title}}</div>\n <div class=\"description\">{{item.description}}</div>\n </div>\n </a>\n\n </div>\n </div>\n\n </div>\n\n </div>\n</div>\n\n\n\n",
22053
+ template: "<div class=\"fade\"></div>\n<div class=\"dashboard\" [style.background-image]=\"backgroundImage\">\n\n <div class=\"db-content\" [ngClass]=\"{centerFocus: (quickSearchResult && quickSearchResult.total > 0) || selectedQuery}\">\n\n <!-- info area --->\n <div class=\"db-left\">\n <a class=\"info\" *ngIf=\"capabilities.inbox && inboxState && inboxState.totalmessages > 0\"\n [routerLink]=\"['/inbox']\">\n <div>\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_inbox.svg'\"></eo-icon>\n <div class=\"count\">{{inboxState.totalmessages}}</div>\n </div>\n <div class=\"msg\" translate>eo.dashboard.info.inbox.msg</div>\n </a>\n <a class=\"info\" *ngIf=\"capabilities.intray && preparedItemsCount > 0\"\n [routerLink]=\"['/prepare']\">\n <div>\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_prepare.svg'\"></eo-icon>\n <div class=\"count\">{{preparedItemsCount}}</div>\n </div>\n <div class=\"msg\" translate>eo.dashboard.info.intray.msg</div>\n </a>\n </div>\n\n <!-- main content area -->\n <div class=\"db-center\">\n\n <div class=\"top\">\n <div class=\"quick-search\" [ngClass]=\"{disabled: selectedQuery}\">\n\n <div class=\"count\" *ngIf=\"quickSearchResult && quickSearchResult.total !== -1\" (click)=\"executeSearch()\">\n <div *ngIf=\"quickSearchResult.total\">\n <span class=\"count-total\">{{quickSearchResult.total | localeDecimal}}</span>\n <span class=\"label\" translate>eo.quicksearch.hits</span>\n </div>\n <span class=\"label\" *ngIf=\"!quickSearchResult.total\" translate>eo.quicksearch.reults.empty</span>\n </div>\n\n <div class=\"input\">\n <eo-quick-search (onResult)=\"onQuickSearchResult($event)\"\n (onInputChange)=\"onQuickSearchInputChange($event)\"\n #quickSearch></eo-quick-search>\n </div>\n </div>\n </div>\n\n <div class=\"bottom\">\n\n <div class=\"quick-search-results\" *ngIf=\"quickSearchResult && quickSearchResult.total > 0; else storedqueries\">\n\n <div class=\"group\" *ngFor=\"let key of quickSearchResult.groups | keys; index as i\">\n <h2 *ngIf=\"key !== '0'; else maingroup\">{{key}}</h2>\n <ng-template #maingroup>\n <h2 translate>eo.quicksearch.result.group.global</h2>\n </ng-template>\n\n <eo-tree [tree]=\"tree[key]\" [(ngModel)]=\"selectedQuickSearchResultItem\" (ngModelChange)=\"executeSearch($event.data)\" [selectionKey]=\"'Enter'\">\n </eo-tree>\n </div>\n </div>\n\n <ng-template #storedqueries>\n\n <div class=\"stored-queries\" *ngIf=\"capabilities.storedqueries && storedQueries.length\">\n\n <div class=\"query\" *ngIf=\"selectedQuery; else querylist\">\n <div>\n <eo-icon class=\"button\" [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"\n (click)=\"selectStoredQuery(null)\"></eo-icon>\n </div>\n <eo-stored-query [query]=\"selectedQuery\"\n (onQueryLoaded)=\"onStoredQueryLoaded()\"\n (onQueryExecute)=\"onStoredQueryExecute($event)\"></eo-stored-query>\n </div>\n\n\n <ng-template #querylist>\n <div class=\"queries\" [@listAnimation]=\"storedQueries.length\">\n <a class=\"sq lead\" [routerLink]=\"['/stored-queries']\" translate>eo.sidebar.navigation.storedqueries</a>\n\n <div class=\"sq\" *ngFor=\"let q of storedQueries; trackBy: trackByFn\" (click)=\"selectStoredQuery(q)\" (keyup.enter)=\"selectStoredQuery(q)\" tabindex=\"0\">\n <eo-icon [iconSrc]=\"'assets/_default/svg/ic_stored_query.svg'\"></eo-icon>\n <span>{{q.name}}</span>\n </div>\n </div>\n </ng-template>\n </div>\n </ng-template>\n\n </div>\n\n </div>\n\n <!-- files area -->\n <div class=\"db-right\">\n\n <div class=\"lastEdits\" *ngIf=\"modifiedByMe?.lately.length\">\n <div class=\"header\">\n <h2 translate>eo.dashboard.modified.title</h2>\n </div>\n <div class=\"body\">\n\n <a class=\"item\" *ngFor=\"let item of modifiedByMe.lately\" [routerLink]=\"['/object/', item.id]\">\n <eo-icon [objectType]=\"item.type\"></eo-icon>\n <div>\n <div class=\"modified\">{{item.modified | localeDate}}</div>\n <div class=\"title\">{{item.title}}</div>\n <div class=\"description\">{{item.description}}</div>\n </div>\n </a>\n\n </div>\n </div>\n\n </div>\n\n </div>\n</div>\n\n\n\n",
22055
22054
  animations: [
22056
22055
  listAnimation
22057
22056
  ],
@@ -22086,7 +22085,7 @@ var LockSettings;
22086
22085
  })(LockSettings || (LockSettings = {}));
22087
22086
 
22088
22087
  class SettingsComponent extends UnsubscribeOnDestroy {
22089
- constructor(renderer, userService, config, notify, systemService, eventService, capabilitiesService, envService, titleService, agentService, fb, cacheService, listSettingsService, storageService, translate, notification) {
22088
+ constructor(renderer, userService, config, notify, systemService, eventService, capabilitiesService, envService, titleService, agentService, fb, cacheService, listSettingsService, storageService, translate, elemRef, notification) {
22090
22089
  super();
22091
22090
  this.renderer = renderer;
22092
22091
  this.userService = userService;
@@ -22103,6 +22102,7 @@ class SettingsComponent extends UnsubscribeOnDestroy {
22103
22102
  this.listSettingsService = listSettingsService;
22104
22103
  this.storageService = storageService;
22105
22104
  this.translate = translate;
22105
+ this.elemRef = elemRef;
22106
22106
  this.notification = notification;
22107
22107
  this.LockSettings = LockSettings;
22108
22108
  this.showAgentConfig = true;
@@ -22200,6 +22200,7 @@ class SettingsComponent extends UnsubscribeOnDestroy {
22200
22200
  }
22201
22201
  }
22202
22202
  ngAfterViewInit() {
22203
+ this.elemRef.nativeElement.querySelector('#presence').focus();
22203
22204
  this.user$.subscribe(user => {
22204
22205
  this.userId = user.id;
22205
22206
  this.userImageUri = this.userService.getUserImageUri(this.userId);
@@ -22310,7 +22311,7 @@ class SettingsComponent extends UnsubscribeOnDestroy {
22310
22311
  SettingsComponent.decorators = [
22311
22312
  { type: Component, args: [{
22312
22313
  selector: 'eo-settings',
22313
- template: "<div class=\"eo-settings\" *ngIf=\"user\" eoRtlAware>\n\n <div class=\"header\">\n\n <div #headerBg class=\"bg\"></div>\n <div class=\"fill\">\n <div class=\"meta username\">{{user.name}}</div>\n <h1>{{user.firstname}} {{user.lastname}}</h1>\n <div class=\"meta email\">{{user.email}}</div>\n\n <div class=\"presence\" *ngIf=\"capabilities.inbox\">\n <button class=\"toggle dark present\" (click)=\"setPresence(true)\" [ngClass]=\"{active: user.present}\"\n autofocus translate>eo.state.settings.presence.present</button>\n <button class=\"toggle dark absent\" (click)=\"setPresence(false)\" (keydown.tab)=\"tabAction($event.target)\" [ngClass]=\"{active: !user.present}\"\n translate>eo.state.settings.presence.absent</button>\n </div>\n </div>\n <div (mouseenter)=\"mouseEnter()\" (mouseleave)=\"mouseLeave()\" (keydown.tab)=\"mouseEnter()\">\n\n <eo-user-avatar #userAvatar class=\"userImage\" tabindex=\"-1\" eoRtlAware=\"full\">\n <input type=\"file\" accept=\".jpg, .png\" style=\"display:none;\" #files (change)=\"selectImage($event.target)\">\n </eo-user-avatar>\n <eo-dialog [styleClass]=\"'view'\" [minWidth]=\"'300px'\" [title]=\"'eo.state.settings.details.upload.dialog.title' | translate\"\n [(visible)]=\"showPreviewDialog\" [focusOnShow]=\"false\">\n <ng-container>\n <div class=\"contain\">\n <div class=\"attachments\">\n <div class=\"atta\">\n <img [src]=\"preview\">\n </div>\n <div class=\"user-avatar\">\n <img [src]=\"preview\">\n </div>\n </div>\n </div>\n <div class=\"button-block\">\n <button type=\"button\" (click)=\"closePreviewDialog()\" class=\"button danger\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial (click)=\"uploadNewUserImage()\" class=\"button primary\"\n translate>eo.state.settings.details.dialog.save</button>\n </div>\n </ng-container>\n </eo-dialog>\n\n <div class=\"overlay\" #profileImageOverlay tabindex=\"0\">\n <span class=\"updateMessage\" *ngIf=\"hoverSelector\">\n <eo-icon tabindex=\"0\" (keydown.enter)=\"files.click()\" [iconSrc]=\"'assets/_default/svg/ic_edit.svg'\"\n (click)=\"files.click()\"></eo-icon>\n <eo-icon tabindex=\"0\" (keydown.enter)=\"trashIconClick()\" *ngIf=\"showDeleteIconTrash\"\n [iconSrc]=\"'assets/_default/svg/ic_trash.svg'\" aria-disabled=\"true\" (click)=\"trashIconClick()\"></eo-icon>\n </span>\n </div>\n </div>\n\n </div>\n\n <div class=\"body\" (keydown.tab)=\"tabAction($event.target)\">\n\n <div class=\"body-wrap\">\n\n <div class=\"section section-deputies\" *ngIf=\"capabilities.bpm && hasPrivilege('MANAGE_DEPUTY_LIST')\">\n <h3 translate>eo.state.settings.deputies</h3>\n\n <!-- deputies -->\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.deputies.label</div>\n <div class=\"values\">\n <form #deputiesForm=\"ngForm\" [ngClass]=\"{dirty: deputiesForm.dirty}\">\n <eo-organization name=\"deputies\" [dataMeta]=\"deputies.dataMeta\" [filterObject]=\"{type: 'USER'}\"\n [exceptions]=\"[user.name]\" [multiselect]=\"true\" [(ngModel)]=\"deputies.data\"></eo-organization>\n <div class=\"actions\" *ngIf=\"deputiesForm.valid && deputiesForm.dirty\">\n <button class=\"secondary\" (click)=\"resetDeputies()\" translate>eo.state.settings.deputies.cancel</button>\n <button class=\"primary\" (click)=\"saveDeputies()\" translate>eo.state.settings.deputies.save</button>\n </div>\n </form>\n </div>\n </div>\n\n <!-- substitute of -->\n <div class=\"entry substitute\">\n <div class=\"label\" translate>eo.state.settings.deputies.subsituteof.label</div>\n <div class=\"values\">\n <span class=\"chip\" *ngFor=\"let sub of user.substitutesOf\" [ngClass]=\"{present: sub.present}\">\n <eo-icon class=\"chip substitute substitute--present\" *ngIf=\"sub.present\"\n [iconSrc]=\"'assets/_default/svg/ic_done.svg'\"></eo-icon>\n <eo-icon class=\"chip substitute substitute--away\" *ngIf=\"!sub.present\"\n [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"></eo-icon>\n <span>{{sub.title}} ({{sub.name}})</span>\n </span>\n </div>\n </div>\n </div>\n\n <!-- password -->\n <section *ngIf=\"!isCloud && !isSSO || !isCloud && isSSO\" class=\"section section-password\">\n <div class=\"entry\">\n <div class=\"label\" translate>eo.password.reset</div>\n <div class=\"values\">\n <eo-simple-accordion #simpleAcc [header]=\"('eo.password.reset' | translate)\"\n [styles]=\"'setting__change-password'\" [headerClass]=\"'setting__change-password-header'\">\n\n <eo-change-password-form (onFormSumbit)=\"simpleAcc.onTabClose()\"></eo-change-password-form>\n </eo-simple-accordion>\n </div>\n </div>\n </section>\n\n <!-- language -->\n <div class=\"section section-lang\">\n <h3 translate>eo.state.settings.language</h3>\n <div class=\"entry lang-app\">\n <div class=\"label\" translate>eo.state.settings.language.client</div>\n <div class=\"values\">\n <button class=\"toggle\" (click)=\"changeClientLocale(locale.iso)\"\n [ngClass]=\"{active: translate.currentLang === locale.iso}\"\n *ngFor=\"let locale of clientLocales\">{{locale.label}}\n </button>\n </div>\n </div>\n\n <div class=\"entry lang-def\">\n <div class=\"label\" translate>eo.state.settings.language.schema</div>\n <div class=\"values\">\n <button class=\"toggle\" (click)=\"changeSchemaLocale(locale.code)\"\n [ngClass]=\"{active: activeSchema === locale.code}\"\n *ngFor=\"let locale of schemaLocales\">{{locale.displayname}}</button>\n </div>\n </div>\n </div>\n\n <!-- permissions -->\n <div class=\"section section-perm\">\n <h3 translate>eo.state.settings.permission</h3>\n <div class=\"entry perm-roles\">\n <div class=\"label\" translate>eo.state.settings.roles</div>\n <div class=\"values roles\">\n <eo-simple-accordion [header]=\"('eo.state.settings.roles' | translate)\">\n <eo-permissions [roles]=\"user.roles\"></eo-permissions>\n </eo-simple-accordion>\n </div>\n </div>\n </div>\n\n <!-- agent -->\n <div class=\"section section-others\">\n <h3 translate>eo.state.settings.others</h3>\n <ng-container *ngIf=\"showAgentConfig\">\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.agent</div>\n <div class=\"values\">\n <div class=\"use-agent\">\n <eo-checkbox [formControl]=\"useAgentControl\" [readonly]=\"useAgentControl.disabled\"\n *ngIf=\"useAgentControl\"></eo-checkbox>\n <span class=\"use-agent-label\" translate>eo.state.settings.agent.use</span>\n <!-- <a href=\"https://help.optimal-systems.com/yuuvisRAD/v60/user/client/de/client/integration/cln_tsk_agent_global.htm?Highlight=agent\">\n <eo-icon class=\"info-icon\" [iconSrc]=\"'assets/_default/svg/ic_info.svg'\"></eo-icon>\n </a> -->\n </div>\n </div>\n </div>\n\n\n <div class=\"entry lock-settings\" [ngClass]=\"{'lock-settings--show': (agentStatus | async)}\">\n <div class=\"label\" translate>eo.state.settings.lock</div>\n <div class=\"values\">\n <button class=\"toggle button-enabled\" (click)=\"changeLockSettings(LockSettings.always)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.always}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.enable</button>\n <button class=\"toggle button-disabled\" (click)=\"changeLockSettings(LockSettings.never)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.never}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.disable</button>\n <button class=\"toggle button-ask\" (click)=\"changeLockSettings(LockSettings.ask)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.ask}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.ask</button>\n </div>\n </div>\n\n\n </ng-container>\n\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.cache</div>\n <div class=\"values\">\n <div class=\"flex-row\">\n <button translate (click)=\"clearCache()\">eo.state.settings.cache.clear</button>\n <div class=\"cache\">\n <eo-form-input class=\"checkbox\" [skipToggle]=\"true\"\n [label]=\"'eo.state.settings.config.cache.system' | translate\">\n <eo-checkbox [(ngModel)]=\"cache.system\" [ngModelOptions]=\"{ standalone: true }\"></eo-checkbox>\n </eo-form-input>\n <eo-form-input class=\"checkbox\" [skipToggle]=\"true\"\n [label]=\"'eo.state.settings.config.cache.history' | translate\">\n <eo-checkbox [(ngModel)]=\"cache.history\" [ngModelOptions]=\"{ standalone: true }\"></eo-checkbox>\n </eo-form-input>\n <eo-form-input class=\"checkbox\" [skipToggle]=\"true\"\n [label]=\"'eo.state.settings.config.cache.layout' | translate\">\n <eo-checkbox [(ngModel)]=\"cache.layout\" [ngModelOptions]=\"{ standalone: true }\"></eo-checkbox>\n </eo-form-input>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n </div>\n </div>\n <eo-dialog [title]=\"'eo.state.settings.details.delete.dialog.title' | translate\" [(visible)]=\"showDeleteDialog\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n <div>{{'eo.state.settings.details.delete.dialog.message' | translate}}</div>\n\n <div class=\"action-buttons image-delete--action-buttons flex-row\" >\n <button type=\"button\" class=\"button cancel\" (click)=\"showDeleteDialog = false\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial #confirmDeleteBtn (click)=\"deleteUserImage()\" class=\"button primary\"\n translate>eo.state.settings.details.delete.dialog.ok</button>\n </div>\n </eo-dialog>\n\n <eo-dialog [title]=\"'eo.state.settings.details.upload.dialog.title' | translate\" [(visible)]=\"showErrorDialog\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n\n <div>\n <p>{{fileName}}</p>\n <p *ngIf=\"viewMode ==='size'\" translate>eo.state.settings.details.upload.dialog.sizeError</p>\n <p *ngIf=\"viewMode ==='image'\" translate>eo.state.settings.details.upload.dialog.fileError </p>\n </div>\n\n <div class=\"action-buttons image-delete--action-buttons flex-row\">\n <button type=\"button\" class=\"button cancel\" (click)=\"showErrorDialog = false\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial (click)=\"files.click(); showErrorDialog = false\" class=\"button primary\"\n translate>eo.state.settings.details.upload.dialog.back</button>\n </div>\n </eo-dialog>\n</div>\n",
22314
+ template: "<div class=\"eo-settings\" *ngIf=\"user\" eoRtlAware>\n\n <div class=\"header\">\n\n <div #headerBg class=\"bg\"></div>\n <div class=\"fill\">\n <div class=\"meta username\">{{user.name}}</div>\n <h1>{{user.firstname}} {{user.lastname}}</h1>\n <div class=\"meta email\">{{user.email}}</div>\n\n <div class=\"presence\" *ngIf=\"capabilities.inbox\">\n <button class=\"toggle dark present\" id=\"presence\" (click)=\"setPresence(true)\" [ngClass]=\"{active: user.present}\"\n translate>eo.state.settings.presence.present</button>\n <button class=\"toggle dark absent\" (click)=\"setPresence(false)\" (keydown.tab)=\"tabAction($event.target)\" [ngClass]=\"{active: !user.present}\"\n translate>eo.state.settings.presence.absent</button>\n </div>\n </div>\n <div (mouseenter)=\"mouseEnter()\" (mouseleave)=\"mouseLeave()\" (keydown.tab)=\"mouseEnter()\">\n\n <eo-user-avatar #userAvatar class=\"userImage\" tabindex=\"-1\" eoRtlAware=\"full\">\n <input type=\"file\" accept=\".jpg, .png\" style=\"display:none;\" #files (change)=\"selectImage($event.target)\" (click)=\"$event.target.value=null\">\n </eo-user-avatar>\n <eo-dialog [styleClass]=\"'view'\" [minWidth]=\"'300px'\" [title]=\"'eo.state.settings.details.upload.dialog.title' | translate\"\n [(visible)]=\"showPreviewDialog\" [focusOnShow]=\"false\">\n <ng-container>\n <div class=\"contain\">\n <div class=\"attachments\">\n <div class=\"atta\">\n <img [src]=\"preview\">\n </div>\n <div class=\"user-avatar\">\n <img [src]=\"preview\">\n </div>\n </div>\n </div>\n <div class=\"button-block\">\n <button type=\"button\" (click)=\"closePreviewDialog()\" class=\"button danger\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial (click)=\"uploadNewUserImage()\" class=\"button primary\"\n translate>eo.state.settings.details.dialog.save</button>\n </div>\n </ng-container>\n </eo-dialog>\n\n <div class=\"overlay\" #profileImageOverlay tabindex=\"0\">\n <span class=\"updateMessage\" *ngIf=\"hoverSelector\">\n <eo-icon tabindex=\"0\" (keydown.enter)=\"files.click()\" [iconSrc]=\"'assets/_default/svg/ic_edit.svg'\"\n (click)=\"files.click()\"></eo-icon>\n <eo-icon tabindex=\"0\" (keydown.enter)=\"trashIconClick()\" *ngIf=\"showDeleteIconTrash\"\n [iconSrc]=\"'assets/_default/svg/ic_trash.svg'\" aria-disabled=\"true\" (click)=\"trashIconClick()\"></eo-icon>\n </span>\n </div>\n </div>\n\n </div>\n\n <div class=\"body\" (keydown.tab)=\"tabAction($event.target)\">\n\n <div class=\"body-wrap\">\n\n <div class=\"section section-deputies\" *ngIf=\"capabilities.bpm && hasPrivilege('MANAGE_DEPUTY_LIST')\">\n <h3 translate>eo.state.settings.deputies</h3>\n\n <!-- deputies -->\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.deputies.label</div>\n <div class=\"values\">\n <form #deputiesForm=\"ngForm\" [ngClass]=\"{dirty: deputiesForm.dirty}\">\n <eo-organization name=\"deputies\" [dataMeta]=\"deputies.dataMeta\" [filterObject]=\"{type: 'USER'}\"\n [exceptions]=\"[user.name]\" [multiselect]=\"true\" [(ngModel)]=\"deputies.data\"></eo-organization>\n <div class=\"actions\" *ngIf=\"deputiesForm.valid && deputiesForm.dirty\">\n <button class=\"secondary\" (click)=\"resetDeputies()\" translate>eo.state.settings.deputies.cancel</button>\n <button class=\"primary\" (click)=\"saveDeputies()\" translate>eo.state.settings.deputies.save</button>\n </div>\n </form>\n </div>\n </div>\n\n <!-- substitute of -->\n <div class=\"entry substitute\">\n <div class=\"label\" translate>eo.state.settings.deputies.subsituteof.label</div>\n <div class=\"values\">\n <span class=\"chip\" *ngFor=\"let sub of user.substitutesOf\" [ngClass]=\"{present: sub.present}\">\n <eo-icon class=\"chip substitute substitute--present\" *ngIf=\"sub.present\"\n [iconSrc]=\"'assets/_default/svg/ic_done.svg'\"></eo-icon>\n <eo-icon class=\"chip substitute substitute--away\" *ngIf=\"!sub.present\"\n [iconSrc]=\"'assets/_default/svg/ic_clear.svg'\"></eo-icon>\n <span>{{sub.title}} ({{sub.name}})</span>\n </span>\n </div>\n </div>\n </div>\n\n <!-- password -->\n <section *ngIf=\"!isCloud && !isSSO || !isCloud && isSSO\" class=\"section section-password\">\n <div class=\"entry\">\n <div class=\"label\" translate>eo.password.reset</div>\n <div class=\"values\">\n <eo-simple-accordion #simpleAcc [header]=\"('eo.password.reset' | translate)\">\n <eo-change-password-form (onFormSumbit)=\"simpleAcc.open = false\"></eo-change-password-form>\n </eo-simple-accordion>\n </div>\n </div>\n </section>\n\n <!-- language -->\n <div class=\"section section-lang\">\n <h3 translate>eo.state.settings.language</h3>\n <div class=\"entry lang-app\">\n <div class=\"label\" translate>eo.state.settings.language.client</div>\n <div class=\"values\">\n <button class=\"toggle\" (click)=\"changeClientLocale(locale.iso)\"\n [ngClass]=\"{active: translate.currentLang === locale.iso}\"\n *ngFor=\"let locale of clientLocales\">{{locale.label}}\n </button>\n </div>\n </div>\n\n <div class=\"entry lang-def\">\n <div class=\"label\" translate>eo.state.settings.language.schema</div>\n <div class=\"values\">\n <button class=\"toggle\" (click)=\"changeSchemaLocale(locale.code)\"\n [ngClass]=\"{active: activeSchema === locale.code}\"\n *ngFor=\"let locale of schemaLocales\">{{locale.displayname}}</button>\n </div>\n </div>\n </div>\n\n <!-- permissions -->\n <div class=\"section section-perm\">\n <h3 translate>eo.state.settings.permission</h3>\n <div class=\"entry perm-roles\">\n <div class=\"label\" translate>eo.state.settings.roles</div>\n <div class=\"values roles\">\n <eo-simple-accordion [header]=\"('eo.state.settings.roles' | translate)\">\n <eo-permissions [roles]=\"user.roles\"></eo-permissions>\n </eo-simple-accordion>\n </div>\n </div>\n </div>\n\n <!-- agent -->\n <div class=\"section section-others\">\n <h3 translate>eo.state.settings.others</h3>\n <ng-container *ngIf=\"showAgentConfig\">\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.agent</div>\n <div class=\"values\">\n <div class=\"use-agent\">\n <eo-checkbox [formControl]=\"useAgentControl\" [readonly]=\"useAgentControl.disabled\"\n *ngIf=\"useAgentControl\"></eo-checkbox>\n <span class=\"use-agent-label\" translate>eo.state.settings.agent.use</span>\n <!-- <a href=\"https://help.optimal-systems.com/yuuvisRAD/v60/user/client/de/client/integration/cln_tsk_agent_global.htm?Highlight=agent\">\n <eo-icon class=\"info-icon\" [iconSrc]=\"'assets/_default/svg/ic_info.svg'\"></eo-icon>\n </a> -->\n </div>\n </div>\n </div>\n\n\n <div class=\"entry lock-settings\" [ngClass]=\"{'lock-settings--show': (agentStatus | async)}\">\n <div class=\"label\" translate>eo.state.settings.lock</div>\n <div class=\"values\">\n <button class=\"toggle button-enabled\" (click)=\"changeLockSettings(LockSettings.always)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.always}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.enable</button>\n <button class=\"toggle button-disabled\" (click)=\"changeLockSettings(LockSettings.never)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.never}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.disable</button>\n <button class=\"toggle button-ask\" (click)=\"changeLockSettings(LockSettings.ask)\"\n [ngClass]=\"{active: agentLockSettings === LockSettings.ask}\" [disabled]=\"defaultLockSetting\"\n translate>eo.state.settings.lock.ask</button>\n </div>\n </div>\n\n\n </ng-container>\n\n <div class=\"entry\">\n <div class=\"label\" translate>eo.state.settings.cache</div>\n <div class=\"values\">\n <div class=\"flex-row\">\n <button translate (click)=\"clearCache()\">eo.state.settings.cache.clear</button>\n <div class=\"cache\">\n <eo-form-input class=\"checkbox\" [skipToggle]=\"true\"\n [label]=\"'eo.state.settings.config.cache.system' | translate\">\n <eo-checkbox [(ngModel)]=\"cache.system\" [ngModelOptions]=\"{ standalone: true }\"></eo-checkbox>\n </eo-form-input>\n <eo-form-input class=\"checkbox\" [skipToggle]=\"true\"\n [label]=\"'eo.state.settings.config.cache.history' | translate\">\n <eo-checkbox [(ngModel)]=\"cache.history\" [ngModelOptions]=\"{ standalone: true }\"></eo-checkbox>\n </eo-form-input>\n <eo-form-input class=\"checkbox\" [skipToggle]=\"true\"\n [label]=\"'eo.state.settings.config.cache.layout' | translate\">\n <eo-checkbox [(ngModel)]=\"cache.layout\" [ngModelOptions]=\"{ standalone: true }\"></eo-checkbox>\n </eo-form-input>\n </div>\n </div>\n </div>\n </div>\n </div>\n\n </div>\n </div>\n <eo-dialog [title]=\"'eo.state.settings.details.delete.dialog.title' | translate\" [(visible)]=\"showDeleteDialog\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n <div>{{'eo.state.settings.details.delete.dialog.message' | translate}}</div>\n\n <div class=\"action-buttons image-delete--action-buttons flex-row\" >\n <button type=\"button\" class=\"button cancel\" (click)=\"showDeleteDialog = false\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial #confirmDeleteBtn (click)=\"deleteUserImage()\" class=\"button primary\"\n translate>eo.state.settings.details.delete.dialog.ok</button>\n </div>\n </eo-dialog>\n\n <eo-dialog [title]=\"'eo.state.settings.details.upload.dialog.title' | translate\" [(visible)]=\"showErrorDialog\"\n [focusOnShow]=\"false\" [minWidth]=\"400\" [styleClass]=\"'delete__dialog'\">\n\n <div>\n <p>{{fileName}}</p>\n <p *ngIf=\"viewMode ==='size'\" translate>eo.state.settings.details.upload.dialog.sizeError</p>\n <p *ngIf=\"viewMode ==='image'\" translate>eo.state.settings.details.upload.dialog.fileError </p>\n </div>\n\n <div class=\"action-buttons image-delete--action-buttons flex-row\">\n <button type=\"button\" class=\"button cancel\" (click)=\"showErrorDialog = false\"\n translate>eo.state.settings.details.delete.dialog.cancel</button>\n <button type=\"button\" cdkFocusInitial (click)=\"files.click(); showErrorDialog = false\" class=\"button primary\"\n translate>eo.state.settings.details.upload.dialog.back</button>\n </div>\n </eo-dialog>\n</div>\n",
22314
22315
  styles: [":host{bottom:0;justify-content:center;left:0;position:absolute;right:0;top:0}:host,:host .cache{display:flex;flex-flow:row}:host .cache{margin:0 var(--app-pane-padding)}.eo-settings{background:var(--color-white);box-shadow:0 2px 5px 0 rgba(0,0,0,.2);box-sizing:border-box;display:flex;flex-flow:column;margin:var(--app-pane-padding);width:800px}@media (max-width:832px){.eo-settings{margin:0;min-width:inherit;width:100%}}.eo-settings .header{flex:1 1;max-height:300px;min-height:200px;position:relative}@media (max-width:480px){.eo-settings .header{min-height:210px}}.eo-settings .header h1{font-size:var(--font-display);font-weight:var(--font-weight-light);line-height:1em;margin:0;padding:0}.eo-settings .header .meta{margin:calc(var(--app-pane-padding)/2) 0}.eo-settings .header .presence{margin-top:calc(var(--app-pane-padding)*2)}.eo-settings .header .bg{background-position:50%;background-size:cover;bottom:0;filter:grayscale(1);left:0;position:absolute;right:0;top:0}.eo-settings .header .fill{background:rgba(var(--color-primary-rgb),.85);bottom:0;color:var(--color-white);left:0;padding:var(--app-pane-padding);position:absolute;right:0;top:0}.eo-settings .header .userImage{background-position:50%;background-size:cover;border:4px solid var(--color-white);bottom:calc(var(--app-pane-padding)*-1);box-shadow:0 2px 5px 0 rgba(var(--color-black-rgb),.26);height:150px;position:absolute;right:var(--app-pane-padding);width:150px;z-index:1}@media (max-width:480px){.eo-settings .header .userImage{height:105px;width:105px}}.eo-settings .header .userImage.rtl{left:var(--app-pane-padding);right:auto}.eo-settings .header .overlay{border:4px solid var(--color-white);bottom:calc(var(--app-pane-padding)*-1);box-shadow:0 2px 5px 0 rgba(var(--color-black-rgb),.26);height:150px;position:absolute;right:var(--app-pane-padding);width:150px;z-index:1}@media (max-width:480px){.eo-settings .header .overlay{height:105px;width:105px}}.eo-settings .header .overlay.rtl{left:var(--app-pane-padding);right:auto}.eo-settings .header .overlay:focus,.eo-settings .header .overlay:hover{border-color:var(--color-accent);opacity:1}.eo-settings .header .overlay .updateMessage{align-items:center;background-clip:border-box;background-color:rgba(192,188,188,.9450980392156862);box-sizing:border-box;display:flex;height:100%;justify-content:center;width:100%}.eo-settings .header .overlay .updateMessage eo-icon{-moz-transition:all var(--app-default-transition-duration) ease-in-out;-o-transition:all var(--app-default-transition-duration) ease-in-out;-webkit-transition:all var(--app-default-transition-duration) ease-in-out;color:var(--color-white);height:48px;opacity:.5;transition:all var(--app-default-transition-duration) ease-in-out;width:48px}.eo-settings .header .overlay .updateMessage eo-icon:focus,.eo-settings .header .overlay .updateMessage eo-icon:hover{background-color:var(--color-primary);color:var(--color-white);cursor:pointer}.eo-settings .body{flex:1 1 auto;position:relative}.eo-settings .body .body-wrap{bottom:0;box-sizing:border-box;left:0;overflow-y:auto;padding:var(--app-pane-padding);position:absolute;right:0;top:0}.eo-settings .body .section{margin-top:var(--app-pane-padding)}.eo-settings .body .section.section-deputies form{border-radius:2px}.eo-settings .body .section.section-deputies form .actions{display:flex;justify-content:flex-end;padding-top:calc(var(--app-pane-padding)/4)}.eo-settings .body .section.section-deputies form .actions button{border-radius:2px;padding:calc(var(--app-pane-padding)/4) calc(var(--app-pane-padding)/2)}.eo-settings .body .section.section-deputies form.dirty{background-color:rgba(var(--color-black-rgb),.06);padding:2px}.eo-settings .body .section.section-deputies .entry.substitute .values{display:flex;flex-flow:row wrap}.eo-settings .body .section.section-deputies .entry.substitute .values .chip{align-items:center;display:flex;font-size:.9em;padding:2px 4px}.eo-settings .body .section.section-deputies .entry.substitute .values .chip .substitute{border:0;border-radius:4px;color:var(--color-white);height:calc(var(--app-pane-padding)*0.6);width:calc(var(--app-pane-padding)*0.75)}.eo-settings .body .section.section-deputies .entry.substitute .values .chip .substitute--present{background-color:var(--color-success)}.eo-settings .body .section.section-deputies .entry.substitute .values .chip .substitute--away{background-color:var(--color-error)}.eo-settings .body .section.section-deputies .entry.substitute .values .chip>span{margin:0 calc(var(--app-pane-padding)/2)}.eo-settings .body .section.section-deputies ::ng-deep .values .ui-state-default{background-color:var(--color-white);border-color:rgba(var(--color-black-rgb),.1);border-radius:2px;min-height:27px;padding:0 0 2px 2px}.eo-settings .body .section.section-deputies ::ng-deep .values .ui-state-disabled{border-color:transparent;opacity:1}.eo-settings .body .section p{line-height:1.7em}.eo-settings .body .section h3{color:var(--text-color-caption);font-size:var(--font-subhead);font-weight:var(--font-weight-normal);margin:0;padding:0 0 0 150px}@media (max-width:480px){.eo-settings .body .section h3{padding:0}}.eo-settings .body .section .entry{display:flex;flex-flow:row nowrap;padding:var(--app-pane-padding) 0 0 0}.eo-settings .body .section .entry.lock-settings{height:0;opacity:0;overflow:hidden;transition:all .5s ease-in-out}.eo-settings .body .section .entry.lock-settings--show{height:100%;opacity:1}@media (max-width:480px){.eo-settings .body .section .entry{flex-flow:column}}.eo-settings .body .section .entry .label{color:var(--text-color-caption);flex:0 0 150px}@media (max-width:480px){.eo-settings .body .section .entry .label{flex:0 0 auto;margin-bottom:calc(var(--app-pane-padding)/2)}}.eo-settings .body .section .entry .values{flex:1 1 auto}.eo-settings .body .section .entry .values button{cursor:pointer;margin:0 4px 4px 0}.eo-settings .body .section .entry .values button.active,.eo-settings .body .section .entry .values button.toggle:disabled{cursor:default}.eo-settings .body .section .entry .use-agent{align-items:center;display:flex}.eo-settings .body .section .entry .use-agent .use-agent-label{color:var(--text-color-caption);margin:0 calc(var(--app-pane-padding)/2)}.eo-settings .body .section .entry .use-agent eo-icon.info-icon{border-radius:50%;box-sizing:border-box;color:var(--text-color-caption);margin:0;padding:3px}.eo-settings .body .section .entry .use-agent eo-icon.info-icon:hover{background-color:var(--color-primary);color:var(--color-white);cursor:pointer}.eo-settings .body .section .values.roles{align-items:flex-start;display:flex;flex-flow:column}.eo-settings .body .section .values.roles .role{display:flex;flex-flow:row nowrap;margin-bottom:calc(var(--app-pane-padding)/2);word-break:break-all}.eo-settings .body .section .values.roles .role eo-icon{color:var(--text-color-hint);height:18px;width:18px}.eo-settings .body .section .values.roles .role>div{padding:0 calc(var(--app-pane-padding)/2)}.eo-settings .body .section .values.roles .role>div .description{color:var(--text-color-caption);font-size:var(--font-caption)}.eo-settings .body .toggle-btn{-webkit-border-radius:2px;background:rgba(var(--color-black-rgb),.1);border-radius:2px;color:var(--text-color-caption);cursor:pointer;display:inline-block;margin-right:3px;padding:2px 5px;text-decoration:none}.eo-settings.rtl .header .userImage{left:var(--app-pane-padding);right:auto}.eo-settings.rtl .body .section h3{padding:0 150px 0 0}::ng-deep .view{height:100%;width:100%}::ng-deep .view .eo-dialog-content{overflow:hidden}::ng-deep .view .contain{display:flex;flex-flow:column}@media (max-width:480px){::ng-deep .view .contain{min-height:210px}}::ng-deep .view .contain .attachments{align-items:center;display:flex;height:100%;justify-content:space-around;margin:5px 60px 0;width:100%}::ng-deep .view .contain .attachments .atta{display:block;padding:0;position:relative}::ng-deep .view .contain .attachments .atta img{border:2px solid #5c5959;box-sizing:border-box;max-height:200px;max-width:200px;min-height:80px;min-width:80px}::ng-deep .view .contain .attachments .user-avatar{align-items:center;display:flex;margin-right:109px}::ng-deep .view .contain .attachments .user-avatar img{background-size:cover;border:2px solid #5c5959;border-radius:50%;box-sizing:border-box;height:90px;width:90px}::ng-deep .view .button-block{display:flex;justify-content:right;margin:8px}::ng-deep .delete__dialog{min-height:unset!important;padding:8px}::ng-deep .delete__dialog--header{background:#fff!important;color:rgba(var(--color-black-rgb),.54)!important;font-size:1.17em!important;font-weight:400!important;margin:0;padding:0 0 1em!important}"]
22315
22316
  },] }
22316
22317
  ];
@@ -22330,6 +22331,7 @@ SettingsComponent.ctorParameters = () => [
22330
22331
  { type: ListSettingsService },
22331
22332
  { type: LocalStorageService },
22332
22333
  { type: TranslateService },
22334
+ { type: ElementRef },
22333
22335
  { type: NotificationsService }
22334
22336
  ];
22335
22337
  SettingsComponent.propDecorators = {
@@ -22625,10 +22627,10 @@ class AboutStateComponent {
22625
22627
  this.http = http;
22626
22628
  this.userService = userService;
22627
22629
  this.config = config;
22628
- this.__libraries__ = [{ "name": "@ag-grid-community/angular", "version": "22.1.2", "license": "MIT" }, { "name": "@ag-grid-community/client-side-row-model", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/core", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/csv-export", "version": "22.1.1", "license": "MIT" }, { "name": "@angular/animations", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/cdk", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/common", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/compiler", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/core", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/forms", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser-dynamic", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/router", "version": "11.2.0", "license": "MIT" }, { "name": "@eo-sdk/core", "version": "9.0.0-rc.7", "license": "MIT" }, { "name": "@ngx-pwa/local-storage", "version": "11.1.0", "license": "MIT" }, { "name": "@ngx-translate/core", "version": "13.0.0", "license": "MIT" }, { "name": "@types/lodash", "version": "4.14.88", "license": "MIT" }, { "name": "core-js", "version": "2.5.7", "license": "MIT" }, { "name": "file-saver", "version": "2.0.5", "license": "MIT" }, { "name": "font-awesome", "version": "4.7.0", "license": "(OFL-1.1 AND MIT)" }, { "name": "keyboardevent-key-polyfill", "version": "1.1.0", "license": "CC0-1.0" }, { "name": "keycode-js", "version": "0.0.4", "license": "MIT" }, { "name": "mobile-drag-drop", "version": "2.2.0", "license": "MIT" }, { "name": "moment", "version": "2.22.2", "license": "MIT" }, { "name": "ngx-toastr", "version": "13.2.0", "license": "MIT" }, { "name": "primeicons", "version": "1.0.0-beta.6", "license": "MIT" }, { "name": "primeng", "version": "7.0.1", "license": "MIT" }, { "name": "reflect-metadata", "version": "0.1.10", "license": "Apache-2.0" }, { "name": "rxjs", "version": "6.6.3", "license": "Apache-2.0" }, { "name": "tslib", "version": "2.1.0", "license": "0BSD" }, { "name": "zone.js", "version": "0.10.3", "license": "MIT" }];
22630
+ this.__libraries__ = [{ "name": "@ag-grid-community/angular", "version": "22.1.2", "license": "MIT" }, { "name": "@ag-grid-community/client-side-row-model", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/core", "version": "22.1.1", "license": "MIT" }, { "name": "@ag-grid-community/csv-export", "version": "22.1.1", "license": "MIT" }, { "name": "@angular/animations", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/cdk", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/common", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/compiler", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/core", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/forms", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/platform-browser-dynamic", "version": "11.2.0", "license": "MIT" }, { "name": "@angular/router", "version": "11.2.0", "license": "MIT" }, { "name": "@eo-sdk/core", "version": "9.0.0-rc.9", "license": "MIT" }, { "name": "@ngx-pwa/local-storage", "version": "11.1.0", "license": "MIT" }, { "name": "@ngx-translate/core", "version": "13.0.0", "license": "MIT" }, { "name": "@types/lodash", "version": "4.14.88", "license": "MIT" }, { "name": "core-js", "version": "2.5.7", "license": "MIT" }, { "name": "file-saver", "version": "2.0.5", "license": "MIT" }, { "name": "font-awesome", "version": "4.7.0", "license": "(OFL-1.1 AND MIT)" }, { "name": "keyboardevent-key-polyfill", "version": "1.1.0", "license": "CC0-1.0" }, { "name": "keycode-js", "version": "0.0.4", "license": "MIT" }, { "name": "mobile-drag-drop", "version": "2.2.0", "license": "MIT" }, { "name": "moment", "version": "2.22.2", "license": "MIT" }, { "name": "ngx-toastr", "version": "13.2.0", "license": "MIT" }, { "name": "primeicons", "version": "1.0.0-beta.6", "license": "MIT" }, { "name": "primeng", "version": "7.0.1", "license": "MIT" }, { "name": "reflect-metadata", "version": "0.1.10", "license": "Apache-2.0" }, { "name": "rxjs", "version": "6.6.3", "license": "Apache-2.0" }, { "name": "tslib", "version": "2.1.0", "license": "0BSD" }, { "name": "zone.js", "version": "0.10.3", "license": "MIT" }];
22629
22631
  this.ctrl = {
22630
22632
  productName: 'yuuvis® RAD client',
22631
- clientVersion: '9.0.0-rc.7'
22633
+ clientVersion: '9.0.0-rc.9'
22632
22634
  };
22633
22635
  this.licenses = {
22634
22636
  'MIT': {