@alfresco/adf-core 8.1.0-16295248176 → 8.1.0-16320806191

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 (603) hide show
  1. package/bundles/assets/adf-core/i18n/de.json +1 -1
  2. package/bundles/assets/adf-core/i18n/es.json +1 -1
  3. package/bundles/assets/adf-core/i18n/fr.json +1 -1
  4. package/bundles/assets/adf-core/i18n/it.json +1 -1
  5. package/bundles/assets/adf-core/i18n/pl.json +1 -1
  6. package/bundles/assets/adf-core/i18n/pt.json +1 -1
  7. package/esm2022/adf-core.mjs +5 -0
  8. package/esm2022/api/alfresco-adf-core-api.mjs +5 -0
  9. package/esm2022/api/index.mjs +20 -0
  10. package/esm2022/api/lib/adf-http-client.service.mjs +311 -0
  11. package/esm2022/api/lib/alfresco-api/alfresco-api.param-encoder.mjs +33 -0
  12. package/esm2022/api/lib/alfresco-api/alfresco-api.response-error.mjs +25 -0
  13. package/esm2022/api/lib/alfresco-api/alfresco-api.utils.mjs +80 -0
  14. package/esm2022/api/lib/interfaces.mjs +18 -0
  15. package/esm2022/api/lib/types.mjs +18 -0
  16. package/esm2022/auth/alfresco-adf-core-auth.mjs +5 -0
  17. package/esm2022/auth/authentication-interceptor/authentication.interceptor.mjs +56 -0
  18. package/esm2022/auth/authentication.mjs +19 -0
  19. package/esm2022/auth/index.mjs +19 -0
  20. package/esm2022/breadcrumbs/alfresco-adf-core-breadcrumbs.mjs +5 -0
  21. package/esm2022/breadcrumbs/components/breadcrumb/breadcrumb.component.mjs +82 -0
  22. package/esm2022/breadcrumbs/components/breadcrumb-item/breadcrumb-item.component.mjs +42 -0
  23. package/esm2022/breadcrumbs/directives/breadcrumb-focus.directive.mjs +44 -0
  24. package/esm2022/breadcrumbs/index.mjs +19 -0
  25. package/esm2022/feature-flags/alfresco-adf-core-feature-flags.mjs +5 -0
  26. package/esm2022/feature-flags/index.mjs +29 -0
  27. package/esm2022/feature-flags/lib/components/feature-flags-wrapper.mjs +36 -0
  28. package/esm2022/feature-flags/lib/components/feature-override-indicator.component.mjs +56 -0
  29. package/esm2022/feature-flags/lib/components/flags/flags.component.mjs +129 -0
  30. package/esm2022/feature-flags/lib/directives/features.directive.mjs +63 -0
  31. package/esm2022/feature-flags/lib/directives/not-features.directive.mjs +63 -0
  32. package/esm2022/feature-flags/lib/guards/is-feature-off.guard.mjs +38 -0
  33. package/esm2022/feature-flags/lib/guards/is-feature-on.guard.mjs +38 -0
  34. package/esm2022/feature-flags/lib/guards/is-flags-override-on.guard.mjs +40 -0
  35. package/esm2022/feature-flags/lib/interfaces/features.interface.mjs +24 -0
  36. package/esm2022/feature-flags/lib/mocks/features-service-mock.factory.mjs +62 -0
  37. package/esm2022/feature-flags/lib/providers/debug-feature-flags.provider.mjs +51 -0
  38. package/esm2022/feature-flags/lib/providers/dummy-feature-flags.provider.mjs +36 -0
  39. package/esm2022/feature-flags/lib/services/debug-features.service.mjs +94 -0
  40. package/esm2022/feature-flags/lib/services/dummy-features.service.mjs +40 -0
  41. package/esm2022/feature-flags/lib/services/flagset.parser.mjs +38 -0
  42. package/esm2022/feature-flags/lib/services/qa-features.helper.mjs +62 -0
  43. package/esm2022/feature-flags/lib/services/storage-features.service.mjs +126 -0
  44. package/esm2022/lib/about/about-extension-list/about-extension-list.component.mjs +51 -0
  45. package/esm2022/lib/about/about-license-list/about-license-list.component.mjs +51 -0
  46. package/esm2022/lib/about/about-module-list/module-list.component.mjs +51 -0
  47. package/esm2022/lib/about/about-package/package-list.component.mjs +65 -0
  48. package/esm2022/lib/about/about-panel.directive.mjs +37 -0
  49. package/esm2022/lib/about/about-repository-info/about-repository-info.component.mjs +59 -0
  50. package/esm2022/lib/about/about-repository-info/repository-info.interface.mjs +18 -0
  51. package/esm2022/lib/about/about-server-settings/about-server-settings.component.mjs +42 -0
  52. package/esm2022/lib/about/about-status-list/about-status-list.component.mjs +51 -0
  53. package/esm2022/lib/about/about.component.mjs +35 -0
  54. package/esm2022/lib/about/about.module.mjs +75 -0
  55. package/esm2022/lib/about/index.mjs +18 -0
  56. package/esm2022/lib/about/interfaces.mjs +18 -0
  57. package/esm2022/lib/about/public-api.mjs +28 -0
  58. package/esm2022/lib/app-config/app-config-storage-prefix.factory.mjs +51 -0
  59. package/esm2022/lib/app-config/app-config.loader.mjs +41 -0
  60. package/esm2022/lib/app-config/app-config.module.mjs +33 -0
  61. package/esm2022/lib/app-config/app-config.pipe.mjs +38 -0
  62. package/esm2022/lib/app-config/app-config.service.mjs +243 -0
  63. package/esm2022/lib/app-config/debug-app-config.service.mjs +44 -0
  64. package/esm2022/lib/app-config/index.mjs +18 -0
  65. package/esm2022/lib/app-config/public-api.mjs +22 -0
  66. package/esm2022/lib/auth/authentication-interceptor/auth-bearer.interceptor.mjs +67 -0
  67. package/esm2022/lib/auth/basic-auth/basic-alfresco-auth.service.mjs +356 -0
  68. package/esm2022/lib/auth/basic-auth/content-auth.mjs +189 -0
  69. package/esm2022/lib/auth/basic-auth/process-auth.mjs +193 -0
  70. package/esm2022/lib/auth/guard/auth-guard-bpm.service.mjs +31 -0
  71. package/esm2022/lib/auth/guard/auth-guard-ecm.service.mjs +31 -0
  72. package/esm2022/lib/auth/guard/auth-guard-sso-role.service.mjs +57 -0
  73. package/esm2022/lib/auth/guard/auth-guard.mjs +53 -0
  74. package/esm2022/lib/auth/guard/auth-guard.service.mjs +113 -0
  75. package/esm2022/lib/auth/index.mjs +18 -0
  76. package/esm2022/lib/auth/interfaces/authentication-service.interface.mjs +18 -0
  77. package/esm2022/lib/auth/interfaces/authentication.interface.mjs +18 -0
  78. package/esm2022/lib/auth/interfaces/identity-group.interface.mjs +18 -0
  79. package/esm2022/lib/auth/interfaces/identity-user.service.interface.mjs +18 -0
  80. package/esm2022/lib/auth/interfaces/openid-configuration.interface.mjs +18 -0
  81. package/esm2022/lib/auth/models/application-access.model.mjs +18 -0
  82. package/esm2022/lib/auth/models/identity-group.model.mjs +18 -0
  83. package/esm2022/lib/auth/models/identity-role.model.mjs +30 -0
  84. package/esm2022/lib/auth/models/identity-user.model.mjs +18 -0
  85. package/esm2022/lib/auth/models/oauth-config.model.mjs +18 -0
  86. package/esm2022/lib/auth/models/redirection.model.mjs +28 -0
  87. package/esm2022/lib/auth/models/user-access.model.mjs +18 -0
  88. package/esm2022/lib/auth/oidc/auth-config.mjs +19 -0
  89. package/esm2022/lib/auth/oidc/auth-config.service.mjs +110 -0
  90. package/esm2022/lib/auth/oidc/auth-routing.module.mjs +34 -0
  91. package/esm2022/lib/auth/oidc/auth.module.mjs +112 -0
  92. package/esm2022/lib/auth/oidc/auth.service.mjs +22 -0
  93. package/esm2022/lib/auth/oidc/oidc-auth.guard.mjs +37 -0
  94. package/esm2022/lib/auth/oidc/oidc-authentication.service.mjs +202 -0
  95. package/esm2022/lib/auth/oidc/public-api.mjs +24 -0
  96. package/esm2022/lib/auth/oidc/redirect-auth.service.mjs +267 -0
  97. package/esm2022/lib/auth/oidc/retry-login.service.mjs +66 -0
  98. package/esm2022/lib/auth/oidc/token.interceptor.mjs +62 -0
  99. package/esm2022/lib/auth/oidc/view/authentication-confirmation/authentication-confirmation.component.mjs +31 -0
  100. package/esm2022/lib/auth/public-api.mjs +44 -0
  101. package/esm2022/lib/auth/services/authentication.service.mjs +190 -0
  102. package/esm2022/lib/auth/services/base-authentication.service.mjs +99 -0
  103. package/esm2022/lib/auth/services/identity-group.service.mjs +269 -0
  104. package/esm2022/lib/auth/services/identity-role.service.mjs +99 -0
  105. package/esm2022/lib/auth/services/identity-user.service.mjs +443 -0
  106. package/esm2022/lib/auth/services/jwt-helper.service.mjs +205 -0
  107. package/esm2022/lib/auth/services/oauth2.service.mjs +69 -0
  108. package/esm2022/lib/auth/services/time-sync.service.mjs +83 -0
  109. package/esm2022/lib/auth/services/user-access.service.mjs +110 -0
  110. package/esm2022/lib/avatar/avatar.component.mjs +51 -0
  111. package/esm2022/lib/blank-page/blank-page.component.mjs +31 -0
  112. package/esm2022/lib/blank-page/blank-page.module.mjs +33 -0
  113. package/esm2022/lib/blank-page/index.mjs +18 -0
  114. package/esm2022/lib/blank-page/public-api.mjs +19 -0
  115. package/esm2022/lib/button/button.component.mjs +61 -0
  116. package/esm2022/lib/card-view/card-view.module.mjs +80 -0
  117. package/esm2022/lib/card-view/components/base-card-view.mjs +51 -0
  118. package/esm2022/lib/card-view/components/card-view/card-view.component.mjs +66 -0
  119. package/esm2022/lib/card-view/components/card-view-arrayitem/card-view-arrayitem.component.mjs +55 -0
  120. package/esm2022/lib/card-view/components/card-view-boolitem/card-view-boolitem.component.mjs +39 -0
  121. package/esm2022/lib/card-view/components/card-view-dateitem/card-view-dateitem.component.mjs +182 -0
  122. package/esm2022/lib/card-view/components/card-view-item-dispatcher/card-view-item-dispatcher.component.mjs +108 -0
  123. package/esm2022/lib/card-view/components/card-view-keyvaluepairsitem/card-view-keyvaluepairsitem.component.mjs +64 -0
  124. package/esm2022/lib/card-view/components/card-view-mapitem/card-view-mapitem.component.mjs +46 -0
  125. package/esm2022/lib/card-view/components/card-view-selectitem/card-view-selectitem.component.mjs +137 -0
  126. package/esm2022/lib/card-view/components/card-view-selectitem/select-filter-input/select-filter-input.component.mjs +113 -0
  127. package/esm2022/lib/card-view/components/card-view-textitem/card-view-textitem.component.mjs +239 -0
  128. package/esm2022/lib/card-view/components/card-view.components.mjs +28 -0
  129. package/esm2022/lib/card-view/index.mjs +18 -0
  130. package/esm2022/lib/card-view/interfaces/base-card-view-update.interface.mjs +18 -0
  131. package/esm2022/lib/card-view/interfaces/card-view-arrayitem-properties.interface.mjs +18 -0
  132. package/esm2022/lib/card-view/interfaces/card-view-boolitem-properties.interface.mjs +18 -0
  133. package/esm2022/lib/card-view/interfaces/card-view-dateitem-properties.interface.mjs +18 -0
  134. package/esm2022/lib/card-view/interfaces/card-view-item-properties.interface.mjs +18 -0
  135. package/esm2022/lib/card-view/interfaces/card-view-item-validator.interface.mjs +18 -0
  136. package/esm2022/lib/card-view/interfaces/card-view-item.interface.mjs +18 -0
  137. package/esm2022/lib/card-view/interfaces/card-view-keyvaluepairsitem-properties.interface.mjs +18 -0
  138. package/esm2022/lib/card-view/interfaces/card-view-selectitem-properties.interface.mjs +18 -0
  139. package/esm2022/lib/card-view/interfaces/card-view-textitem-pipe-property.interface.mjs +18 -0
  140. package/esm2022/lib/card-view/interfaces/card-view-textitem-properties.interface.mjs +18 -0
  141. package/esm2022/lib/card-view/interfaces/card-view.interfaces.mjs +29 -0
  142. package/esm2022/lib/card-view/interfaces/click-notification.interface.mjs +18 -0
  143. package/esm2022/lib/card-view/interfaces/update-notification.interface.mjs +18 -0
  144. package/esm2022/lib/card-view/models/card-view-arrayitem.model.mjs +28 -0
  145. package/esm2022/lib/card-view/models/card-view-baseitem.model.mjs +64 -0
  146. package/esm2022/lib/card-view/models/card-view-boolitem.model.mjs +36 -0
  147. package/esm2022/lib/card-view/models/card-view-dateitem.model.mjs +58 -0
  148. package/esm2022/lib/card-view/models/card-view-datetimeitem.model.mjs +28 -0
  149. package/esm2022/lib/card-view/models/card-view-floatitem.model.mjs +33 -0
  150. package/esm2022/lib/card-view/models/card-view-intitem.model.mjs +36 -0
  151. package/esm2022/lib/card-view/models/card-view-keyvaluepairs.model.mjs +27 -0
  152. package/esm2022/lib/card-view/models/card-view-longitem.model.mjs +36 -0
  153. package/esm2022/lib/card-view/models/card-view-mapitem.model.mjs +32 -0
  154. package/esm2022/lib/card-view/models/card-view-selectitem.model.mjs +41 -0
  155. package/esm2022/lib/card-view/models/card-view-textitem.model.mjs +40 -0
  156. package/esm2022/lib/card-view/models/card-view.models.mjs +29 -0
  157. package/esm2022/lib/card-view/public-api.mjs +25 -0
  158. package/esm2022/lib/card-view/services/card-item-types.service.mjs +54 -0
  159. package/esm2022/lib/card-view/services/card-view-update.service.mjs +59 -0
  160. package/esm2022/lib/card-view/services/card-view.services.mjs +19 -0
  161. package/esm2022/lib/card-view/validators/card-view-item-float.validator.mjs +31 -0
  162. package/esm2022/lib/card-view/validators/card-view-item-int.validator.mjs +35 -0
  163. package/esm2022/lib/card-view/validators/card-view-item-length.validator.mjs +34 -0
  164. package/esm2022/lib/card-view/validators/card-view-item-long.validator.mjs +35 -0
  165. package/esm2022/lib/card-view/validators/card-view-item-match.validator.mjs +35 -0
  166. package/esm2022/lib/card-view/validators/card-view-item-minmax.validator.mjs +35 -0
  167. package/esm2022/lib/card-view/validators/card-view-item-only-positive-int.validator.mjs +32 -0
  168. package/esm2022/lib/card-view/validators/card-view-item-only-positive-long.validator.mjs +31 -0
  169. package/esm2022/lib/card-view/validators/card-view.validators.mjs +26 -0
  170. package/esm2022/lib/card-view/validators/validators.map.mjs +26 -0
  171. package/esm2022/lib/clipboard/clipboard.directive.mjs +98 -0
  172. package/esm2022/lib/clipboard/clipboard.module.mjs +34 -0
  173. package/esm2022/lib/clipboard/clipboard.service.mjs +103 -0
  174. package/esm2022/lib/clipboard/index.mjs +18 -0
  175. package/esm2022/lib/clipboard/public-api.mjs +21 -0
  176. package/esm2022/lib/comments/comment-list/comment-list.component.mjs +52 -0
  177. package/esm2022/lib/comments/comment-list/comment-list.module.mjs +33 -0
  178. package/esm2022/lib/comments/comment-list/index.mjs +18 -0
  179. package/esm2022/lib/comments/comment-list/public-api.mjs +19 -0
  180. package/esm2022/lib/comments/comments.component.mjs +132 -0
  181. package/esm2022/lib/comments/comments.module.mjs +33 -0
  182. package/esm2022/lib/comments/index.mjs +18 -0
  183. package/esm2022/lib/comments/interfaces/comments-service.interface.mjs +18 -0
  184. package/esm2022/lib/comments/interfaces/comments.token.mjs +19 -0
  185. package/esm2022/lib/comments/public-api.mjs +22 -0
  186. package/esm2022/lib/common/index.mjs +35 -0
  187. package/esm2022/lib/common/interface/search-component.interface.mjs +18 -0
  188. package/esm2022/lib/common/mock/app-config.service.mock.mjs +47 -0
  189. package/esm2022/lib/common/models/default-languages.model.mjs +36 -0
  190. package/esm2022/lib/common/models/log-levels.model.mjs +33 -0
  191. package/esm2022/lib/common/models/user-info-mode.enum.mjs +25 -0
  192. package/esm2022/lib/common/services/cookie.service.mjs +82 -0
  193. package/esm2022/lib/common/services/download.service.mjs +102 -0
  194. package/esm2022/lib/common/services/dynamic-component-mapper.service.mjs +89 -0
  195. package/esm2022/lib/common/services/highlight-transform.service.mjs +61 -0
  196. package/esm2022/lib/common/services/language-item.interface.mjs +18 -0
  197. package/esm2022/lib/common/services/log.service.mjs +171 -0
  198. package/esm2022/lib/common/services/page-title.service.mjs +63 -0
  199. package/esm2022/lib/common/services/sort-by-category.service.mjs +81 -0
  200. package/esm2022/lib/common/services/storage.service.mjs +143 -0
  201. package/esm2022/lib/common/services/thumbnail.service.mjs +194 -0
  202. package/esm2022/lib/common/services/url.service.mjs +45 -0
  203. package/esm2022/lib/common/services/user-preferences.service.mjs +238 -0
  204. package/esm2022/lib/common/utils/date-fns-adapter.mjs +115 -0
  205. package/esm2022/lib/common/utils/date-fns-utils.mjs +222 -0
  206. package/esm2022/lib/common/utils/datetime-fns-adapter.mjs +134 -0
  207. package/esm2022/lib/common/utils/file-utils.mjs +65 -0
  208. package/esm2022/lib/common/utils/index.mjs +18 -0
  209. package/esm2022/lib/common/utils/moment-date-adapter.mjs +202 -0
  210. package/esm2022/lib/common/utils/moment-date-formats.model.mjs +32 -0
  211. package/esm2022/lib/common/utils/object-utils.mjs +107 -0
  212. package/esm2022/lib/common/utils/public-api.mjs +25 -0
  213. package/esm2022/lib/common/utils/string-utils.mjs +45 -0
  214. package/esm2022/lib/context-menu/animations.mjs +33 -0
  215. package/esm2022/lib/context-menu/context-menu-list.component.mjs +91 -0
  216. package/esm2022/lib/context-menu/context-menu-overlay.mjs +25 -0
  217. package/esm2022/lib/context-menu/context-menu-overlay.service.mjs +109 -0
  218. package/esm2022/lib/context-menu/context-menu.directive.mjs +63 -0
  219. package/esm2022/lib/context-menu/context-menu.module.mjs +35 -0
  220. package/esm2022/lib/context-menu/context-menu.tokens.mjs +19 -0
  221. package/esm2022/lib/context-menu/index.mjs +18 -0
  222. package/esm2022/lib/context-menu/interfaces.mjs +18 -0
  223. package/esm2022/lib/context-menu/public-api.mjs +21 -0
  224. package/esm2022/lib/core.module.mjs +314 -0
  225. package/esm2022/lib/datatable/components/amount-cell/amount-cell.component.mjs +45 -0
  226. package/esm2022/lib/datatable/components/boolean-cell/boolean-cell.component.mjs +65 -0
  227. package/esm2022/lib/datatable/components/columns-selector/columns-search-filter.pipe.mjs +55 -0
  228. package/esm2022/lib/datatable/components/columns-selector/columns-selector.component.mjs +113 -0
  229. package/esm2022/lib/datatable/components/data-cell.event.mjs +31 -0
  230. package/esm2022/lib/datatable/components/data-row-action.event.mjs +34 -0
  231. package/esm2022/lib/datatable/components/datatable/datatable.component.mjs +914 -0
  232. package/esm2022/lib/datatable/components/datatable-cell/datatable-cell.component.mjs +126 -0
  233. package/esm2022/lib/datatable/components/datatable-row/datatable-row.component.mjs +98 -0
  234. package/esm2022/lib/datatable/components/date-cell/date-cell.component.mjs +78 -0
  235. package/esm2022/lib/datatable/components/empty-list/empty-list.component.mjs +60 -0
  236. package/esm2022/lib/datatable/components/filesize-cell/filesize-cell.component.mjs +49 -0
  237. package/esm2022/lib/datatable/components/icon-cell/icon-cell.component.mjs +67 -0
  238. package/esm2022/lib/datatable/components/json-cell/json-cell.component.mjs +86 -0
  239. package/esm2022/lib/datatable/components/location-cell/location-cell.component.mjs +69 -0
  240. package/esm2022/lib/datatable/components/mocks/datatable.mock.mjs +153 -0
  241. package/esm2022/lib/datatable/components/number-cell/number-cell.component.mjs +42 -0
  242. package/esm2022/lib/datatable/data/data-column.model.mjs +18 -0
  243. package/esm2022/lib/datatable/data/data-row-event.model.mjs +26 -0
  244. package/esm2022/lib/datatable/data/data-row-update.model.mjs +18 -0
  245. package/esm2022/lib/datatable/data/data-row.model.mjs +18 -0
  246. package/esm2022/lib/datatable/data/data-sorting.model.mjs +24 -0
  247. package/esm2022/lib/datatable/data/data-table.schema.mjs +132 -0
  248. package/esm2022/lib/datatable/data/datatable-adapter.mjs +18 -0
  249. package/esm2022/lib/datatable/data/object-datacolumn.model.mjs +46 -0
  250. package/esm2022/lib/datatable/data/object-datarow.model.mjs +41 -0
  251. package/esm2022/lib/datatable/data/object-datatable-adapter.mjs +134 -0
  252. package/esm2022/lib/datatable/data-column/data-column-header.component.mjs +45 -0
  253. package/esm2022/lib/datatable/data-column/data-column-list.component.mjs +36 -0
  254. package/esm2022/lib/datatable/data-column/data-column.component.mjs +114 -0
  255. package/esm2022/lib/datatable/data-column/index.mjs +18 -0
  256. package/esm2022/lib/datatable/data-column/public-api.mjs +20 -0
  257. package/esm2022/lib/datatable/datatable.module.mjs +161 -0
  258. package/esm2022/lib/datatable/directives/custom-empty-content-template.directive.mjs +35 -0
  259. package/esm2022/lib/datatable/directives/custom-loading-template.directive.mjs +30 -0
  260. package/esm2022/lib/datatable/directives/custom-no-permission-template.directive.mjs +35 -0
  261. package/esm2022/lib/datatable/directives/drop-zone.directive.mjs +89 -0
  262. package/esm2022/lib/datatable/directives/header-filter-template.directive.mjs +43 -0
  263. package/esm2022/lib/datatable/directives/loading-template.directive.mjs +46 -0
  264. package/esm2022/lib/datatable/directives/main-data-table-action-template.directive.mjs +43 -0
  265. package/esm2022/lib/datatable/directives/no-content-template.directive.mjs +46 -0
  266. package/esm2022/lib/datatable/directives/no-permission-template.directive.mjs +46 -0
  267. package/esm2022/lib/datatable/directives/resizable/resizable.directive.mjs +173 -0
  268. package/esm2022/lib/datatable/directives/resizable/resize-handle.directive.mjs +72 -0
  269. package/esm2022/lib/datatable/directives/resizable/types.mjs +18 -0
  270. package/esm2022/lib/datatable/index.mjs +18 -0
  271. package/esm2022/lib/datatable/public-api.mjs +55 -0
  272. package/esm2022/lib/datatable/services/datatable.service.mjs +33 -0
  273. package/esm2022/lib/dialogs/confirm-dialog/confirm.dialog.mjs +50 -0
  274. package/esm2022/lib/dialogs/confirm-dialog/confirm.dialog.module.mjs +38 -0
  275. package/esm2022/lib/dialogs/dialog/dialog-data.interface.mjs +18 -0
  276. package/esm2022/lib/dialogs/dialog/dialog.component.mjs +70 -0
  277. package/esm2022/lib/dialogs/dialog/dialog.model.mjs +22 -0
  278. package/esm2022/lib/dialogs/dialog/index.mjs +20 -0
  279. package/esm2022/lib/dialogs/edit-json/edit-json.dialog.mjs +52 -0
  280. package/esm2022/lib/dialogs/edit-json/edit-json.dialog.module.mjs +34 -0
  281. package/esm2022/lib/dialogs/index.mjs +18 -0
  282. package/esm2022/lib/dialogs/public-api.mjs +25 -0
  283. package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +73 -0
  284. package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.model.mjs +18 -0
  285. package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +33 -0
  286. package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes.guard.mjs +64 -0
  287. package/esm2022/lib/directives/directive.module.mjs +56 -0
  288. package/esm2022/lib/directives/highlight.directive.mjs +67 -0
  289. package/esm2022/lib/directives/index.mjs +18 -0
  290. package/esm2022/lib/directives/infinite-select-scroll.directive.mjs +67 -0
  291. package/esm2022/lib/directives/logout.directive.mjs +72 -0
  292. package/esm2022/lib/directives/public-api.mjs +24 -0
  293. package/esm2022/lib/directives/tooltip-card/tooltip-card.component.mjs +60 -0
  294. package/esm2022/lib/directives/tooltip-card/tooltip-card.directive.mjs +104 -0
  295. package/esm2022/lib/directives/upload.directive.mjs +241 -0
  296. package/esm2022/lib/dynamic-chip-list/chip.mjs +18 -0
  297. package/esm2022/lib/dynamic-chip-list/dynamic-chip-list.component.mjs +204 -0
  298. package/esm2022/lib/dynamic-chip-list/dynamic-chip-list.module.mjs +33 -0
  299. package/esm2022/lib/dynamic-chip-list/index.mjs +18 -0
  300. package/esm2022/lib/dynamic-chip-list/public-api.mjs +20 -0
  301. package/esm2022/lib/events/base-ui.event.mjs +21 -0
  302. package/esm2022/lib/events/base.event.mjs +29 -0
  303. package/esm2022/lib/events/index.mjs +18 -0
  304. package/esm2022/lib/events/public-api.mjs +19 -0
  305. package/esm2022/lib/form/components/form-base.component.mjs +212 -0
  306. package/esm2022/lib/form/components/form-custom-button.directive.mjs +30 -0
  307. package/esm2022/lib/form/components/form-field/form-field.component.mjs +142 -0
  308. package/esm2022/lib/form/components/form-renderer.component.mjs +161 -0
  309. package/esm2022/lib/form/components/form-section/form-section.component.mjs +46 -0
  310. package/esm2022/lib/form/components/helpers/buttons-visibility.mjs +37 -0
  311. package/esm2022/lib/form/components/inplace-form-input/inplace-form-input.component.mjs +37 -0
  312. package/esm2022/lib/form/components/middlewares/decimal-middleware.service.mjs +48 -0
  313. package/esm2022/lib/form/components/middlewares/middleware.mjs +19 -0
  314. package/esm2022/lib/form/components/widgets/amount/amount.widget.mjs +77 -0
  315. package/esm2022/lib/form/components/widgets/base-viewer/base-viewer.widget.mjs +59 -0
  316. package/esm2022/lib/form/components/widgets/checkbox/checkbox.widget.mjs +52 -0
  317. package/esm2022/lib/form/components/widgets/core/container-column.model.mjs +28 -0
  318. package/esm2022/lib/form/components/widgets/core/container.model.mjs +50 -0
  319. package/esm2022/lib/form/components/widgets/core/content-link.model.mjs +52 -0
  320. package/esm2022/lib/form/components/widgets/core/displayable-cm-properties.model.mjs +18 -0
  321. package/esm2022/lib/form/components/widgets/core/error-message.model.mjs +38 -0
  322. package/esm2022/lib/form/components/widgets/core/external-content-link.mjs +18 -0
  323. package/esm2022/lib/form/components/widgets/core/external-content.mjs +18 -0
  324. package/esm2022/lib/form/components/widgets/core/form-field-file-source.mjs +18 -0
  325. package/esm2022/lib/form/components/widgets/core/form-field-metadata.mjs +18 -0
  326. package/esm2022/lib/form/components/widgets/core/form-field-option.mjs +18 -0
  327. package/esm2022/lib/form/components/widgets/core/form-field-rule.mjs +18 -0
  328. package/esm2022/lib/form/components/widgets/core/form-field-selected-folder.mjs +18 -0
  329. package/esm2022/lib/form/components/widgets/core/form-field-templates.mjs +18 -0
  330. package/esm2022/lib/form/components/widgets/core/form-field-types.mjs +74 -0
  331. package/esm2022/lib/form/components/widgets/core/form-field-utils.mjs +23 -0
  332. package/esm2022/lib/form/components/widgets/core/form-field-validator.mjs +268 -0
  333. package/esm2022/lib/form/components/widgets/core/form-field-variable-options.mjs +18 -0
  334. package/esm2022/lib/form/components/widgets/core/form-field.model.mjs +490 -0
  335. package/esm2022/lib/form/components/widgets/core/form-outcome-event.model.mjs +32 -0
  336. package/esm2022/lib/form/components/widgets/core/form-outcome.model.mjs +38 -0
  337. package/esm2022/lib/form/components/widgets/core/form-values.mjs +18 -0
  338. package/esm2022/lib/form/components/widgets/core/form-variable.model.mjs +18 -0
  339. package/esm2022/lib/form/components/widgets/core/form-widget.model.mjs +33 -0
  340. package/esm2022/lib/form/components/widgets/core/form.model.mjs +387 -0
  341. package/esm2022/lib/form/components/widgets/core/group.model.mjs +18 -0
  342. package/esm2022/lib/form/components/widgets/core/index.mjs +49 -0
  343. package/esm2022/lib/form/components/widgets/core/predefined-theme.mjs +115 -0
  344. package/esm2022/lib/form/components/widgets/core/process-form-model.interface.mjs +18 -0
  345. package/esm2022/lib/form/components/widgets/core/process-variable.model.mjs +18 -0
  346. package/esm2022/lib/form/components/widgets/core/tab.model.mjs +34 -0
  347. package/esm2022/lib/form/components/widgets/core/theme.model.mjs +18 -0
  348. package/esm2022/lib/form/components/widgets/core/upload-widget-content-link.model.mjs +27 -0
  349. package/esm2022/lib/form/components/widgets/core/widget-schema.model.mjs +18 -0
  350. package/esm2022/lib/form/components/widgets/date/date.widget.mjs +162 -0
  351. package/esm2022/lib/form/components/widgets/date-time/date-time.widget.mjs +153 -0
  352. package/esm2022/lib/form/components/widgets/decimal/decimal.component.mjs +53 -0
  353. package/esm2022/lib/form/components/widgets/display-text/display-text.schema.mjs +86 -0
  354. package/esm2022/lib/form/components/widgets/display-text/display-text.widget.mjs +46 -0
  355. package/esm2022/lib/form/components/widgets/display-text/index.mjs +19 -0
  356. package/esm2022/lib/form/components/widgets/error/error.component.mjs +92 -0
  357. package/esm2022/lib/form/components/widgets/header/header.schema.mjs +86 -0
  358. package/esm2022/lib/form/components/widgets/header/header.widget.mjs +42 -0
  359. package/esm2022/lib/form/components/widgets/header/index.mjs +19 -0
  360. package/esm2022/lib/form/components/widgets/hyperlink/hyperlink.widget.mjs +69 -0
  361. package/esm2022/lib/form/components/widgets/index.mjs +71 -0
  362. package/esm2022/lib/form/components/widgets/json/json.widget.mjs +66 -0
  363. package/esm2022/lib/form/components/widgets/multiline-text/multiline-text.widget.mjs +55 -0
  364. package/esm2022/lib/form/components/widgets/number/number.widget.mjs +71 -0
  365. package/esm2022/lib/form/components/widgets/reactive-widget.interface.mjs +18 -0
  366. package/esm2022/lib/form/components/widgets/text/text-mask.component.mjs +215 -0
  367. package/esm2022/lib/form/components/widgets/text/text.widget.mjs +65 -0
  368. package/esm2022/lib/form/components/widgets/unknown/unknown.widget.mjs +63 -0
  369. package/esm2022/lib/form/components/widgets/widget.component.mjs +110 -0
  370. package/esm2022/lib/form/events/form-error.event.mjs +24 -0
  371. package/esm2022/lib/form/events/form-field.event.mjs +24 -0
  372. package/esm2022/lib/form/events/form-rules.event.mjs +25 -0
  373. package/esm2022/lib/form/events/form-spinner.event.mjs +23 -0
  374. package/esm2022/lib/form/events/form.event.mjs +29 -0
  375. package/esm2022/lib/form/events/index.mjs +24 -0
  376. package/esm2022/lib/form/events/validate-form-field.event.mjs +24 -0
  377. package/esm2022/lib/form/events/validate-form.event.mjs +25 -0
  378. package/esm2022/lib/form/form-base.module.mjs +90 -0
  379. package/esm2022/lib/form/index.mjs +18 -0
  380. package/esm2022/lib/form/models/form-rules.model.mjs +77 -0
  381. package/esm2022/lib/form/models/task-process-variable.model.mjs +19 -0
  382. package/esm2022/lib/form/models/widget-visibility.model.mjs +104 -0
  383. package/esm2022/lib/form/pipes/field-style.pipe.mjs +45 -0
  384. package/esm2022/lib/form/pipes/index.mjs +18 -0
  385. package/esm2022/lib/form/public-api.mjs +35 -0
  386. package/esm2022/lib/form/services/form-rendering.service.mjs +53 -0
  387. package/esm2022/lib/form/services/form-validation-service.interface.mjs +18 -0
  388. package/esm2022/lib/form/services/form.service.mjs +86 -0
  389. package/esm2022/lib/form/services/widget-visibility.service.mjs +294 -0
  390. package/esm2022/lib/header/header.component.mjs +73 -0
  391. package/esm2022/lib/header/index.mjs +18 -0
  392. package/esm2022/lib/header/navbar/navbar-item.component.mjs +37 -0
  393. package/esm2022/lib/header/navbar/navbar.component.mjs +36 -0
  394. package/esm2022/lib/header/public-api.mjs +20 -0
  395. package/esm2022/lib/icon/icon.component.mjs +51 -0
  396. package/esm2022/lib/icon/icon.module.mjs +36 -0
  397. package/esm2022/lib/icon/index.mjs +18 -0
  398. package/esm2022/lib/icon/public-api.mjs +19 -0
  399. package/esm2022/lib/identity-user-info/identity-user-info.component.mjs +86 -0
  400. package/esm2022/lib/identity-user-info/identity-user-info.module.mjs +33 -0
  401. package/esm2022/lib/identity-user-info/index.mjs +18 -0
  402. package/esm2022/lib/identity-user-info/public-api.mjs +19 -0
  403. package/esm2022/lib/info-drawer/index.mjs +18 -0
  404. package/esm2022/lib/info-drawer/info-drawer-layout.component.mjs +71 -0
  405. package/esm2022/lib/info-drawer/info-drawer.component.mjs +113 -0
  406. package/esm2022/lib/info-drawer/info-drawer.module.mjs +53 -0
  407. package/esm2022/lib/info-drawer/public-api.mjs +20 -0
  408. package/esm2022/lib/interface/index.mjs +18 -0
  409. package/esm2022/lib/interface/injection.tokens.mjs +19 -0
  410. package/esm2022/lib/interface/public-api.mjs +18 -0
  411. package/esm2022/lib/language-menu/index.mjs +18 -0
  412. package/esm2022/lib/language-menu/language-menu.component.mjs +61 -0
  413. package/esm2022/lib/language-menu/language-menu.module.mjs +35 -0
  414. package/esm2022/lib/language-menu/language-picker.component.mjs +77 -0
  415. package/esm2022/lib/language-menu/public-api.mjs +21 -0
  416. package/esm2022/lib/language-menu/service/language.service.interface.mjs +18 -0
  417. package/esm2022/lib/language-menu/service/language.service.mjs +34 -0
  418. package/esm2022/lib/layout/components/header/header.component.mjs +99 -0
  419. package/esm2022/lib/layout/components/layout-container/layout-container.component.mjs +180 -0
  420. package/esm2022/lib/layout/components/sidebar-action/sidebar-action-menu.component.mjs +82 -0
  421. package/esm2022/lib/layout/components/sidenav-layout/sidenav-layout.component.mjs +145 -0
  422. package/esm2022/lib/layout/directives/sidenav-layout-content.directive.mjs +33 -0
  423. package/esm2022/lib/layout/directives/sidenav-layout-header.directive.mjs +33 -0
  424. package/esm2022/lib/layout/directives/sidenav-layout-navigation.directive.mjs +33 -0
  425. package/esm2022/lib/layout/index.mjs +18 -0
  426. package/esm2022/lib/layout/layout.module.mjs +72 -0
  427. package/esm2022/lib/layout/public-api.mjs +25 -0
  428. package/esm2022/lib/login/components/login/login.component.mjs +367 -0
  429. package/esm2022/lib/login/components/login-dialog/login-dialog-component-data.interface.mjs +18 -0
  430. package/esm2022/lib/login/components/login-dialog/login-dialog.component.mjs +57 -0
  431. package/esm2022/lib/login/components/login-dialog-panel/login-dialog-panel.component.mjs +48 -0
  432. package/esm2022/lib/login/directives/login-footer.directive.mjs +41 -0
  433. package/esm2022/lib/login/directives/login-header.directive.mjs +41 -0
  434. package/esm2022/lib/login/index.mjs +18 -0
  435. package/esm2022/lib/login/login.module.mjs +54 -0
  436. package/esm2022/lib/login/models/login-error.event.mjs +22 -0
  437. package/esm2022/lib/login/models/login-submit.event.mjs +32 -0
  438. package/esm2022/lib/login/models/login-success.event.mjs +24 -0
  439. package/esm2022/lib/login/public-api.mjs +27 -0
  440. package/esm2022/lib/material.module.mjs +254 -0
  441. package/esm2022/lib/mock/cookie.service.mock.mjs +43 -0
  442. package/esm2022/lib/mock/data-column.mock.mjs +73 -0
  443. package/esm2022/lib/mock/event.mock.mjs +39 -0
  444. package/esm2022/lib/mock/form/form-definition-readonly.mock.mjs +225 -0
  445. package/esm2022/lib/mock/form/form-definition-visibility.mock.mjs +347 -0
  446. package/esm2022/lib/mock/form/form-definition.mock.mjs +403 -0
  447. package/esm2022/lib/mock/form/form.component.mock.mjs +275 -0
  448. package/esm2022/lib/mock/form/form.service.mock.mjs +248 -0
  449. package/esm2022/lib/mock/form/widget-visibility.service.mock.mjs +1835 -0
  450. package/esm2022/lib/mock/index.mjs +18 -0
  451. package/esm2022/lib/mock/public-api.mjs +27 -0
  452. package/esm2022/lib/mock/translation.service.mock.mjs +44 -0
  453. package/esm2022/lib/models/comment.model.mjs +51 -0
  454. package/esm2022/lib/models/component.model.mjs +24 -0
  455. package/esm2022/lib/models/decimal-number.model.mjs +26 -0
  456. package/esm2022/lib/models/general-user.model.mjs +24 -0
  457. package/esm2022/lib/models/index.mjs +18 -0
  458. package/esm2022/lib/models/pagination.model.mjs +29 -0
  459. package/esm2022/lib/models/path.model.mjs +24 -0
  460. package/esm2022/lib/models/product-version.model.mjs +28 -0
  461. package/esm2022/lib/models/public-api.mjs +24 -0
  462. package/esm2022/lib/models/request-pagination.model.mjs +25 -0
  463. package/esm2022/lib/notifications/components/add-notification.stories.component.mjs +44 -0
  464. package/esm2022/lib/notifications/components/notification-history.component.mjs +138 -0
  465. package/esm2022/lib/notifications/helpers/notification.factory.mjs +43 -0
  466. package/esm2022/lib/notifications/index.mjs +18 -0
  467. package/esm2022/lib/notifications/models/notification.model.mjs +25 -0
  468. package/esm2022/lib/notifications/notification-history.module.mjs +35 -0
  469. package/esm2022/lib/notifications/public-api.mjs +23 -0
  470. package/esm2022/lib/notifications/services/notification.service.mjs +166 -0
  471. package/esm2022/lib/pagination/index.mjs +18 -0
  472. package/esm2022/lib/pagination/infinite-pagination.component.mjs +111 -0
  473. package/esm2022/lib/pagination/paginated-component.interface.mjs +18 -0
  474. package/esm2022/lib/pagination/pagination-component.interface.mjs +18 -0
  475. package/esm2022/lib/pagination/pagination.component.mjs +263 -0
  476. package/esm2022/lib/pagination/pagination.module.mjs +35 -0
  477. package/esm2022/lib/pagination/public-api.mjs +22 -0
  478. package/esm2022/lib/pipes/date-time.pipe.mjs +46 -0
  479. package/esm2022/lib/pipes/decimal-number.pipe.mjs +78 -0
  480. package/esm2022/lib/pipes/file-size.pipe.mjs +54 -0
  481. package/esm2022/lib/pipes/file-type.pipe.mjs +40 -0
  482. package/esm2022/lib/pipes/format-space.pipe.mjs +39 -0
  483. package/esm2022/lib/pipes/full-name.pipe.mjs +43 -0
  484. package/esm2022/lib/pipes/index.mjs +18 -0
  485. package/esm2022/lib/pipes/localized-date.pipe.mjs +70 -0
  486. package/esm2022/lib/pipes/multi-value.pipe.mjs +37 -0
  487. package/esm2022/lib/pipes/pipe.module.mjs +83 -0
  488. package/esm2022/lib/pipes/public-api.mjs +30 -0
  489. package/esm2022/lib/pipes/text-highlight.pipe.mjs +39 -0
  490. package/esm2022/lib/pipes/time-ago.pipe.mjs +65 -0
  491. package/esm2022/lib/pipes/truncate.pipe.mjs +33 -0
  492. package/esm2022/lib/pipes/user-initial.pipe.mjs +52 -0
  493. package/esm2022/lib/pipes/user-like.interface.mjs +18 -0
  494. package/esm2022/lib/progress/progress.component.mjs +90 -0
  495. package/esm2022/lib/search-text/animations.mjs +32 -0
  496. package/esm2022/lib/search-text/index.mjs +18 -0
  497. package/esm2022/lib/search-text/models/search-text-input.model.mjs +23 -0
  498. package/esm2022/lib/search-text/public-api.mjs +22 -0
  499. package/esm2022/lib/search-text/search-text-input.component.mjs +283 -0
  500. package/esm2022/lib/search-text/search-text-input.module.mjs +35 -0
  501. package/esm2022/lib/search-text/search-trigger.directive.mjs +181 -0
  502. package/esm2022/lib/snackbar-content/index.mjs +18 -0
  503. package/esm2022/lib/snackbar-content/public-api.mjs +20 -0
  504. package/esm2022/lib/snackbar-content/snack-bar-data.mjs +18 -0
  505. package/esm2022/lib/snackbar-content/snackbar-content.component.mjs +49 -0
  506. package/esm2022/lib/snackbar-content/snackbar-content.module.mjs +33 -0
  507. package/esm2022/lib/sorting-picker/index.mjs +18 -0
  508. package/esm2022/lib/sorting-picker/public-api.mjs +18 -0
  509. package/esm2022/lib/sorting-picker/sorting-picker.component.mjs +67 -0
  510. package/esm2022/lib/templates/empty-content/empty-content.component.mjs +43 -0
  511. package/esm2022/lib/templates/error-content/error-content.component.mjs +61 -0
  512. package/esm2022/lib/templates/index.mjs +18 -0
  513. package/esm2022/lib/templates/public-api.mjs +20 -0
  514. package/esm2022/lib/templates/template.module.mjs +38 -0
  515. package/esm2022/lib/testing/core.story.module.mjs +39 -0
  516. package/esm2022/lib/testing/core.testing.module.mjs +35 -0
  517. package/esm2022/lib/testing/index.mjs +22 -0
  518. package/esm2022/lib/testing/noop-auth.module.mjs +80 -0
  519. package/esm2022/lib/testing/noop-translate.module.mjs +61 -0
  520. package/esm2022/lib/testing/unit-testing-utils.mjs +364 -0
  521. package/esm2022/lib/toolbar/index.mjs +18 -0
  522. package/esm2022/lib/toolbar/public-api.mjs +21 -0
  523. package/esm2022/lib/toolbar/toolbar-divider.component.mjs +27 -0
  524. package/esm2022/lib/toolbar/toolbar-title.component.mjs +32 -0
  525. package/esm2022/lib/toolbar/toolbar.component.mjs +39 -0
  526. package/esm2022/lib/toolbar/toolbar.module.mjs +36 -0
  527. package/esm2022/lib/translation/index.mjs +18 -0
  528. package/esm2022/lib/translation/public-api.mjs +19 -0
  529. package/esm2022/lib/translation/translate-loader.service.mjs +148 -0
  530. package/esm2022/lib/translation/translation.service.mjs +148 -0
  531. package/esm2022/lib/viewer/components/download-prompt-dialog/download-prompt-dialog.component.mjs +36 -0
  532. package/esm2022/lib/viewer/components/img-viewer/img-viewer.component.mjs +220 -0
  533. package/esm2022/lib/viewer/components/media-player/media-player.component.mjs +64 -0
  534. package/esm2022/lib/viewer/components/pdf-viewer/pdf-viewer.component.mjs +550 -0
  535. package/esm2022/lib/viewer/components/pdf-viewer-password-dialog/pdf-viewer-password-dialog.mjs +60 -0
  536. package/esm2022/lib/viewer/components/pdf-viewer-thumb/pdf-viewer-thumb.component.mjs +48 -0
  537. package/esm2022/lib/viewer/components/pdf-viewer-thumbnails/pdf-viewer-thumbnails.component.mjs +198 -0
  538. package/esm2022/lib/viewer/components/txt-viewer/txt-viewer.component.mjs +85 -0
  539. package/esm2022/lib/viewer/components/unknown-format/unknown-format.component.mjs +32 -0
  540. package/esm2022/lib/viewer/components/viewer-more-actions.component.mjs +34 -0
  541. package/esm2022/lib/viewer/components/viewer-open-with.component.mjs +34 -0
  542. package/esm2022/lib/viewer/components/viewer-render/viewer-render.component.mjs +216 -0
  543. package/esm2022/lib/viewer/components/viewer-sidebar.component.mjs +46 -0
  544. package/esm2022/lib/viewer/components/viewer-toolbar-actions.component.mjs +34 -0
  545. package/esm2022/lib/viewer/components/viewer-toolbar-custom-actions.component.mjs +34 -0
  546. package/esm2022/lib/viewer/components/viewer-toolbar.component.mjs +34 -0
  547. package/esm2022/lib/viewer/components/viewer.component.mjs +486 -0
  548. package/esm2022/lib/viewer/directives/viewer-extension.directive.mjs +67 -0
  549. package/esm2022/lib/viewer/index.mjs +18 -0
  550. package/esm2022/lib/viewer/models/download-prompt.actions.mjs +23 -0
  551. package/esm2022/lib/viewer/models/viewer.model.mjs +22 -0
  552. package/esm2022/lib/viewer/public-api.mjs +40 -0
  553. package/esm2022/lib/viewer/services/rendering-queue.services.mjs +179 -0
  554. package/esm2022/lib/viewer/services/view-util.service.mjs +149 -0
  555. package/esm2022/lib/viewer/viewer.module.mjs +110 -0
  556. package/esm2022/public-api.mjs +60 -0
  557. package/esm2022/shell/alfresco-adf-core-shell.mjs +5 -0
  558. package/esm2022/shell/index.mjs +20 -0
  559. package/esm2022/shell/lib/components/shell/shell.component.mjs +122 -0
  560. package/esm2022/shell/lib/services/shell-app.service.mjs +22 -0
  561. package/esm2022/shell/lib/shell.module.mjs +79 -0
  562. package/esm2022/shell/lib/shell.routes.mjs +25 -0
  563. package/feature-flags/lib/providers/debug-feature-flags.provider.d.ts +35 -4
  564. package/fesm2022/adf-core.mjs +1177 -1229
  565. package/fesm2022/adf-core.mjs.map +1 -1
  566. package/fesm2022/alfresco-adf-core-api.mjs +4 -4
  567. package/fesm2022/alfresco-adf-core-api.mjs.map +1 -1
  568. package/fesm2022/alfresco-adf-core-auth.mjs +3 -3
  569. package/fesm2022/alfresco-adf-core-auth.mjs.map +1 -1
  570. package/fesm2022/alfresco-adf-core-breadcrumbs.mjs +11 -11
  571. package/fesm2022/alfresco-adf-core-breadcrumbs.mjs.map +1 -1
  572. package/fesm2022/alfresco-adf-core-feature-flags.mjs +59 -52
  573. package/fesm2022/alfresco-adf-core-feature-flags.mjs.map +1 -1
  574. package/fesm2022/alfresco-adf-core-shell.mjs +21 -96
  575. package/fesm2022/alfresco-adf-core-shell.mjs.map +1 -1
  576. package/lib/app-config/app-config.module.d.ts +0 -1
  577. package/lib/app-config/public-api.d.ts +0 -1
  578. package/lib/auth/oidc/auth.module.d.ts +4 -4
  579. package/lib/auth/oidc/view/authentication-confirmation/authentication-confirmation.component.d.ts +1 -1
  580. package/lib/card-view/components/base-card-view.d.ts +1 -1
  581. package/lib/card-view/components/card-view/card-view.component.scss +9 -12
  582. package/lib/card-view/components/card-view-selectitem/card-view-selectitem.component.scss +2 -1
  583. package/lib/card-view/components/card-view-textitem/card-view-textitem.component.scss +5 -2
  584. package/lib/core.module.d.ts +128 -124
  585. package/lib/datatable/data/data-table.schema.d.ts +1 -1
  586. package/lib/dialogs/confirm-dialog/confirm.dialog.d.ts +1 -1
  587. package/lib/dialogs/confirm-dialog/confirm.dialog.module.d.ts +6 -2
  588. package/lib/form/form-base.module.d.ts +0 -1
  589. package/lib/testing/core.testing.module.d.ts +0 -1
  590. package/lib/testing/noop-translate.module.d.ts +2 -1
  591. package/lib/translation/public-api.d.ts +0 -1
  592. package/package.json +15 -3
  593. package/public-api.d.ts +0 -1
  594. package/shell/README.md +6 -20
  595. package/shell/index.d.ts +0 -2
  596. package/shell/lib/shell.module.d.ts +7 -4
  597. package/shell/lib/shell.routes.d.ts +1 -13
  598. package/lib/app-config/provide-app-config.d.ts +0 -23
  599. package/lib/landing-page/index.d.ts +0 -17
  600. package/lib/landing-page/provider.d.ts +0 -24
  601. package/lib/landing-page/public-api.d.ts +0 -17
  602. package/lib/translation/provide-i18n.d.ts +0 -39
  603. package/shell/lib/providers.d.ts +0 -36
@@ -0,0 +1,182 @@
1
+ /*!
2
+ * @license
3
+ * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { Component, DestroyRef, inject, Input, ViewChild, ViewEncapsulation } from '@angular/core';
18
+ import { DateAdapter, MAT_DATE_FORMATS } from '@angular/material/core';
19
+ import { DatetimeAdapter, MAT_DATETIME_FORMATS, MatDatetimepickerComponent, MatDatetimepickerModule } from '@mat-datetimepicker/core';
20
+ import { UserPreferencesService, UserPreferenceValues } from '../../../common/services/user-preferences.service';
21
+ import { BaseCardView } from '../base-card-view';
22
+ import { ClipboardService } from '../../../clipboard/clipboard.service';
23
+ import { TranslationService } from '../../../translation/translation.service';
24
+ import { ADF_DATE_FORMATS, AdfDateFnsAdapter } from '../../../common/utils/date-fns-adapter';
25
+ import { ADF_DATETIME_FORMATS, AdfDateTimeFnsAdapter } from '../../../common/utils/datetime-fns-adapter';
26
+ import { isValid } from 'date-fns';
27
+ import { DateFnsUtils } from '../../../common/utils/date-fns-utils';
28
+ import { CommonModule } from '@angular/common';
29
+ import { TranslatePipe } from '@ngx-translate/core';
30
+ import { MatIconModule } from '@angular/material/icon';
31
+ import { MatChipsModule } from '@angular/material/chips';
32
+ import { MatFormFieldModule } from '@angular/material/form-field';
33
+ import { MatDatepickerModule } from '@angular/material/datepicker';
34
+ import { MatSnackBarModule } from '@angular/material/snack-bar';
35
+ import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
36
+ import { FormControl, ReactiveFormsModule } from '@angular/forms';
37
+ import { MatInputModule } from '@angular/material/input';
38
+ import * as i0 from "@angular/core";
39
+ import * as i1 from "@angular/material/core";
40
+ import * as i2 from "../../../common/services/user-preferences.service";
41
+ import * as i3 from "../../../clipboard/clipboard.service";
42
+ import * as i4 from "../../../translation/translation.service";
43
+ import * as i5 from "@angular/common";
44
+ import * as i6 from "@angular/material/icon";
45
+ import * as i7 from "@mat-datetimepicker/core";
46
+ import * as i8 from "@angular/material/chips";
47
+ import * as i9 from "@angular/material/input";
48
+ import * as i10 from "@angular/material/form-field";
49
+ export class CardViewDateItemComponent extends BaseCardView {
50
+ constructor(dateAdapter, userPreferencesService, clipboardService, translateService) {
51
+ super();
52
+ this.dateAdapter = dateAdapter;
53
+ this.userPreferencesService = userPreferencesService;
54
+ this.clipboardService = clipboardService;
55
+ this.translateService = translateService;
56
+ this.displayEmpty = true;
57
+ this.displayClearAction = true;
58
+ this.cardViewDateTimeControl = new FormControl(null);
59
+ this.destroyRef = inject(DestroyRef);
60
+ }
61
+ ngOnInit() {
62
+ this.userPreferencesService
63
+ .select(UserPreferenceValues.Locale)
64
+ .pipe(takeUntilDestroyed(this.destroyRef))
65
+ .subscribe((locale) => {
66
+ this.property.locale = locale;
67
+ });
68
+ this.dateAdapter.displayFormat = 'MMM DD';
69
+ if (this.property.multivalued) {
70
+ this.initMultivaluedProperty();
71
+ }
72
+ else {
73
+ this.initSingleValueProperty();
74
+ }
75
+ }
76
+ get showProperty() {
77
+ return this.displayEmpty || !this.property.isEmpty();
78
+ }
79
+ get showClearAction() {
80
+ return this.displayClearAction && (!this.property.isEmpty() || !!this.property.default);
81
+ }
82
+ showDatePicker() {
83
+ this.datepicker.open();
84
+ }
85
+ onDateChanged(event) {
86
+ if (event.value) {
87
+ if (isValid(event.value)) {
88
+ this.property.value = new Date(event.value);
89
+ this.valueDate = new Date(event.value);
90
+ if (this.property.type === 'date') {
91
+ this.property.value = DateFnsUtils.forceUtc(event.value);
92
+ this.valueDate = DateFnsUtils.forceLocal(event.value);
93
+ }
94
+ this.update();
95
+ }
96
+ }
97
+ }
98
+ onDateClear() {
99
+ this.valueDate = null;
100
+ this.cardViewUpdateService.update({ ...this.property }, null);
101
+ this.property.value = null;
102
+ this.property.default = null;
103
+ }
104
+ copyToClipboard(valueToCopy) {
105
+ if (typeof valueToCopy === 'string') {
106
+ const clipboardMessage = this.translateService.instant('CORE.METADATA.ACCESSIBILITY.COPY_TO_CLIPBOARD_MESSAGE');
107
+ this.clipboardService.copyContentToClipboard(valueToCopy, clipboardMessage);
108
+ }
109
+ }
110
+ addDateToList(event) {
111
+ if (event.value) {
112
+ if (isValid(event.value) && this.property.multivalued && Array.isArray(this.property.value)) {
113
+ let localDate = new Date(event.value);
114
+ if (this.property.type === 'date') {
115
+ localDate = DateFnsUtils.forceUtc(event.value);
116
+ }
117
+ this.property.value.push(localDate);
118
+ this.update();
119
+ }
120
+ }
121
+ }
122
+ removeValueFromList(itemIndex) {
123
+ if (this.property.multivalued && Array.isArray(this.property.value)) {
124
+ this.property.value.splice(itemIndex, 1);
125
+ this.update();
126
+ }
127
+ }
128
+ update() {
129
+ this.cardViewUpdateService.update({ ...this.property }, this.property.value);
130
+ }
131
+ initSingleValueProperty() {
132
+ if (this.property.value && !Array.isArray(this.property.value)) {
133
+ const date = new Date(this.property.value);
134
+ this.property.value = date;
135
+ this.valueDate = this.property.type === 'date' ? DateFnsUtils.forceLocal(date) : date;
136
+ }
137
+ }
138
+ initMultivaluedProperty() {
139
+ if (!this.property.value) {
140
+ this.property.value = [];
141
+ }
142
+ if (Array.isArray(this.property.value) && this.property.value.length > 0) {
143
+ this.property.value = this.property.value.map((date) => new Date(date));
144
+ this.valueDate = this.property.type === 'date' ? DateFnsUtils.forceLocal(this.property.value[0]) : this.property.value[0];
145
+ }
146
+ }
147
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CardViewDateItemComponent, deps: [{ token: i1.DateAdapter }, { token: i2.UserPreferencesService }, { token: i3.ClipboardService }, { token: i4.TranslationService }], target: i0.ɵɵFactoryTarget.Component }); }
148
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CardViewDateItemComponent, isStandalone: true, selector: "adf-card-view-dateitem", inputs: { displayEmpty: "displayEmpty", displayClearAction: "displayClearAction" }, host: { classAttribute: "adf-card-view-dateitem" }, providers: [
149
+ { provide: MAT_DATE_FORMATS, useValue: ADF_DATE_FORMATS },
150
+ { provide: MAT_DATETIME_FORMATS, useValue: ADF_DATETIME_FORMATS },
151
+ { provide: DateAdapter, useClass: AdfDateFnsAdapter },
152
+ { provide: DatetimeAdapter, useClass: AdfDateTimeFnsAdapter }
153
+ ], viewQueries: [{ propertyName: "datepicker", first: true, predicate: ["datetimePicker"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-label\n class=\"adf-property-label\"\n [attr.data-automation-id]=\"'card-dateitem-label-' + property.key\"\n *ngIf=\"showProperty && !isEditable\"\n [attr.for]=\"'card-view-dateitem-' + property.key\"\n [ngClass]=\"{ 'adf-property-readonly-value': isReadonlyProperty, 'adf-property-value-editable': editable }\"\n [title]=\"'CORE.METADATA.ACTIONS.COPY_TO_CLIPBOARD' | translate\"\n>\n {{ property.label | translate }}\n</mat-label>\n\n<div class=\"adf-property-value\" [ngClass]=\"{ 'adf-property-value-editable': editable, 'adf-property-readonly-value': isReadonlyProperty }\">\n <span *ngIf=\"!isEditable && !property.multivalued\" [attr.data-automation-id]=\"'card-' + property.type + '-value-' + property.key\">\n <span\n *ngIf=\"showProperty\"\n [attr.data-automation-id]=\"'card-dateitem-' + property.key\"\n (dblclick)=\"copyToClipboard(property.displayValue)\"\n [title]=\"'CORE.METADATA.ACTIONS.COPY_TO_CLIPBOARD' | translate\"\n >{{ property.displayValue }}</span\n >\n </span>\n <mat-form-field *ngIf=\"isEditable && !property.multivalued\" class=\"adf-dateitem-editable hxp-input\">\n <mat-label\n class=\"adf-property-label\"\n [attr.data-automation-id]=\"'card-dateitem-label-' + property.key\"\n *ngIf=\"isEditable\"\n [attr.for]=\"'card-view-dateitem-' + property.key\"\n [ngClass]=\"{ 'adf-property-readonly-value': isReadonlyProperty, 'adf-property-value-editable': editable }\"\n [title]=\"'CORE.METADATA.ACTIONS.COPY_TO_CLIPBOARD' | translate\"\n >\n {{ property.label | translate }}\n </mat-label>\n <div class=\"adf-dateitem-editable-controls\">\n <span\n class=\"adf-datepicker-span-button\"\n [attr.data-automation-id]=\"'datepicker-label-toggle-' + property.key\"\n (click)=\"showDatePicker()\"\n tabindex=\"0\"\n role=\"button\"\n (keyup.enter)=\"showDatePicker()\"\n >\n <span *ngIf=\"showProperty; else elseEmptyValueBlock\" [attr.data-automation-id]=\"'card-' + property.type + '-value-' + property.key\">\n {{ property.displayValue }}</span\n >\n </span>\n </div>\n <input\n matInput\n class=\"adf-invisible-date-input\"\n [attr.tabIndex]=\"-1\"\n [matDatetimepicker]=\"datetimePicker\"\n [value]=\"valueDate\"\n (dateChange)=\"onDateChanged($event)\"\n [attr.id]=\"'card-view-dateitem-' + property.key\"\n />\n <mat-icon\n matIconSuffix\n *ngIf=\"showClearAction\"\n class=\"adf-date-reset-icon\"\n (click)=\"onDateClear()\"\n [attr.title]=\"'CORE.METADATA.ACTIONS.CLEAR' | translate\"\n [attr.data-automation-id]=\"'datepicker-date-clear-' + property.key\"\n >\n clear\n </mat-icon>\n <mat-datetimepicker-toggle\n matIconSuffix\n [attr.tabindex]=\"-1\"\n [attr.title]=\"'CORE.METADATA.ACTIONS.EDIT' | translate\"\n [attr.data-automation-id]=\"'datepickertoggle-' + property.key\"\n [for]=\"datetimePicker\"\n />\n\n <mat-datetimepicker\n #datetimePicker\n [type]=\"$any(property).type\"\n [timeInterval]=\"5\"\n [attr.data-automation-id]=\"'datepicker-' + property.key\"\n [startAt]=\"valueDate\"\n />\n </mat-form-field>\n <ng-template #elseEmptyValueBlock>\n {{ property.default | translate }}\n </ng-template>\n\n <div *ngIf=\"property.multivalued\" class=\"adf-property-field adf-dateitem-chip-list-container adf-dateitem-editable\">\n <mat-chip-listbox #chipList class=\"adf-textitem-chip-list\">\n <mat-chip-option\n *ngFor=\"let propertyValue of property.displayValue; let idx = index\"\n [removable]=\"isEditable\"\n (removed)=\"removeValueFromList(idx)\"\n >\n {{ propertyValue }}\n <mat-icon *ngIf=\"isEditable\" matChipRemove>cancel</mat-icon>\n </mat-chip-option>\n </mat-chip-listbox>\n\n <div\n *ngIf=\"isEditable\"\n class=\"adf-property-field adf-dateitem-editable-controls\"\n (click)=\"showDatePicker()\"\n tabindex=\"0\"\n role=\"button\"\n (keyup.enter)=\"showDatePicker()\"\n >\n <input\n class=\"adf-invisible-date-input\"\n [attr.tabIndex]=\"-1\"\n [matDatetimepicker]=\"datetimePicker\"\n (dateChange)=\"addDateToList($event)\"\n [attr.id]=\"'card-view-dateitem-' + property.key\"\n />\n <mat-datetimepicker-toggle\n [attr.tabindex]=\"-1\"\n matSuffix\n [attr.title]=\"'CORE.METADATA.ACTIONS.EDIT' | translate\"\n [attr.data-automation-id]=\"'datepickertoggle-' + property.key\"\n [for]=\"datetimePicker\"\n />\n <mat-datetimepicker\n #datetimePicker\n [type]=\"$any(property).type\"\n [timeInterval]=\"5\"\n [attr.data-automation-id]=\"'datepicker-' + property.key\"\n [startAt]=\"valueDate\"\n />\n </div>\n </div>\n</div>\n", styles: [".adf-card-view-dateitem .adf-property-value{padding-top:6px;padding-bottom:6px;line-height:20px;color:var(--adf-metadata-property-panel-title-color);margin-top:10px}.adf-card-view-dateitem .adf-property-value.adf-property-value-editable{display:flex;align-items:center;border-radius:6px;border-bottom:inherit;margin-bottom:18px}.adf-card-view-dateitem .adf-property-value.adf-property-readonly-value{padding:0 0 0 12px}.adf-card-view-dateitem .adf-invisible-date-input{height:2px;width:0;overflow:hidden;opacity:0;border:none;margin:0;padding:0;float:right}.adf-card-view-dateitem .adf-dateitem-chip-list-container.adf-property-field{margin-bottom:-7px;border-bottom:0;cursor:pointer}.adf-card-view-dateitem .adf-dateitem-editable{cursor:pointer;width:100%}.adf-card-view-dateitem .adf-dateitem-editable-controls{display:flex;align-items:center;justify-content:space-between}.adf-card-view-dateitem .adf-dateitem-editable-controls .mat-icon{opacity:.5}.adf-card-view-dateitem .adf-dateitem-editable-controls .mat-icon:hover{opacity:1}.adf-card-view-dateitem .adf-dateitem-editable-controls mat-datetimepicker-toggle{transform:scale(.8)}.adf-card-view-dateitem .adf-dateitem-editable-controls .adf-datepicker-span-button{flex:1 0 auto;font-size:14px}.adf-card-view-dateitem .adf-dateitem-editable-controls .adf-date-reset-icon{position:relative}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatDatetimepickerModule }, { kind: "component", type: i7.MatDatetimepickerComponent, selector: "mat-datetimepicker", inputs: ["multiYearSelector", "twelvehour", "startView", "mode", "timeInterval", "ariaNextMonthLabel", "ariaPrevMonthLabel", "ariaNextYearLabel", "ariaPrevYearLabel", "preventSameDateTimeSelection", "panelClass", "startAt", "openOnFocus", "type", "touchUi", "disabled"], outputs: ["selectedChanged", "opened", "closed", "viewChanged"], exportAs: ["matDatetimepicker"] }, { kind: "component", type: i7.MatDatetimepickerToggleComponent, selector: "mat-datetimepicker-toggle", inputs: ["for", "disabled"], exportAs: ["matDatetimepickerToggle"] }, { kind: "directive", type: i7.MatDatetimepickerInputDirective, selector: "input[matDatetimepicker]", inputs: ["matDatetimepicker", "matDatepickerFilter", "value", "min", "max", "disabled"], outputs: ["dateChange", "dateInput"], exportAs: ["matDatepickerInput"] }, { kind: "ngmodule", type: MatChipsModule }, { kind: "component", type: i8.MatChipListbox, selector: "mat-chip-listbox", inputs: ["multiple", "aria-orientation", "selectable", "compareWith", "required", "hideSingleSelectionIndicator", "value"], outputs: ["change"] }, { kind: "component", type: i8.MatChipOption, selector: "mat-basic-chip-option, [mat-basic-chip-option], mat-chip-option, [mat-chip-option]", inputs: ["selectable", "selected"], outputs: ["selectionChange"] }, { kind: "directive", type: i8.MatChipRemove, selector: "[matChipRemove]" }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i10.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i10.MatLabel, selector: "mat-label" }, { kind: "directive", type: i10.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "ngmodule", type: MatDatepickerModule }, { kind: "ngmodule", type: MatSnackBarModule }, { kind: "ngmodule", type: ReactiveFormsModule }], encapsulation: i0.ViewEncapsulation.None }); }
154
+ }
155
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CardViewDateItemComponent, decorators: [{
156
+ type: Component,
157
+ args: [{ providers: [
158
+ { provide: MAT_DATE_FORMATS, useValue: ADF_DATE_FORMATS },
159
+ { provide: MAT_DATETIME_FORMATS, useValue: ADF_DATETIME_FORMATS },
160
+ { provide: DateAdapter, useClass: AdfDateFnsAdapter },
161
+ { provide: DatetimeAdapter, useClass: AdfDateTimeFnsAdapter }
162
+ ], selector: 'adf-card-view-dateitem', standalone: true, imports: [
163
+ CommonModule,
164
+ TranslatePipe,
165
+ MatIconModule,
166
+ MatDatetimepickerModule,
167
+ MatChipsModule,
168
+ MatInputModule,
169
+ MatFormFieldModule,
170
+ MatDatepickerModule,
171
+ MatSnackBarModule,
172
+ ReactiveFormsModule
173
+ ], encapsulation: ViewEncapsulation.None, host: { class: 'adf-card-view-dateitem' }, template: "<mat-label\n class=\"adf-property-label\"\n [attr.data-automation-id]=\"'card-dateitem-label-' + property.key\"\n *ngIf=\"showProperty && !isEditable\"\n [attr.for]=\"'card-view-dateitem-' + property.key\"\n [ngClass]=\"{ 'adf-property-readonly-value': isReadonlyProperty, 'adf-property-value-editable': editable }\"\n [title]=\"'CORE.METADATA.ACTIONS.COPY_TO_CLIPBOARD' | translate\"\n>\n {{ property.label | translate }}\n</mat-label>\n\n<div class=\"adf-property-value\" [ngClass]=\"{ 'adf-property-value-editable': editable, 'adf-property-readonly-value': isReadonlyProperty }\">\n <span *ngIf=\"!isEditable && !property.multivalued\" [attr.data-automation-id]=\"'card-' + property.type + '-value-' + property.key\">\n <span\n *ngIf=\"showProperty\"\n [attr.data-automation-id]=\"'card-dateitem-' + property.key\"\n (dblclick)=\"copyToClipboard(property.displayValue)\"\n [title]=\"'CORE.METADATA.ACTIONS.COPY_TO_CLIPBOARD' | translate\"\n >{{ property.displayValue }}</span\n >\n </span>\n <mat-form-field *ngIf=\"isEditable && !property.multivalued\" class=\"adf-dateitem-editable hxp-input\">\n <mat-label\n class=\"adf-property-label\"\n [attr.data-automation-id]=\"'card-dateitem-label-' + property.key\"\n *ngIf=\"isEditable\"\n [attr.for]=\"'card-view-dateitem-' + property.key\"\n [ngClass]=\"{ 'adf-property-readonly-value': isReadonlyProperty, 'adf-property-value-editable': editable }\"\n [title]=\"'CORE.METADATA.ACTIONS.COPY_TO_CLIPBOARD' | translate\"\n >\n {{ property.label | translate }}\n </mat-label>\n <div class=\"adf-dateitem-editable-controls\">\n <span\n class=\"adf-datepicker-span-button\"\n [attr.data-automation-id]=\"'datepicker-label-toggle-' + property.key\"\n (click)=\"showDatePicker()\"\n tabindex=\"0\"\n role=\"button\"\n (keyup.enter)=\"showDatePicker()\"\n >\n <span *ngIf=\"showProperty; else elseEmptyValueBlock\" [attr.data-automation-id]=\"'card-' + property.type + '-value-' + property.key\">\n {{ property.displayValue }}</span\n >\n </span>\n </div>\n <input\n matInput\n class=\"adf-invisible-date-input\"\n [attr.tabIndex]=\"-1\"\n [matDatetimepicker]=\"datetimePicker\"\n [value]=\"valueDate\"\n (dateChange)=\"onDateChanged($event)\"\n [attr.id]=\"'card-view-dateitem-' + property.key\"\n />\n <mat-icon\n matIconSuffix\n *ngIf=\"showClearAction\"\n class=\"adf-date-reset-icon\"\n (click)=\"onDateClear()\"\n [attr.title]=\"'CORE.METADATA.ACTIONS.CLEAR' | translate\"\n [attr.data-automation-id]=\"'datepicker-date-clear-' + property.key\"\n >\n clear\n </mat-icon>\n <mat-datetimepicker-toggle\n matIconSuffix\n [attr.tabindex]=\"-1\"\n [attr.title]=\"'CORE.METADATA.ACTIONS.EDIT' | translate\"\n [attr.data-automation-id]=\"'datepickertoggle-' + property.key\"\n [for]=\"datetimePicker\"\n />\n\n <mat-datetimepicker\n #datetimePicker\n [type]=\"$any(property).type\"\n [timeInterval]=\"5\"\n [attr.data-automation-id]=\"'datepicker-' + property.key\"\n [startAt]=\"valueDate\"\n />\n </mat-form-field>\n <ng-template #elseEmptyValueBlock>\n {{ property.default | translate }}\n </ng-template>\n\n <div *ngIf=\"property.multivalued\" class=\"adf-property-field adf-dateitem-chip-list-container adf-dateitem-editable\">\n <mat-chip-listbox #chipList class=\"adf-textitem-chip-list\">\n <mat-chip-option\n *ngFor=\"let propertyValue of property.displayValue; let idx = index\"\n [removable]=\"isEditable\"\n (removed)=\"removeValueFromList(idx)\"\n >\n {{ propertyValue }}\n <mat-icon *ngIf=\"isEditable\" matChipRemove>cancel</mat-icon>\n </mat-chip-option>\n </mat-chip-listbox>\n\n <div\n *ngIf=\"isEditable\"\n class=\"adf-property-field adf-dateitem-editable-controls\"\n (click)=\"showDatePicker()\"\n tabindex=\"0\"\n role=\"button\"\n (keyup.enter)=\"showDatePicker()\"\n >\n <input\n class=\"adf-invisible-date-input\"\n [attr.tabIndex]=\"-1\"\n [matDatetimepicker]=\"datetimePicker\"\n (dateChange)=\"addDateToList($event)\"\n [attr.id]=\"'card-view-dateitem-' + property.key\"\n />\n <mat-datetimepicker-toggle\n [attr.tabindex]=\"-1\"\n matSuffix\n [attr.title]=\"'CORE.METADATA.ACTIONS.EDIT' | translate\"\n [attr.data-automation-id]=\"'datepickertoggle-' + property.key\"\n [for]=\"datetimePicker\"\n />\n <mat-datetimepicker\n #datetimePicker\n [type]=\"$any(property).type\"\n [timeInterval]=\"5\"\n [attr.data-automation-id]=\"'datepicker-' + property.key\"\n [startAt]=\"valueDate\"\n />\n </div>\n </div>\n</div>\n", styles: [".adf-card-view-dateitem .adf-property-value{padding-top:6px;padding-bottom:6px;line-height:20px;color:var(--adf-metadata-property-panel-title-color);margin-top:10px}.adf-card-view-dateitem .adf-property-value.adf-property-value-editable{display:flex;align-items:center;border-radius:6px;border-bottom:inherit;margin-bottom:18px}.adf-card-view-dateitem .adf-property-value.adf-property-readonly-value{padding:0 0 0 12px}.adf-card-view-dateitem .adf-invisible-date-input{height:2px;width:0;overflow:hidden;opacity:0;border:none;margin:0;padding:0;float:right}.adf-card-view-dateitem .adf-dateitem-chip-list-container.adf-property-field{margin-bottom:-7px;border-bottom:0;cursor:pointer}.adf-card-view-dateitem .adf-dateitem-editable{cursor:pointer;width:100%}.adf-card-view-dateitem .adf-dateitem-editable-controls{display:flex;align-items:center;justify-content:space-between}.adf-card-view-dateitem .adf-dateitem-editable-controls .mat-icon{opacity:.5}.adf-card-view-dateitem .adf-dateitem-editable-controls .mat-icon:hover{opacity:1}.adf-card-view-dateitem .adf-dateitem-editable-controls mat-datetimepicker-toggle{transform:scale(.8)}.adf-card-view-dateitem .adf-dateitem-editable-controls .adf-datepicker-span-button{flex:1 0 auto;font-size:14px}.adf-card-view-dateitem .adf-dateitem-editable-controls .adf-date-reset-icon{position:relative}\n"] }]
174
+ }], ctorParameters: () => [{ type: i1.DateAdapter }, { type: i2.UserPreferencesService }, { type: i3.ClipboardService }, { type: i4.TranslationService }], propDecorators: { displayEmpty: [{
175
+ type: Input
176
+ }], displayClearAction: [{
177
+ type: Input
178
+ }], datepicker: [{
179
+ type: ViewChild,
180
+ args: ['datetimePicker']
181
+ }] } });
182
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC12aWV3LWRhdGVpdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb3JlL3NyYy9saWIvY2FyZC12aWV3L2NvbXBvbmVudHMvY2FyZC12aWV3LWRhdGVpdGVtL2NhcmQtdmlldy1kYXRlaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2NhcmQtdmlldy9jb21wb25lbnRzL2NhcmQtdmlldy1kYXRlaXRlbS9jYXJkLXZpZXctZGF0ZWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0csT0FBTyxFQUFFLFdBQVcsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZFLE9BQU8sRUFDSCxlQUFlLEVBQ2Ysb0JBQW9CLEVBQ3BCLDBCQUEwQixFQUUxQix1QkFBdUIsRUFDMUIsTUFBTSwwQkFBMEIsQ0FBQztBQUVsQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUNqSCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDOUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDN0YsT0FBTyxFQUFFLG9CQUFvQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDekcs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QUU7cUxBSXpDLFlBQVk7c0JBRFgsS0FBSztnQkFJTixrQkFBa0I7c0JBRGpCLEtBQUs7Z0JBSUMsVUFBVTtzQkFEaEIsU0FBUzt1QkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgRGVzdHJveVJlZiwgaW5qZWN0LCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYXRlQWRhcHRlciwgTUFUX0RBVEVfRk9STUFUUyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBEYXRldGltZUFkYXB0ZXIsXG4gICAgTUFUX0RBVEVUSU1FX0ZPUk1BVFMsXG4gICAgTWF0RGF0ZXRpbWVwaWNrZXJDb21wb25lbnQsXG4gICAgTWF0RGF0ZXRpbWVwaWNrZXJJbnB1dEV2ZW50LFxuICAgIE1hdERhdGV0aW1lcGlja2VyTW9kdWxlXG59IGZyb20gJ0BtYXQtZGF0ZXRpbWVwaWNrZXIvY29yZSc7XG5pbXBvcnQgeyBDYXJkVmlld0RhdGVJdGVtTW9kZWwgfSBmcm9tICcuLi8uLi9tb2RlbHMvY2FyZC12aWV3LWRhdGVpdGVtLm1vZGVsJztcbmltcG9ydCB7IFVzZXJQcmVmZXJlbmNlc1NlcnZpY2UsIFVzZXJQcmVmZXJlbmNlVmFsdWVzIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3NlcnZpY2VzL3VzZXItcHJlZmVyZW5jZXMuc2VydmljZSc7XG5pbXBvcnQgeyBCYXNlQ2FyZFZpZXcgfSBmcm9tICcuLi9iYXNlLWNhcmQtdmlldyc7XG5pbXBvcnQgeyBDbGlwYm9hcmRTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vY2xpcGJvYXJkL2NsaXBib2FyZC5zZXJ2aWNlJztcbmltcG9ydCB7IFRyYW5zbGF0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3RyYW5zbGF0aW9uL3RyYW5zbGF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQURGX0RBVEVfRk9STUFUUywgQWRmRGF0ZUZuc0FkYXB0ZXIgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vdXRpbHMvZGF0ZS1mbnMtYWRhcHRlcic7XG5pbXBvcnQgeyBBREZfREFURVRJTUVfRk9STUFUUywgQWRmRGF0ZVRpbWVGbnNBZGFwdGVyIH0gZnJvbSAnLi4vLi4vLi4vY29tbW9uL3V0aWxzL2RhdGV0aW1lLWZucy1hZGFwdGVyJztcbmltcG9ydCB7IGlzVmFsaWQgfSBmcm9tICdkYXRlLWZucyc7XG5pbXBvcnQgeyBEYXRlRm5zVXRpbHMgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vdXRpbHMvZGF0ZS1mbnMtdXRpbHMnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7IE1hdENoaXBzTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hpcHMnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXREYXRlcGlja2VyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XG5pbXBvcnQgeyBNYXRTbmFja0Jhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBNQVRfREFURV9GT1JNQVRTLCB1c2VWYWx1ZTogQURGX0RBVEVfRk9STUFUUyB9LFxuICAgICAgICB7IHByb3ZpZGU6IE1BVF9EQVRFVElNRV9GT1JNQVRTLCB1c2VWYWx1ZTogQURGX0RBVEVUSU1FX0ZPUk1BVFMgfSxcbiAgICAgICAgeyBwcm92aWRlOiBEYXRlQWRhcHRlciwgdXNlQ2xhc3M6IEFkZkRhdGVGbnNBZGFwdGVyIH0sXG4gICAgICAgIHsgcHJvdmlkZTogRGF0ZXRpbWVBZGFwdGVyLCB1c2VDbGFzczogQWRmRGF0ZVRpbWVGbnNBZGFwdGVyIH1cbiAgICBdLFxuICAgIHNlbGVjdG9yOiAnYWRmLWNhcmQtdmlldy1kYXRlaXRlbScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgVHJhbnNsYXRlUGlwZSxcbiAgICAgICAgTWF0SWNvbk1vZHVsZSxcbiAgICAgICAgTWF0RGF0ZXRpbWVwaWNrZXJNb2R1bGUsXG4gICAgICAgIE1hdENoaXBzTW9kdWxlLFxuICAgICAgICBNYXRJbnB1dE1vZHVsZSxcbiAgICAgICAgTWF0Rm9ybUZpZWxkTW9kdWxlLFxuICAgICAgICBNYXREYXRlcGlja2VyTW9kdWxlLFxuICAgICAgICBNYXRTbmFja0Jhck1vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZVxuICAgIF0sXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NhcmQtdmlldy1kYXRlaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2FyZC12aWV3LWRhdGVpdGVtLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBob3N0OiB7IGNsYXNzOiAnYWRmLWNhcmQtdmlldy1kYXRlaXRlbScgfVxufSlcbmV4cG9ydCBjbGFzcyBDYXJkVmlld0RhdGVJdGVtQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNhcmRWaWV3PENhcmRWaWV3RGF0ZUl0ZW1Nb2RlbD4gaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpXG4gICAgZGlzcGxheUVtcHR5ID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgZGlzcGxheUNsZWFyQWN0aW9uID0gdHJ1ZTtcblxuICAgIEBWaWV3Q2hpbGQoJ2RhdGV0aW1lUGlja2VyJylcbiAgICBwdWJsaWMgZGF0ZXBpY2tlcjogTWF0RGF0ZXRpbWVwaWNrZXJDb21wb25lbnQ8YW55PjtcblxuICAgIHZhbHVlRGF0ZTogRGF0ZTtcblxuICAgIGNhcmRWaWV3RGF0ZVRpbWVDb250cm9sOiBGb3JtQ29udHJvbDxEYXRlPiA9IG5ldyBGb3JtQ29udHJvbDxEYXRlPihudWxsKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGRhdGVBZGFwdGVyOiBEYXRlQWRhcHRlcjxEYXRlPixcbiAgICAgICAgcHJpdmF0ZSB1c2VyUHJlZmVyZW5jZXNTZXJ2aWNlOiBVc2VyUHJlZmVyZW5jZXNTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGNsaXBib2FyZFNlcnZpY2U6IENsaXBib2FyZFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogVHJhbnNsYXRpb25TZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMudXNlclByZWZlcmVuY2VzU2VydmljZVxuICAgICAgICAgICAgLnNlbGVjdChVc2VyUHJlZmVyZW5jZVZhbHVlcy5Mb2NhbGUpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGxvY2FsZSkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMucHJvcGVydHkubG9jYWxlID0gbG9jYWxlO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgKHRoaXMuZGF0ZUFkYXB0ZXIgYXMgQWRmRGF0ZUZuc0FkYXB0ZXIpLmRpc3BsYXlGb3JtYXQgPSAnTU1NIEREJztcblxuICAgICAgICBpZiAodGhpcy5wcm9wZXJ0eS5tdWx0aXZhbHVlZCkge1xuICAgICAgICAgICAgdGhpcy5pbml0TXVsdGl2YWx1ZWRQcm9wZXJ0eSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5pbml0U2luZ2xlVmFsdWVQcm9wZXJ0eSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IHNob3dQcm9wZXJ0eSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzcGxheUVtcHR5IHx8ICF0aGlzLnByb3BlcnR5LmlzRW1wdHkoKTtcbiAgICB9XG5cbiAgICBnZXQgc2hvd0NsZWFyQWN0aW9uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5kaXNwbGF5Q2xlYXJBY3Rpb24gJiYgKCF0aGlzLnByb3BlcnR5LmlzRW1wdHkoKSB8fCAhIXRoaXMucHJvcGVydHkuZGVmYXVsdCk7XG4gICAgfVxuXG4gICAgc2hvd0RhdGVQaWNrZXIoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGF0ZXBpY2tlci5vcGVuKCk7XG4gICAgfVxuXG4gICAgb25EYXRlQ2hhbmdlZChldmVudDogTWF0RGF0ZXRpbWVwaWNrZXJJbnB1dEV2ZW50PERhdGU+KSB7XG4gICAgICAgIGlmIChldmVudC52YWx1ZSkge1xuICAgICAgICAgICAgaWYgKGlzVmFsaWQoZXZlbnQudmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5wcm9wZXJ0eS52YWx1ZSA9IG5ldyBEYXRlKGV2ZW50LnZhbHVlKTtcbiAgICAgICAgICAgICAgICB0aGlzLnZhbHVlRGF0ZSA9IG5ldyBEYXRlKGV2ZW50LnZhbHVlKTtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5wcm9wZXJ0eS50eXBlID09PSAnZGF0ZScpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5wcm9wZXJ0eS52YWx1ZSA9IERhdGVGbnNVdGlscy5mb3JjZVV0YyhldmVudC52YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudmFsdWVEYXRlID0gRGF0ZUZuc1V0aWxzLmZvcmNlTG9jYWwoZXZlbnQudmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25EYXRlQ2xlYXIoKSB7XG4gICAgICAgIHRoaXMudmFsdWVEYXRlID0gbnVsbDtcbiAgICAgICAgdGhpcy5jYXJkVmlld1VwZGF0ZVNlcnZpY2UudXBkYXRlKHsgLi4udGhpcy5wcm9wZXJ0eSB9IGFzIENhcmRWaWV3RGF0ZUl0ZW1Nb2RlbCwgbnVsbCk7XG4gICAgICAgIHRoaXMucHJvcGVydHkudmFsdWUgPSBudWxsO1xuICAgICAgICB0aGlzLnByb3BlcnR5LmRlZmF1bHQgPSBudWxsO1xuICAgIH1cblxuICAgIGNvcHlUb0NsaXBib2FyZCh2YWx1ZVRvQ29weTogc3RyaW5nIHwgc3RyaW5nW10pIHtcbiAgICAgICAgaWYgKHR5cGVvZiB2YWx1ZVRvQ29weSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgIGNvbnN0IGNsaXBib2FyZE1lc3NhZ2UgPSB0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnQ09SRS5NRVRBREFUQS5BQ0NFU1NJQklMSVRZLkNPUFlfVE9fQ0xJUEJPQVJEX01FU1NBR0UnKTtcbiAgICAgICAgICAgIHRoaXMuY2xpcGJvYXJkU2VydmljZS5jb3B5Q29udGVudFRvQ2xpcGJvYXJkKHZhbHVlVG9Db3B5LCBjbGlwYm9hcmRNZXNzYWdlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFkZERhdGVUb0xpc3QoZXZlbnQ6IE1hdERhdGV0aW1lcGlja2VySW5wdXRFdmVudDxEYXRlPikge1xuICAgICAgICBpZiAoZXZlbnQudmFsdWUpIHtcbiAgICAgICAgICAgIGlmIChpc1ZhbGlkKGV2ZW50LnZhbHVlKSAmJiB0aGlzLnByb3BlcnR5Lm11bHRpdmFsdWVkICYmIEFycmF5LmlzQXJyYXkodGhpcy5wcm9wZXJ0eS52YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICBsZXQgbG9jYWxEYXRlID0gbmV3IERhdGUoZXZlbnQudmFsdWUpO1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLnByb3BlcnR5LnR5cGUgPT09ICdkYXRlJykge1xuICAgICAgICAgICAgICAgICAgICBsb2NhbERhdGUgPSBEYXRlRm5zVXRpbHMuZm9yY2VVdGMoZXZlbnQudmFsdWUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB0aGlzLnByb3BlcnR5LnZhbHVlLnB1c2gobG9jYWxEYXRlKTtcbiAgICAgICAgICAgICAgICB0aGlzLnVwZGF0ZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmVtb3ZlVmFsdWVGcm9tTGlzdChpdGVtSW5kZXg6IG51bWJlcikge1xuICAgICAgICBpZiAodGhpcy5wcm9wZXJ0eS5tdWx0aXZhbHVlZCAmJiBBcnJheS5pc0FycmF5KHRoaXMucHJvcGVydHkudmFsdWUpKSB7XG4gICAgICAgICAgICB0aGlzLnByb3BlcnR5LnZhbHVlLnNwbGljZShpdGVtSW5kZXgsIDEpO1xuICAgICAgICAgICAgdGhpcy51cGRhdGUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHVwZGF0ZSgpIHtcbiAgICAgICAgdGhpcy5jYXJkVmlld1VwZGF0ZVNlcnZpY2UudXBkYXRlKHsgLi4udGhpcy5wcm9wZXJ0eSB9IGFzIENhcmRWaWV3RGF0ZUl0ZW1Nb2RlbCwgdGhpcy5wcm9wZXJ0eS52YWx1ZSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBpbml0U2luZ2xlVmFsdWVQcm9wZXJ0eSgpIHtcbiAgICAgICAgaWYgKHRoaXMucHJvcGVydHkudmFsdWUgJiYgIUFycmF5LmlzQXJyYXkodGhpcy5wcm9wZXJ0eS52YWx1ZSkpIHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSh0aGlzLnByb3BlcnR5LnZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMucHJvcGVydHkudmFsdWUgPSBkYXRlO1xuICAgICAgICAgICAgdGhpcy52YWx1ZURhdGUgPSB0aGlzLnByb3BlcnR5LnR5cGUgPT09ICdkYXRlJyA/IERhdGVGbnNVdGlscy5mb3JjZUxvY2FsKGRhdGUpIDogZGF0ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgaW5pdE11bHRpdmFsdWVkUHJvcGVydHkoKSB7XG4gICAgICAgIGlmICghdGhpcy5wcm9wZXJ0eS52YWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5wcm9wZXJ0eS52YWx1ZSA9IFtdO1xuICAgICAgICB9XG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KHRoaXMucHJvcGVydHkudmFsdWUpICYmIHRoaXMucHJvcGVydHkudmFsdWUubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgdGhpcy5wcm9wZXJ0eS52YWx1ZSA9IHRoaXMucHJvcGVydHkudmFsdWUubWFwKChkYXRlOiBEYXRlIHwgc3RyaW5nKSA9PiBuZXcgRGF0ZShkYXRlKSk7XG4gICAgICAgICAgICB0aGlzLnZhbHVlRGF0ZSA9IHRoaXMucHJvcGVydHkudHlwZSA9PT0gJ2RhdGUnID8gRGF0ZUZuc1V0aWxzLmZvcmNlTG9jYWwodGhpcy5wcm9wZXJ0eS52YWx1ZVswXSkgOiB0aGlzLnByb3BlcnR5LnZhbHVlWzBdO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPG1hdC1sYWJlbFxuICAgIGNsYXNzPVwiYWRmLXByb3BlcnR5LWxhYmVsXCJcbiAgICBbYXR0ci5kYXRhLWF1dG9tYXRpb24taWRdPVwiJ2NhcmQtZGF0ZWl0ZW0tbGFiZWwtJyArIHByb3BlcnR5LmtleVwiXG4gICAgKm5nSWY9XCJzaG93UHJvcGVydHkgJiYgIWlzRWRpdGFibGVcIlxuICAgIFthdHRyLmZvcl09XCInY2FyZC12aWV3LWRhdGVpdGVtLScgKyBwcm9wZXJ0eS5rZXlcIlxuICAgIFtuZ0NsYXNzXT1cInsgJ2FkZi1wcm9wZXJ0eS1yZWFkb25seS12YWx1ZSc6IGlzUmVhZG9ubHlQcm9wZXJ0eSwgJ2FkZi1wcm9wZXJ0eS12YWx1ZS1lZGl0YWJsZSc6IGVkaXRhYmxlIH1cIlxuICAgIFt0aXRsZV09XCInQ09SRS5NRVRBREFUQS5BQ1RJT05TLkNPUFlfVE9fQ0xJUEJPQVJEJyB8IHRyYW5zbGF0ZVwiXG4+XG4gICAge3sgcHJvcGVydHkubGFiZWwgfCB0cmFuc2xhdGUgfX1cbjwvbWF0LWxhYmVsPlxuXG48ZGl2IGNsYXNzPVwiYWRmLXByb3BlcnR5LXZhbHVlXCIgW25nQ2xhc3NdPVwieyAnYWRmLXByb3BlcnR5LXZhbHVlLWVkaXRhYmxlJzogZWRpdGFibGUsICdhZGYtcHJvcGVydHktcmVhZG9ubHktdmFsdWUnOiBpc1JlYWRvbmx5UHJvcGVydHkgfVwiPlxuICAgIDxzcGFuICpuZ0lmPVwiIWlzRWRpdGFibGUgJiYgIXByb3BlcnR5Lm11bHRpdmFsdWVkXCIgW2F0dHIuZGF0YS1hdXRvbWF0aW9uLWlkXT1cIidjYXJkLScgKyBwcm9wZXJ0eS50eXBlICsgJy12YWx1ZS0nICsgcHJvcGVydHkua2V5XCI+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgICAqbmdJZj1cInNob3dQcm9wZXJ0eVwiXG4gICAgICAgICAgICBbYXR0ci5kYXRhLWF1dG9tYXRpb24taWRdPVwiJ2NhcmQtZGF0ZWl0ZW0tJyArIHByb3BlcnR5LmtleVwiXG4gICAgICAgICAgICAoZGJsY2xpY2spPVwiY29weVRvQ2xpcGJvYXJkKHByb3BlcnR5LmRpc3BsYXlWYWx1ZSlcIlxuICAgICAgICAgICAgW3RpdGxlXT1cIidDT1JFLk1FVEFEQVRBLkFDVElPTlMuQ09QWV9UT19DTElQQk9BUkQnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgID57eyBwcm9wZXJ0eS5kaXNwbGF5VmFsdWUgfX08L3NwYW5cbiAgICAgICAgPlxuICAgIDwvc3Bhbj5cbiAgICA8bWF0LWZvcm0tZmllbGQgKm5nSWY9XCJpc0VkaXRhYmxlICYmICFwcm9wZXJ0eS5tdWx0aXZhbHVlZFwiIGNsYXNzPVwiYWRmLWRhdGVpdGVtLWVkaXRhYmxlIGh4cC1pbnB1dFwiPlxuICAgICAgICA8bWF0LWxhYmVsXG4gICAgICAgICAgICBjbGFzcz1cImFkZi1wcm9wZXJ0eS1sYWJlbFwiXG4gICAgICAgICAgICBbYXR0ci5kYXRhLWF1dG9tYXRpb24taWRdPVwiJ2NhcmQtZGF0ZWl0ZW0tbGFiZWwtJyArIHByb3BlcnR5LmtleVwiXG4gICAgICAgICAgICAqbmdJZj1cImlzRWRpdGFibGVcIlxuICAgICAgICAgICAgW2F0dHIuZm9yXT1cIidjYXJkLXZpZXctZGF0ZWl0ZW0tJyArIHByb3BlcnR5LmtleVwiXG4gICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdhZGYtcHJvcGVydHktcmVhZG9ubHktdmFsdWUnOiBpc1JlYWRvbmx5UHJvcGVydHksICdhZGYtcHJvcGVydHktdmFsdWUtZWRpdGFibGUnOiBlZGl0YWJsZSB9XCJcbiAgICAgICAgICAgIFt0aXRsZV09XCInQ09SRS5NRVRBREFUQS5BQ1RJT05TLkNPUFlfVE9fQ0xJUEJPQVJEJyB8IHRyYW5zbGF0ZVwiXG4gICAgICAgID5cbiAgICAgICAgICAgIHt7IHByb3BlcnR5LmxhYmVsIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvbWF0LWxhYmVsPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWRmLWRhdGVpdGVtLWVkaXRhYmxlLWNvbnRyb2xzXCI+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYWRmLWRhdGVwaWNrZXItc3Bhbi1idXR0b25cIlxuICAgICAgICAgICAgICAgIFthdHRyLmRhdGEtYXV0b21hdGlvbi1pZF09XCInZGF0ZXBpY2tlci1sYWJlbC10b2dnbGUtJyArIHByb3BlcnR5LmtleVwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cInNob3dEYXRlUGlja2VyKClcIlxuICAgICAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgKGtleXVwLmVudGVyKT1cInNob3dEYXRlUGlja2VyKClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxzcGFuICpuZ0lmPVwic2hvd1Byb3BlcnR5OyBlbHNlIGVsc2VFbXB0eVZhbHVlQmxvY2tcIiBbYXR0ci5kYXRhLWF1dG9tYXRpb24taWRdPVwiJ2NhcmQtJyArIHByb3BlcnR5LnR5cGUgKyAnLXZhbHVlLScgKyBwcm9wZXJ0eS5rZXlcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgcHJvcGVydHkuZGlzcGxheVZhbHVlIH19PC9zcGFuXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgICAgY2xhc3M9XCJhZGYtaW52aXNpYmxlLWRhdGUtaW5wdXRcIlxuICAgICAgICAgICAgW2F0dHIudGFiSW5kZXhdPVwiLTFcIlxuICAgICAgICAgICAgW21hdERhdGV0aW1lcGlja2VyXT1cImRhdGV0aW1lUGlja2VyXCJcbiAgICAgICAgICAgIFt2YWx1ZV09XCJ2YWx1ZURhdGVcIlxuICAgICAgICAgICAgKGRhdGVDaGFuZ2UpPVwib25EYXRlQ2hhbmdlZCgkZXZlbnQpXCJcbiAgICAgICAgICAgIFthdHRyLmlkXT1cIidjYXJkLXZpZXctZGF0ZWl0ZW0tJyArIHByb3BlcnR5LmtleVwiXG4gICAgICAgIC8+XG4gICAgICAgICAgICA8bWF0LWljb25cbiAgICAgICAgICAgICAgICBtYXRJY29uU3VmZml4XG4gICAgICAgICAgICAgICAgKm5nSWY9XCJzaG93Q2xlYXJBY3Rpb25cIlxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYWRmLWRhdGUtcmVzZXQtaWNvblwiXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9uRGF0ZUNsZWFyKClcIlxuICAgICAgICAgICAgICAgIFthdHRyLnRpdGxlXT1cIidDT1JFLk1FVEFEQVRBLkFDVElPTlMuQ0xFQVInIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLWF1dG9tYXRpb24taWRdPVwiJ2RhdGVwaWNrZXItZGF0ZS1jbGVhci0nICsgcHJvcGVydHkua2V5XCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICBjbGVhclxuICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgIDxtYXQtZGF0ZXRpbWVwaWNrZXItdG9nZ2xlXG4gICAgICAgICAgICAgICAgbWF0SWNvblN1ZmZpeFxuICAgICAgICAgICAgICAgIFthdHRyLnRhYmluZGV4XT1cIi0xXCJcbiAgICAgICAgICAgICAgICBbYXR0ci50aXRsZV09XCInQ09SRS5NRVRBREFUQS5BQ1RJT05TLkVESVQnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLWF1dG9tYXRpb24taWRdPVwiJ2RhdGVwaWNrZXJ0b2dnbGUtJyArIHByb3BlcnR5LmtleVwiXG4gICAgICAgICAgICAgICAgW2Zvcl09XCJkYXRldGltZVBpY2tlclwiXG4gICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICA8bWF0LWRhdGV0aW1lcGlja2VyXG4gICAgICAgICAgICAgICAgI2RhdGV0aW1lUGlja2VyXG4gICAgICAgICAgICAgICAgW3R5cGVdPVwiJGFueShwcm9wZXJ0eSkudHlwZVwiXG4gICAgICAgICAgICAgICAgW3RpbWVJbnRlcnZhbF09XCI1XCJcbiAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLWF1dG9tYXRpb24taWRdPVwiJ2RhdGVwaWNrZXItJyArIHByb3BlcnR5LmtleVwiXG4gICAgICAgICAgICAgICAgW3N0YXJ0QXRdPVwidmFsdWVEYXRlXCJcbiAgICAgICAgICAgIC8+XG4gICAgPC9tYXQtZm9ybS1maWVsZD5cbiAgICA8bmctdGVtcGxhdGUgI2Vsc2VFbXB0eVZhbHVlQmxvY2s+XG4gICAgICAgIHt7IHByb3BlcnR5LmRlZmF1bHQgfCB0cmFuc2xhdGUgfX1cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPGRpdiAqbmdJZj1cInByb3BlcnR5Lm11bHRpdmFsdWVkXCIgY2xhc3M9XCJhZGYtcHJvcGVydHktZmllbGQgYWRmLWRhdGVpdGVtLWNoaXAtbGlzdC1jb250YWluZXIgYWRmLWRhdGVpdGVtLWVkaXRhYmxlXCI+XG4gICAgICAgIDxtYXQtY2hpcC1saXN0Ym94ICNjaGlwTGlzdCBjbGFzcz1cImFkZi10ZXh0aXRlbS1jaGlwLWxpc3RcIj5cbiAgICAgICAgICAgIDxtYXQtY2hpcC1vcHRpb25cbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgcHJvcGVydHlWYWx1ZSBvZiBwcm9wZXJ0eS5kaXNwbGF5VmFsdWU7IGxldCBpZHggPSBpbmRleFwiXG4gICAgICAgICAgICAgICAgW3JlbW92YWJsZV09XCJpc0VkaXRhYmxlXCJcbiAgICAgICAgICAgICAgICAocmVtb3ZlZCk9XCJyZW1vdmVWYWx1ZUZyb21MaXN0KGlkeClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIHt7IHByb3BlcnR5VmFsdWUgfX1cbiAgICAgICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJpc0VkaXRhYmxlXCIgbWF0Q2hpcFJlbW92ZT5jYW5jZWw8L21hdC1pY29uPlxuICAgICAgICAgICAgPC9tYXQtY2hpcC1vcHRpb24+XG4gICAgICAgIDwvbWF0LWNoaXAtbGlzdGJveD5cblxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdJZj1cImlzRWRpdGFibGVcIlxuICAgICAgICAgICAgY2xhc3M9XCJhZGYtcHJvcGVydHktZmllbGQgYWRmLWRhdGVpdGVtLWVkaXRhYmxlLWNvbnRyb2xzXCJcbiAgICAgICAgICAgIChjbGljayk9XCJzaG93RGF0ZVBpY2tlcigpXCJcbiAgICAgICAgICAgIHRhYmluZGV4PVwiMFwiXG4gICAgICAgICAgICByb2xlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgIChrZXl1cC5lbnRlcik9XCJzaG93RGF0ZVBpY2tlcigpXCJcbiAgICAgICAgPlxuICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJhZGYtaW52aXNpYmxlLWRhdGUtaW5wdXRcIlxuICAgICAgICAgICAgICAgIFthdHRyLnRhYkluZGV4XT1cIi0xXCJcbiAgICAgICAgICAgICAgICBbbWF0RGF0ZXRpbWVwaWNrZXJdPVwiZGF0ZXRpbWVQaWNrZXJcIlxuICAgICAgICAgICAgICAgIChkYXRlQ2hhbmdlKT1cImFkZERhdGVUb0xpc3QoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiJ2NhcmQtdmlldy1kYXRlaXRlbS0nICsgcHJvcGVydHkua2V5XCJcbiAgICAgICAgICAgIC8+XG4gICAgICAgICAgICA8bWF0LWRhdGV0aW1lcGlja2VyLXRvZ2dsZVxuICAgICAgICAgICAgICAgIFthdHRyLnRhYmluZGV4XT1cIi0xXCJcbiAgICAgICAgICAgICAgICBtYXRTdWZmaXhcbiAgICAgICAgICAgICAgICBbYXR0ci50aXRsZV09XCInQ09SRS5NRVRBREFUQS5BQ1RJT05TLkVESVQnIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLWF1dG9tYXRpb24taWRdPVwiJ2RhdGVwaWNrZXJ0b2dnbGUtJyArIHByb3BlcnR5LmtleVwiXG4gICAgICAgICAgICAgICAgW2Zvcl09XCJkYXRldGltZVBpY2tlclwiXG4gICAgICAgICAgICAvPlxuICAgICAgICAgICAgPG1hdC1kYXRldGltZXBpY2tlclxuICAgICAgICAgICAgICAgICNkYXRldGltZVBpY2tlclxuICAgICAgICAgICAgICAgIFt0eXBlXT1cIiRhbnkocHJvcGVydHkpLnR5cGVcIlxuICAgICAgICAgICAgICAgIFt0aW1lSW50ZXJ2YWxdPVwiNVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuZGF0YS1hdXRvbWF0aW9uLWlkXT1cIidkYXRlcGlja2VyLScgKyBwcm9wZXJ0eS5rZXlcIlxuICAgICAgICAgICAgICAgIFtzdGFydEF0XT1cInZhbHVlRGF0ZVwiXG4gICAgICAgICAgICAvPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -0,0 +1,108 @@
1
+ /*!
2
+ * @license
3
+ * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { Component, Input, ViewChild, ViewContainerRef } from '@angular/core';
18
+ import { CardItemTypeService } from '../../services/card-item-types.service';
19
+ import { DEFAULT_SEPARATOR } from '../card-view-textitem/card-view-textitem.component';
20
+ import * as i0 from "@angular/core";
21
+ import * as i1 from "../../services/card-item-types.service";
22
+ export class CardViewItemDispatcherComponent {
23
+ constructor(cardItemTypeService) {
24
+ this.cardItemTypeService = cardItemTypeService;
25
+ this.displayEmpty = true;
26
+ this.displayNoneOption = true;
27
+ this.displayClearAction = true;
28
+ this.copyToClipboardAction = true;
29
+ this.useChipsForMultiValueProperty = true;
30
+ this.multiValueSeparator = DEFAULT_SEPARATOR;
31
+ this.displayLabelForChips = false;
32
+ this.loaded = false;
33
+ this.componentReference = null;
34
+ const dynamicLifeCycleMethods = [
35
+ 'ngOnInit',
36
+ 'ngDoCheck',
37
+ 'ngAfterContentInit',
38
+ 'ngAfterContentChecked',
39
+ 'ngAfterViewInit',
40
+ 'ngAfterViewChecked',
41
+ 'ngOnDestroy'
42
+ ];
43
+ dynamicLifeCycleMethods.forEach((method) => {
44
+ this[method] = this.proxy.bind(this, method);
45
+ });
46
+ }
47
+ ngOnChanges(changes) {
48
+ if (!this.loaded) {
49
+ this.loadComponent();
50
+ this.loaded = true;
51
+ }
52
+ Object.entries(changes).forEach(([changeName, change]) => {
53
+ this.componentReference.instance[changeName] = change.currentValue;
54
+ });
55
+ this.proxy('ngOnChanges', changes);
56
+ }
57
+ loadComponent() {
58
+ const factoryClass = this.cardItemTypeService.resolveComponentType(this.property);
59
+ this.componentReference = this.content.createComponent(factoryClass);
60
+ this.componentReference.instance.editable = this.editable;
61
+ this.componentReference.instance.property = this.property;
62
+ this.componentReference.instance.displayEmpty = this.displayEmpty;
63
+ this.componentReference.instance.displayNoneOption = this.displayNoneOption;
64
+ this.componentReference.instance.displayClearAction = this.displayClearAction;
65
+ this.componentReference.instance.copyToClipboardAction = this.copyToClipboardAction;
66
+ this.componentReference.instance.useChipsForMultiValueProperty = this.useChipsForMultiValueProperty;
67
+ this.componentReference.instance.multiValueSeparator = this.multiValueSeparator;
68
+ this.componentReference.instance.displayLabelForChips = this.displayLabelForChips;
69
+ }
70
+ proxy(methodName, ...args) {
71
+ if (this.componentReference.instance[methodName]) {
72
+ // eslint-disable-next-line prefer-spread
73
+ this.componentReference.instance[methodName].apply(this.componentReference.instance, args);
74
+ }
75
+ }
76
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CardViewItemDispatcherComponent, deps: [{ token: i1.CardItemTypeService }], target: i0.ɵɵFactoryTarget.Component }); }
77
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CardViewItemDispatcherComponent, isStandalone: true, selector: "adf-card-view-item-dispatcher", inputs: { property: "property", editable: "editable", displayEmpty: "displayEmpty", displayNoneOption: "displayNoneOption", displayClearAction: "displayClearAction", copyToClipboardAction: "copyToClipboardAction", useChipsForMultiValueProperty: "useChipsForMultiValueProperty", multiValueSeparator: "multiValueSeparator", displayLabelForChips: "displayLabelForChips" }, viewQueries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true, read: ViewContainerRef, static: true }], usesOnChanges: true, ngImport: i0, template: '<ng-template #content />', isInline: true }); }
78
+ }
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CardViewItemDispatcherComponent, decorators: [{
80
+ type: Component,
81
+ args: [{
82
+ selector: 'adf-card-view-item-dispatcher',
83
+ standalone: true,
84
+ template: '<ng-template #content />'
85
+ }]
86
+ }], ctorParameters: () => [{ type: i1.CardItemTypeService }], propDecorators: { property: [{
87
+ type: Input
88
+ }], editable: [{
89
+ type: Input
90
+ }], displayEmpty: [{
91
+ type: Input
92
+ }], displayNoneOption: [{
93
+ type: Input
94
+ }], displayClearAction: [{
95
+ type: Input
96
+ }], copyToClipboardAction: [{
97
+ type: Input
98
+ }], useChipsForMultiValueProperty: [{
99
+ type: Input
100
+ }], multiValueSeparator: [{
101
+ type: Input
102
+ }], displayLabelForChips: [{
103
+ type: Input
104
+ }], content: [{
105
+ type: ViewChild,
106
+ args: ['content', { read: ViewContainerRef, static: true }]
107
+ }] } });
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC12aWV3LWl0ZW0tZGlzcGF0Y2hlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2NhcmQtdmlldy9jb21wb25lbnRzL2NhcmQtdmlldy1pdGVtLWRpc3BhdGNoZXIvY2FyZC12aWV3LWl0ZW0tZGlzcGF0Y2hlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQTBDLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV0SCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM3RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQzs7O0FBT3ZGLE1BQU0sT0FBTywrQkFBK0I7SUFxQ3hDLFlBQW9CLG1CQUF3QztRQUF4Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBN0I1RCxpQkFBWSxHQUFZLElBQUksQ0FBQztRQUc3QixzQkFBaUIsR0FBWSxJQUFJLENBQUM7UUFHbEMsdUJBQWtCLEdBQVksSUFBSSxDQUFDO1FBR25DLDBCQUFxQixHQUFZLElBQUksQ0FBQztRQUd0QyxrQ0FBNkIsR0FBWSxJQUFJLENBQUM7UUFHOUMsd0JBQW1CLEdBQVcsaUJBQWlCLENBQUM7UUFHaEQseUJBQW9CLEdBQVksS0FBSyxDQUFDO1FBRTlCLFdBQU0sR0FBWSxLQUFLLENBQUM7UUFDeEIsdUJBQWtCLEdBQVEsSUFBSSxDQUFDO1FBU25DLE1BQU0sdUJBQXVCLEdBQUc7WUFDNUIsVUFBVTtZQUNWLFdBQVc7WUFDWCxvQkFBb0I7WUFDcEIsdUJBQXVCO1lBQ3ZCLGlCQUFpQjtZQUNqQixvQkFBb0I7WUFDcEIsYUFBYTtTQUNoQixDQUFDO1FBRUYsdUJBQXVCLENBQUMsT0FBTyxDQUFD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RFgsS0FBSztnQkFJTixpQkFBaUI7c0JBRGhCLEtBQUs7Z0JBSU4sa0JBQWtCO3NCQURqQixLQUFLO2dCQUlOLHFCQUFxQjtzQkFEcEIsS0FBSztnQkFJTiw2QkFBNkI7c0JBRDVCLEtBQUs7Z0JBSU4sbUJBQW1CO3NCQURsQixLQUFLO2dCQUlOLG9CQUFvQjtzQkFEbkIsS0FBSztnQkFVTixPQUFPO3NCQUROLFNBQVM7dUJBQUMsU0FBUyxFQUFFLEVBQUUsSUFBSSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI1IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICovXG5cbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlLCBTaW1wbGVDaGFuZ2VzLCBWaWV3Q2hpbGQsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhcmRWaWV3SXRlbSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvY2FyZC12aWV3LWl0ZW0uaW50ZXJmYWNlJztcbmltcG9ydCB7IENhcmRJdGVtVHlwZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jYXJkLWl0ZW0tdHlwZXMuc2VydmljZSc7XG5pbXBvcnQgeyBERUZBVUxUX1NFUEFSQVRPUiB9IGZyb20gJy4uL2NhcmQtdmlldy10ZXh0aXRlbS9jYXJkLXZpZXctdGV4dGl0ZW0uY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhZGYtY2FyZC12aWV3LWl0ZW0tZGlzcGF0Y2hlcicsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICB0ZW1wbGF0ZTogJzxuZy10ZW1wbGF0ZSAjY29udGVudCAvPidcbn0pXG5leHBvcnQgY2xhc3MgQ2FyZFZpZXdJdGVtRGlzcGF0Y2hlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gICAgQElucHV0KClcbiAgICBwcm9wZXJ0eTogQ2FyZFZpZXdJdGVtO1xuXG4gICAgQElucHV0KClcbiAgICBlZGl0YWJsZTogYm9vbGVhbjtcblxuICAgIEBJbnB1dCgpXG4gICAgZGlzcGxheUVtcHR5OiBib29sZWFuID0gdHJ1ZTtcblxuICAgIEBJbnB1dCgpXG4gICAgZGlzcGxheU5vbmVPcHRpb246IGJvb2xlYW4gPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBkaXNwbGF5Q2xlYXJBY3Rpb246IGJvb2xlYW4gPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBjb3B5VG9DbGlwYm9hcmRBY3Rpb246IGJvb2xlYW4gPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICB1c2VDaGlwc0Zvck11bHRpVmFsdWVQcm9wZXJ0eTogYm9vbGVhbiA9IHRydWU7XG5cbiAgICBASW5wdXQoKVxuICAgIG11bHRpVmFsdWVTZXBhcmF0b3I6IHN0cmluZyA9IERFRkFVTFRfU0VQQVJBVE9SO1xuXG4gICAgQElucHV0KClcbiAgICBkaXNwbGF5TGFiZWxGb3JDaGlwczogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgcHJpdmF0ZSBsb2FkZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBwcml2YXRlIGNvbXBvbmVudFJlZmVyZW5jZTogYW55ID0gbnVsbDtcblxuICAgIHB1YmxpYyBuZ09uSW5pdDtcbiAgICBwdWJsaWMgbmdEb0NoZWNrO1xuXG4gICAgQFZpZXdDaGlsZCgnY29udGVudCcsIHsgcmVhZDogVmlld0NvbnRhaW5lclJlZiwgc3RhdGljOiB0cnVlIH0pXG4gICAgY29udGVudCE6IFZpZXdDb250YWluZXJSZWY7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNhcmRJdGVtVHlwZVNlcnZpY2U6IENhcmRJdGVtVHlwZVNlcnZpY2UpIHtcbiAgICAgICAgY29uc3QgZHluYW1pY0xpZmVDeWNsZU1ldGhvZHMgPSBbXG4gICAgICAgICAgICAnbmdPbkluaXQnLFxuICAgICAgICAgICAgJ25nRG9DaGVjaycsXG4gICAgICAgICAgICAnbmdBZnRlckNvbnRlbnRJbml0JyxcbiAgICAgICAgICAgICduZ0FmdGVyQ29udGVudENoZWNrZWQnLFxuICAgICAgICAgICAgJ25nQWZ0ZXJWaWV3SW5pdCcsXG4gICAgICAgICAgICAnbmdBZnRlclZpZXdDaGVja2VkJyxcbiAgICAgICAgICAgICduZ09uRGVzdHJveSdcbiAgICAgICAgXTtcblxuICAgICAgICBkeW5hbWljTGlmZUN5Y2xlTWV0aG9kcy5mb3JFYWNoKChtZXRob2QpID0+IHtcbiAgICAgICAgICAgIHRoaXNbbWV0aG9kXSA9IHRoaXMucHJveHkuYmluZCh0aGlzLCBtZXRob2QpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgICAgIGlmICghdGhpcy5sb2FkZWQpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZENvbXBvbmVudCgpO1xuICAgICAgICAgICAgdGhpcy5sb2FkZWQgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgT2JqZWN0LmVudHJpZXMoY2hhbmdlcykuZm9yRWFjaCgoW2NoYW5nZU5hbWUsIGNoYW5nZV06IFtzdHJpbmcsIFNpbXBsZUNoYW5nZV0pID0+IHtcbiAgICAgICAgICAgIHRoaXMuY29tcG9uZW50UmVmZXJlbmNlLmluc3RhbmNlW2NoYW5nZU5hbWVdID0gY2hhbmdlLmN1cnJlbnRWYWx1ZTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5wcm94eSgnbmdPbkNoYW5nZXMnLCBjaGFuZ2VzKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGxvYWRDb21wb25lbnQoKSB7XG4gICAgICAgIGNvbnN0IGZhY3RvcnlDbGFzcyA9IHRoaXMuY2FyZEl0ZW1UeXBlU2VydmljZS5yZXNvbHZlQ29tcG9uZW50VHlwZSh0aGlzLnByb3BlcnR5KTtcblxuICAgICAgICB0aGlzLmNvbXBvbmVudFJlZmVyZW5jZSA9IHRoaXMuY29udGVudC5jcmVhdGVDb21wb25lbnQoZmFjdG9yeUNsYXNzKTtcblxuICAgICAgICB0aGlzLmNvbXBvbmVudFJlZmVyZW5jZS5pbnN0YW5jZS5lZGl0YWJsZSA9IHRoaXMuZWRpdGFibGU7XG4gICAgICAgIHRoaXMuY29tcG9uZW50UmVmZXJlbmNlLmluc3RhbmNlLnByb3BlcnR5ID0gdGhpcy5wcm9wZXJ0eTtcbiAgICAgICAgdGhpcy5jb21wb25lbnRSZWZlcmVuY2UuaW5zdGFuY2UuZGlzcGxheUVtcHR5ID0gdGhpcy5kaXNwbGF5RW1wdHk7XG4gICAgICAgIHRoaXMuY29tcG9uZW50UmVmZXJlbmNlLmluc3RhbmNlLmRpc3BsYXlOb25lT3B0aW9uID0gdGhpcy5kaXNwbGF5Tm9uZU9wdGlvbjtcbiAgICAgICAgdGhpcy5jb21wb25lbnRSZWZlcmVuY2UuaW5zdGFuY2UuZGlzcGxheUNsZWFyQWN0aW9uID0gdGhpcy5kaXNwbGF5Q2xlYXJBY3Rpb247XG4gICAgICAgIHRoaXMuY29tcG9uZW50UmVmZXJlbmNlLmluc3RhbmNlLmNvcHlUb0NsaXBib2FyZEFjdGlvbiA9IHRoaXMuY29weVRvQ2xpcGJvYXJkQWN0aW9uO1xuICAgICAgICB0aGlzLmNvbXBvbmVudFJlZmVyZW5jZS5pbnN0YW5jZS51c2VDaGlwc0Zvck11bHRpVmFsdWVQcm9wZXJ0eSA9IHRoaXMudXNlQ2hpcHNGb3JNdWx0aVZhbHVlUHJvcGVydHk7XG4gICAgICAgIHRoaXMuY29tcG9uZW50UmVmZXJlbmNlLmluc3RhbmNlLm11bHRpVmFsdWVTZXBhcmF0b3IgPSB0aGlzLm11bHRpVmFsdWVTZXBhcmF0b3I7XG4gICAgICAgIHRoaXMuY29tcG9uZW50UmVmZXJlbmNlLmluc3RhbmNlLmRpc3BsYXlMYWJlbEZvckNoaXBzID0gdGhpcy5kaXNwbGF5TGFiZWxGb3JDaGlwcztcbiAgICB9XG5cbiAgICBwcml2YXRlIHByb3h5KG1ldGhvZE5hbWUsIC4uLmFyZ3MpIHtcbiAgICAgICAgaWYgKHRoaXMuY29tcG9uZW50UmVmZXJlbmNlLmluc3RhbmNlW21ldGhvZE5hbWVdKSB7XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXNwcmVhZFxuICAgICAgICAgICAgdGhpcy5jb21wb25lbnRSZWZlcmVuY2UuaW5zdGFuY2VbbWV0aG9kTmFtZV0uYXBwbHkodGhpcy5jb21wb25lbnRSZWZlcmVuY2UuaW5zdGFuY2UsIGFyZ3MpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
@@ -0,0 +1,64 @@
1
+ /*!
2
+ * @license
3
+ * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { Component, ViewEncapsulation } from '@angular/core';
18
+ import { MatTableDataSource, MatTableModule } from '@angular/material/table';
19
+ import { BaseCardView } from '../base-card-view';
20
+ import { CommonModule } from '@angular/common';
21
+ import { TranslatePipe } from '@ngx-translate/core';
22
+ import { MatInputModule } from '@angular/material/input';
23
+ import { FormsModule } from '@angular/forms';
24
+ import { MatButtonModule } from '@angular/material/button';
25
+ import { MatIconModule } from '@angular/material/icon';
26
+ import * as i0 from "@angular/core";
27
+ import * as i1 from "@angular/common";
28
+ import * as i2 from "@angular/material/table";
29
+ import * as i3 from "@angular/material/input";
30
+ import * as i4 from "@angular/forms";
31
+ import * as i5 from "@angular/material/button";
32
+ import * as i6 from "@angular/material/icon";
33
+ export class CardViewKeyValuePairsItemComponent extends BaseCardView {
34
+ ngOnChanges() {
35
+ this.values = this.property.value || [];
36
+ this.matTableValues = new MatTableDataSource(this.values);
37
+ }
38
+ add() {
39
+ this.values.push({ name: '', value: '' });
40
+ }
41
+ remove(index) {
42
+ this.values.splice(index, 1);
43
+ this.save(true);
44
+ }
45
+ onBlur(value) {
46
+ if (value?.length) {
47
+ this.save();
48
+ }
49
+ }
50
+ save(remove) {
51
+ const validValues = this.values.filter((i) => i.name.length && i.value.length);
52
+ if (remove || validValues.length) {
53
+ this.cardViewUpdateService.update({ ...this.property }, validValues);
54
+ this.property.value = validValues;
55
+ }
56
+ }
57
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CardViewKeyValuePairsItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
58
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CardViewKeyValuePairsItemComponent, isStandalone: true, selector: "adf-card-view-key-value-pairs-item", host: { classAttribute: "adf-card-view-key-value-pairs-item" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div [attr.data-automation-id]=\"'card-key-value-pairs-label-' + property.key\"\n class=\"adf-property-label\">{{ property.label | translate }}</div>\n<div class=\"adf-property-field\">\n\n <div *ngIf=\"!isEditable\" class=\"adf-card-view__key-value-pairs__read-only adf-property-value\">\n <mat-table #table [dataSource]=\"matTableValues\" class=\"mat-elevation-z8\">\n <ng-container matColumnDef=\"name\">\n <mat-header-cell *matHeaderCellDef>{{ 'CORE.CARDVIEW.KEYVALUEPAIRS.NAME' | translate }}\n </mat-header-cell>\n <mat-cell *matCellDef=\"let item\">{{item.name}}</mat-cell>\n </ng-container>\n <ng-container matColumnDef=\"value\">\n <mat-header-cell *matHeaderCellDef>{{ 'CORE.CARDVIEW.KEYVALUEPAIRS.VALUE' | translate }}\n </mat-header-cell>\n <mat-cell *matCellDef=\"let item\">{{item.value}}</mat-cell>\n </ng-container>\n\n <mat-header-row *matHeaderRowDef=\"['name', 'value']\" />\n <mat-row *matRowDef=\"let row; columns: ['name', 'value'];\" />\n </mat-table>\n </div>\n\n <div class=\"adf-card-view__key-value-pairs adf-property-value\" *ngIf=\"isEditable && values && values.length\">\n <div class=\"adf-card-view__key-value-pairs__row\">\n <div class=\"adf-property-col-key\">{{ 'CORE.CARDVIEW.KEYVALUEPAIRS.NAME' | translate }}</div>\n <div class=\"adf-property-col-value\">{{ 'CORE.CARDVIEW.KEYVALUEPAIRS.VALUE' | translate }}</div>\n </div>\n\n <div class=\"adf-card-view__key-value-pairs__row\" *ngFor=\"let item of values; let i = index\">\n <input\n matInput\n class=\"adf-property-col-key adf-property-value-input\"\n placeholder=\"{{ 'CORE.CARDVIEW.KEYVALUEPAIRS.NAME' | translate }}\"\n (blur)=\"onBlur(item.value)\"\n [attr.data-automation-id]=\"'card-'+ property.key +'-name-input-' + i\"\n [(ngModel)]=\"values[i].name\">\n\n <input\n matInput\n class=\"adf-property-col-value adf-property-value-input\"\n placeholder=\"{{ 'CORE.CARDVIEW.KEYVALUEPAIRS.VALUE' | translate }}\"\n (blur)=\"onBlur(item.value)\"\n [attr.data-automation-id]=\"'card-'+ property.key +'-value-input-' + i\"\n [(ngModel)]=\"values[i].value\">\n\n <button\n mat-icon-button\n (click)=\"remove(i)\"\n class=\"adf-property-col-delete\">\n <mat-icon>close</mat-icon>\n </button>\n </div>\n </div>\n <div *ngIf=\"isEditable\" class=\"adf-property-value adf-card-view__key-value-pairs__add-btn-container\">\n <button (click)=\"add()\"\n mat-button\n class=\"adf-card-view__key-value-pairs__add-btn\"\n [attr.data-automation-id]=\"'card-key-value-pairs-button-' + property.key\">\n {{ 'CORE.CARDVIEW.KEYVALUEPAIRS.ADD' | translate }}\n <mat-icon>add</mat-icon>\n </button>\n </div>\n</div>\n", styles: [".adf-card-view-key-value-pairs-item .adf-property-col-key{width:50%;margin-right:4px}.adf-card-view-key-value-pairs-item .adf-property-col-value{margin-left:4px;width:50%}.adf-card-view-key-value-pairs-item .adf-property-col-delete{width:auto}.adf-card-view-key-value-pairs-item .adf-card-view__key-value-pairs__row{display:flex;justify-content:center;align-items:center}.adf-card-view-key-value-pairs-item .adf-card-view__key-value-pairs__add-btn-container{display:flex;justify-content:center}.adf-card-view-key-value-pairs-item .adf-card-view__key-value-pairs__add-btn.mat-mdc-button{margin-bottom:20px}.adf-card-view-key-value-pairs-item .adf-card-view__key-value-pairs__read-only{padding-bottom:20px}.adf-card-view-key-value-pairs-item .adf-card-view__key-value-pairs__read-only .mat-mdc-table{box-shadow:none}.adf-card-view-key-value-pairs-item .adf-card-view__key-value-pairs__read-only .mat-mdc-header-row,.adf-card-view-key-value-pairs-item .adf-card-view__key-value-pairs__read-only .mat-mdc-row{padding:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: MatTableModule }, { kind: "component", type: i2.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i2.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i3.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], encapsulation: i0.ViewEncapsulation.None }); }
59
+ }
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CardViewKeyValuePairsItemComponent, decorators: [{
61
+ type: Component,
62
+ args: [{ selector: 'adf-card-view-key-value-pairs-item', standalone: true, imports: [CommonModule, TranslatePipe, MatTableModule, MatInputModule, FormsModule, MatButtonModule, MatIconModule], encapsulation: ViewEncapsulation.None, host: { class: 'adf-card-view-key-value-pairs-item' }, template: "<div [attr.data-automation-id]=\"'card-key-value-pairs-label-' + property.key\"\n class=\"adf-property-label\">{{ property.label | translate }}</div>\n<div class=\"adf-property-field\">\n\n <div *ngIf=\"!isEditable\" class=\"adf-card-view__key-value-pairs__read-only adf-property-value\">\n <mat-table #table [dataSource]=\"matTableValues\" class=\"mat-elevation-z8\">\n <ng-container matColumnDef=\"name\">\n <mat-header-cell *matHeaderCellDef>{{ 'CORE.CARDVIEW.KEYVALUEPAIRS.NAME' | translate }}\n </mat-header-cell>\n <mat-cell *matCellDef=\"let item\">{{item.name}}</mat-cell>\n </ng-container>\n <ng-container matColumnDef=\"value\">\n <mat-header-cell *matHeaderCellDef>{{ 'CORE.CARDVIEW.KEYVALUEPAIRS.VALUE' | translate }}\n </mat-header-cell>\n <mat-cell *matCellDef=\"let item\">{{item.value}}</mat-cell>\n </ng-container>\n\n <mat-header-row *matHeaderRowDef=\"['name', 'value']\" />\n <mat-row *matRowDef=\"let row; columns: ['name', 'value'];\" />\n </mat-table>\n </div>\n\n <div class=\"adf-card-view__key-value-pairs adf-property-value\" *ngIf=\"isEditable && values && values.length\">\n <div class=\"adf-card-view__key-value-pairs__row\">\n <div class=\"adf-property-col-key\">{{ 'CORE.CARDVIEW.KEYVALUEPAIRS.NAME' | translate }}</div>\n <div class=\"adf-property-col-value\">{{ 'CORE.CARDVIEW.KEYVALUEPAIRS.VALUE' | translate }}</div>\n </div>\n\n <div class=\"adf-card-view__key-value-pairs__row\" *ngFor=\"let item of values; let i = index\">\n <input\n matInput\n class=\"adf-property-col-key adf-property-value-input\"\n placeholder=\"{{ 'CORE.CARDVIEW.KEYVALUEPAIRS.NAME' | translate }}\"\n (blur)=\"onBlur(item.value)\"\n [attr.data-automation-id]=\"'card-'+ property.key +'-name-input-' + i\"\n [(ngModel)]=\"values[i].name\">\n\n <input\n matInput\n class=\"adf-property-col-value adf-property-value-input\"\n placeholder=\"{{ 'CORE.CARDVIEW.KEYVALUEPAIRS.VALUE' | translate }}\"\n (blur)=\"onBlur(item.value)\"\n [attr.data-automation-id]=\"'card-'+ property.key +'-value-input-' + i\"\n [(ngModel)]=\"values[i].value\">\n\n <button\n mat-icon-button\n (click)=\"remove(i)\"\n class=\"adf-property-col-delete\">\n <mat-icon>close</mat-icon>\n </button>\n </div>\n </div>\n <div *ngIf=\"isEditable\" class=\"adf-property-value adf-card-view__key-value-pairs__add-btn-container\">\n <button (click)=\"add()\"\n mat-button\n class=\"adf-card-view__key-value-pairs__add-btn\"\n [attr.data-automation-id]=\"'card-key-value-pairs-button-' + property.key\">\n {{ 'CORE.CARDVIEW.KEYVALUEPAIRS.ADD' | translate }}\n <mat-icon>add</mat-icon>\n </button>\n </div>\n</div>\n", styles: [".adf-card-view-key-value-pairs-item .adf-property-col-key{width:50%;margin-right:4px}.adf-card-view-key-value-pairs-item .adf-property-col-value{margin-left:4px;width:50%}.adf-card-view-key-value-pairs-item .adf-property-col-delete{width:auto}.adf-card-view-key-value-pairs-item .adf-card-view__key-value-pairs__row{display:flex;justify-content:center;align-items:center}.adf-card-view-key-value-pairs-item .adf-card-view__key-value-pairs__add-btn-container{display:flex;justify-content:center}.adf-card-view-key-value-pairs-item .adf-card-view__key-value-pairs__add-btn.mat-mdc-button{margin-bottom:20px}.adf-card-view-key-value-pairs-item .adf-card-view__key-value-pairs__read-only{padding-bottom:20px}.adf-card-view-key-value-pairs-item .adf-card-view__key-value-pairs__read-only .mat-mdc-table{box-shadow:none}.adf-card-view-key-value-pairs-item .adf-card-view__key-value-pairs__read-only .mat-mdc-header-row,.adf-card-view-key-value-pairs-item .adf-card-view__key-value-pairs__read-only .mat-mdc-row{padding:0}\n"] }]
63
+ }] });
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC12aWV3LWtleXZhbHVlcGFpcnNpdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYi9jb3JlL3NyYy9saWIvY2FyZC12aWV3L2NvbXBvbmVudHMvY2FyZC12aWV3LWtleXZhbHVlcGFpcnNpdGVtL2NhcmQtdmlldy1rZXl2YWx1ZXBhaXJzaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2NhcmQtdmlldy9jb21wb25lbnRzL2NhcmQtdmlldy1rZXl2YWx1ZXBhaXJzaXRlbS9jYXJkLXZpZXcta2V5dmFsdWVwYWlyc2l0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBRUgsT0FBTyxFQUFFLFNBQVMsRUFBYSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd4RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDN0UsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7OztBQVd2RCxNQUFNLE9BQU8sa0NBQW1DLFNBQVEsWUFBNEM7SUFJaEcsV0FBVztRQUNQLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ3hDLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDOUQsQ0FBQztJQUVELEdBQUc7UUFDQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFhO1FBQ2hCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBVTtRQUNiLElBQUksS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQ2hCLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoQixDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUksQ0FBQyxNQUFnQjtRQUNqQixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUUvRSxJQUFJLE1BQU0sSUFBSSxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDL0IsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBb0MsRUFBRSxXQUFXLENBQUMsQ0FBQztZQUN2RyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUM7UUFDdEMsQ0FBQztJQUNMLENBQUM7K0dBL0JRLGtDQUFrQzttR0FBbEMsa0NBQWtDLDBNQ3RDL0Msc29HQStEQSxrakNEL0JjLFlBQVksMlBBQUUsYUFBYSxpREFBRSxjQUFjLHNnQ0FBRSxjQUFjLDBXQUFFLFdBQVcsOG1CQUFFLGVBQWUsd1VBQUUsYUFBYTs7NEZBTXpHLGtDQUFrQztrQkFUOUMsU0FBUzsrQkFDSSxvQ0FBb0MsY0FDbEMsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsYUFBYSxDQUFDLGlCQUdwRyxpQkFBaUIsQ0FBQyxJQUFJLFFBQy9CLEVBQUUsS0FBSyxFQUFFLG9DQUFvQyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uQ2hhbmdlcywgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENhcmRWaWV3S2V5VmFsdWVQYWlyc0l0ZW1Nb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9jYXJkLXZpZXcubW9kZWxzJztcbmltcG9ydCB7IENhcmRWaWV3S2V5VmFsdWVQYWlyc0l0ZW1UeXBlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9jYXJkLXZpZXcuaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBNYXRUYWJsZURhdGFTb3VyY2UsIE1hdFRhYmxlTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHsgQmFzZUNhcmRWaWV3IH0gZnJvbSAnLi4vYmFzZS1jYXJkLXZpZXcnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IE1hdElucHV0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaW5wdXQnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FkZi1jYXJkLXZpZXcta2V5LXZhbHVlLXBhaXJzLWl0ZW0nLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgVHJhbnNsYXRlUGlwZSwgTWF0VGFibGVNb2R1bGUsIE1hdElucHV0TW9kdWxlLCBGb3Jtc01vZHVsZSwgTWF0QnV0dG9uTW9kdWxlLCBNYXRJY29uTW9kdWxlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2FyZC12aWV3LWtleXZhbHVlcGFpcnNpdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jYXJkLXZpZXcta2V5dmFsdWVwYWlyc2l0ZW0uY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGhvc3Q6IHsgY2xhc3M6ICdhZGYtY2FyZC12aWV3LWtleS12YWx1ZS1wYWlycy1pdGVtJyB9XG59KVxuZXhwb3J0IGNsYXNzIENhcmRWaWV3S2V5VmFsdWVQYWlyc0l0ZW1Db21wb25lbnQgZXh0ZW5kcyBCYXNlQ2FyZFZpZXc8Q2FyZFZpZXdLZXlWYWx1ZVBhaXJzSXRlbU1vZGVsPiBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gICAgdmFsdWVzOiBDYXJkVmlld0tleVZhbHVlUGFpcnNJdGVtVHlwZVtdO1xuICAgIG1hdFRhYmxlVmFsdWVzOiBNYXRUYWJsZURhdGFTb3VyY2U8Q2FyZFZpZXdLZXlWYWx1ZVBhaXJzSXRlbVR5cGU+O1xuXG4gICAgbmdPbkNoYW5nZXMoKSB7XG4gICAgICAgIHRoaXMudmFsdWVzID0gdGhpcy5wcm9wZXJ0eS52YWx1ZSB8fCBbXTtcbiAgICAgICAgdGhpcy5tYXRUYWJsZVZhbHVlcyA9IG5ldyBNYXRUYWJsZURhdGFTb3VyY2UodGhpcy52YWx1ZXMpO1xuICAgIH1cblxuICAgIGFkZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy52YWx1ZXMucHVzaCh7IG5hbWU6ICcnLCB2YWx1ZTogJycgfSk7XG4gICAgfVxuXG4gICAgcmVtb3ZlKGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy52YWx1ZXMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgICAgdGhpcy5zYXZlKHRydWUpO1xuICAgIH1cblxuICAgIG9uQmx1cih2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIGlmICh2YWx1ZT8ubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLnNhdmUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNhdmUocmVtb3ZlPzogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBjb25zdCB2YWxpZFZhbHVlcyA9IHRoaXMudmFsdWVzLmZpbHRlcigoaSkgPT4gaS5uYW1lLmxlbmd0aCAmJiBpLnZhbHVlLmxlbmd0aCk7XG5cbiAgICAgICAgaWYgKHJlbW92ZSB8fCB2YWxpZFZhbHVlcy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuY2FyZFZpZXdVcGRhdGVTZXJ2aWNlLnVwZGF0ZSh7IC4uLnRoaXMucHJvcGVydHkgfSBhcyBDYXJkVmlld0tleVZhbHVlUGFpcnNJdGVtTW9kZWwsIHZhbGlkVmFsdWVzKTtcbiAgICAgICAgICAgIHRoaXMucHJvcGVydHkudmFsdWUgPSB2YWxpZFZhbHVlcztcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxkaXYgW2F0dHIuZGF0YS1hdXRvbWF0aW9uLWlkXT1cIidjYXJkLWtleS12YWx1ZS1wYWlycy1sYWJlbC0nICsgcHJvcGVydHkua2V5XCJcbiAgICAgY2xhc3M9XCJhZGYtcHJvcGVydHktbGFiZWxcIj57eyBwcm9wZXJ0eS5sYWJlbCB8IHRyYW5zbGF0ZSB9fTwvZGl2PlxuPGRpdiBjbGFzcz1cImFkZi1wcm9wZXJ0eS1maWVsZFwiPlxuXG4gICAgPGRpdiAqbmdJZj1cIiFpc0VkaXRhYmxlXCIgY2xhc3M9XCJhZGYtY2FyZC12aWV3X19rZXktdmFsdWUtcGFpcnNfX3JlYWQtb25seSBhZGYtcHJvcGVydHktdmFsdWVcIj5cbiAgICAgICAgPG1hdC10YWJsZSAjdGFibGUgW2RhdGFTb3VyY2VdPVwibWF0VGFibGVWYWx1ZXNcIiBjbGFzcz1cIm1hdC1lbGV2YXRpb24tejhcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwibmFtZVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+e3sgJ0NPUkUuQ0FSRFZJRVcuS0VZVkFMVUVQQUlSUy5OQU1FJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgIDwvbWF0LWhlYWRlci1jZWxsPlxuICAgICAgICAgICAgICAgIDxtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBpdGVtXCI+e3tpdGVtLm5hbWV9fTwvbWF0LWNlbGw+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgbWF0Q29sdW1uRGVmPVwidmFsdWVcIj5cbiAgICAgICAgICAgICAgICA8bWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPnt7ICdDT1JFLkNBUkRWSUVXLktFWVZBTFVFUEFJUlMuVkFMVUUnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgPC9tYXQtaGVhZGVyLWNlbGw+XG4gICAgICAgICAgICAgICAgPG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGl0ZW1cIj57e2l0ZW0udmFsdWV9fTwvbWF0LWNlbGw+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICAgICAgPG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJbJ25hbWUnLCAndmFsdWUnXVwiIC8+XG4gICAgICAgICAgICA8bWF0LXJvdyAqbWF0Um93RGVmPVwibGV0IHJvdzsgY29sdW1uczogWyduYW1lJywgJ3ZhbHVlJ107XCIgLz5cbiAgICAgICAgPC9tYXQtdGFibGU+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiYWRmLWNhcmQtdmlld19fa2V5LXZhbHVlLXBhaXJzIGFkZi1wcm9wZXJ0eS12YWx1ZVwiICpuZ0lmPVwiaXNFZGl0YWJsZSAmJiB2YWx1ZXMgJiYgdmFsdWVzLmxlbmd0aFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYWRmLWNhcmQtdmlld19fa2V5LXZhbHVlLXBhaXJzX19yb3dcIj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhZGYtcHJvcGVydHktY29sLWtleVwiPnt7ICdDT1JFLkNBUkRWSUVXLktFWVZBTFVFUEFJUlMuTkFNRScgfCB0cmFuc2xhdGUgfX08L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhZGYtcHJvcGVydHktY29sLXZhbHVlXCI+e3sgJ0NPUkUuQ0FSRFZJRVcuS0VZVkFMVUVQQUlSUy5WQUxVRScgfCB0cmFuc2xhdGUgfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgPGRpdiBjbGFzcz1cImFkZi1jYXJkLXZpZXdfX2tleS12YWx1ZS1wYWlyc19fcm93XCIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgdmFsdWVzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICBtYXRJbnB1dFxuICAgICAgICAgICAgICAgIGNsYXNzPVwiYWRmLXByb3BlcnR5LWNvbC1rZXkgYWRmLXByb3BlcnR5LXZhbHVlLWlucHV0XCJcbiAgICAgICAgICAgICAgICBwbGFjZWhvbGRlcj1cInt7ICdDT1JFLkNBUkRWSUVXLktFWVZBTFVFUEFJUlMuTkFNRScgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgICAgIChibHVyKT1cIm9uQmx1cihpdGVtLnZhbHVlKVwiXG4gICAgICAgICAgICAgICAgW2F0dHIuZGF0YS1hdXRvbWF0aW9uLWlkXT1cIidjYXJkLScrIHByb3BlcnR5LmtleSArJy1uYW1lLWlucHV0LScgKyBpXCJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInZhbHVlc1tpXS5uYW1lXCI+XG5cbiAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgIG1hdElucHV0XG4gICAgICAgICAgICAgICAgY2xhc3M9XCJhZGYtcHJvcGVydHktY29sLXZhbHVlIGFkZi1wcm9wZXJ0eS12YWx1ZS1pbnB1dFwiXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI9XCJ7eyAnQ09SRS5DQVJEVklFVy5LRVlWQUxVRVBBSVJTLlZBTFVFJyB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgICAgICAgICAgKGJsdXIpPVwib25CbHVyKGl0ZW0udmFsdWUpXCJcbiAgICAgICAgICAgICAgICBbYXR0ci5kYXRhLWF1dG9tYXRpb24taWRdPVwiJ2NhcmQtJysgcHJvcGVydHkua2V5ICsnLXZhbHVlLWlucHV0LScgKyBpXCJcbiAgICAgICAgICAgICAgICBbKG5nTW9kZWwpXT1cInZhbHVlc1tpXS52YWx1ZVwiPlxuXG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZShpKVwiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJhZGYtcHJvcGVydHktY29sLWRlbGV0ZVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cImlzRWRpdGFibGVcIiBjbGFzcz1cImFkZi1wcm9wZXJ0eS12YWx1ZSBhZGYtY2FyZC12aWV3X19rZXktdmFsdWUtcGFpcnNfX2FkZC1idG4tY29udGFpbmVyXCI+XG4gICAgICAgIDxidXR0b24gKGNsaWNrKT1cImFkZCgpXCJcbiAgICAgICAgICAgICAgICBtYXQtYnV0dG9uXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJhZGYtY2FyZC12aWV3X19rZXktdmFsdWUtcGFpcnNfX2FkZC1idG5cIlxuICAgICAgICAgICAgICAgIFthdHRyLmRhdGEtYXV0b21hdGlvbi1pZF09XCInY2FyZC1rZXktdmFsdWUtcGFpcnMtYnV0dG9uLScgKyBwcm9wZXJ0eS5rZXlcIj5cbiAgICAgICAgICAgICAgICB7eyAnQ09SRS5DQVJEVklFVy5LRVlWQUxVRVBBSVJTLkFERCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICA8bWF0LWljb24+YWRkPC9tYXQtaWNvbj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,46 @@
1
+ /*!
2
+ * @license
3
+ * Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * http://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ import { Component, Input } from '@angular/core';
18
+ import { BaseCardView } from '../base-card-view';
19
+ import { CommonModule } from '@angular/common';
20
+ import { TranslatePipe } from '@ngx-translate/core';
21
+ import * as i0 from "@angular/core";
22
+ import * as i1 from "@angular/common";
23
+ export class CardViewMapItemComponent extends BaseCardView {
24
+ constructor() {
25
+ super(...arguments);
26
+ this.displayEmpty = true;
27
+ }
28
+ get showProperty() {
29
+ return this.displayEmpty || !this.property.isEmpty();
30
+ }
31
+ get isClickable() {
32
+ return this.property.clickable;
33
+ }
34
+ clicked() {
35
+ this.cardViewUpdateService.clicked(this.property);
36
+ }
37
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CardViewMapItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
38
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: CardViewMapItemComponent, isStandalone: true, selector: "adf-card-view-mapitem", inputs: { displayEmpty: "displayEmpty" }, usesInheritance: true, ngImport: i0, template: "<div [attr.data-automation-id]=\"'card-mapitem-label-' + property.key\"\n class=\"adf-property-label\"\n *ngIf=\"showProperty\">{{ property.label | translate }}</div>\n<div class=\"adf-property-value adf-map-item-padding\">\n <div>\n <span *ngIf=\"!isClickable; else clickableTemplate\"\n [attr.data-automation-id]=\"'card-mapitem-value-' + property.key\">\n <span *ngIf=\"showProperty;\">{{ property.displayValue }}</span>\n </span>\n </div>\n <ng-template #clickableTemplate>\n <span class=\"adf-mapitem-clickable-value\"\n (click)=\"clicked()\"\n tabindex=\"0\"\n role=\"button\"\n (keyup.enter)=\"clicked()\"\n [attr.data-automation-id]=\"'card-mapitem-value-' + property.key\">\n <span *ngIf=\"showProperty; else emptyValueTemplate\">{{ property.displayValue }}</span>\n </span>\n </ng-template>\n <ng-template #emptyValueTemplate>\n {{ property.default | translate }}\n </ng-template>\n</div>\n", styles: [".adf-mapitem-clickable-value{cursor:pointer}.adf-map-item-padding{padding-top:6px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
39
+ }
40
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CardViewMapItemComponent, decorators: [{
41
+ type: Component,
42
+ args: [{ selector: 'adf-card-view-mapitem', standalone: true, imports: [CommonModule, TranslatePipe], template: "<div [attr.data-automation-id]=\"'card-mapitem-label-' + property.key\"\n class=\"adf-property-label\"\n *ngIf=\"showProperty\">{{ property.label | translate }}</div>\n<div class=\"adf-property-value adf-map-item-padding\">\n <div>\n <span *ngIf=\"!isClickable; else clickableTemplate\"\n [attr.data-automation-id]=\"'card-mapitem-value-' + property.key\">\n <span *ngIf=\"showProperty;\">{{ property.displayValue }}</span>\n </span>\n </div>\n <ng-template #clickableTemplate>\n <span class=\"adf-mapitem-clickable-value\"\n (click)=\"clicked()\"\n tabindex=\"0\"\n role=\"button\"\n (keyup.enter)=\"clicked()\"\n [attr.data-automation-id]=\"'card-mapitem-value-' + property.key\">\n <span *ngIf=\"showProperty; else emptyValueTemplate\">{{ property.displayValue }}</span>\n </span>\n </ng-template>\n <ng-template #emptyValueTemplate>\n {{ property.default | translate }}\n </ng-template>\n</div>\n", styles: [".adf-mapitem-clickable-value{cursor:pointer}.adf-map-item-padding{padding-top:6px}\n"] }]
43
+ }], propDecorators: { displayEmpty: [{
44
+ type: Input
45
+ }] } });
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FyZC12aWV3LW1hcGl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvc3JjL2xpYi9jYXJkLXZpZXcvY29tcG9uZW50cy9jYXJkLXZpZXctbWFwaXRlbS9jYXJkLXZpZXctbWFwaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvbGliL2NhcmQtdmlldy9jb21wb25lbnRzL2NhcmQtdmlldy1tYXBpdGVtL2NhcmQtdmlldy1tYXBpdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDOzs7QUFTcEQsTUFBTSxPQUFPLHdCQUF5QixTQUFRLFlBQWtDO0lBUGhGOztRQVNJLGlCQUFZLEdBQVksSUFBSSxDQUFDO0tBYWhDO0lBWEcsSUFBSSxZQUFZO1FBQ1osT0FBTyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN6RCxDQUFDO0lBRUQsSUFBSSxXQUFXO1FBQ1gsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQztJQUNuQyxDQUFDO0lBRUQsT0FBTztRQUNILElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3RELENBQUM7K0dBZFEsd0JBQXdCO21HQUF4Qix3QkFBd0Isa0pDOUJyQyx1aUNBd0JBLDZJREVjLFlBQVksOEhBQUUsYUFBYTs7NEZBSTVCLHdCQUF3QjtrQkFQcEMsU0FBUzsrQkFDSSx1QkFBdUIsY0FDckIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQzs4QkFNdEMsWUFBWTtzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDYXJkVmlld01hcEl0ZW1Nb2RlbCB9IGZyb20gJy4uLy4uL21vZGVscy9jYXJkLXZpZXctbWFwaXRlbS5tb2RlbCc7XG5pbXBvcnQgeyBCYXNlQ2FyZFZpZXcgfSBmcm9tICcuLi9iYXNlLWNhcmQtdmlldyc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVHJhbnNsYXRlUGlwZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FkZi1jYXJkLXZpZXctbWFwaXRlbScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBUcmFuc2xhdGVQaXBlXSxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY2FyZC12aWV3LW1hcGl0ZW0uY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NhcmQtdmlldy1tYXBpdGVtLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgQ2FyZFZpZXdNYXBJdGVtQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNhcmRWaWV3PENhcmRWaWV3TWFwSXRlbU1vZGVsPiB7XG4gICAgQElucHV0KClcbiAgICBkaXNwbGF5RW1wdHk6IGJvb2xlYW4gPSB0cnVlO1xuXG4gICAgZ2V0IHNob3dQcm9wZXJ0eSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzcGxheUVtcHR5IHx8ICF0aGlzLnByb3BlcnR5LmlzRW1wdHkoKTtcbiAgICB9XG5cbiAgICBnZXQgaXNDbGlja2FibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnByb3BlcnR5LmNsaWNrYWJsZTtcbiAgICB9XG5cbiAgICBjbGlja2VkKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNhcmRWaWV3VXBkYXRlU2VydmljZS5jbGlja2VkKHRoaXMucHJvcGVydHkpO1xuICAgIH1cbn1cbiIsIjxkaXYgW2F0dHIuZGF0YS1hdXRvbWF0aW9uLWlkXT1cIidjYXJkLW1hcGl0ZW0tbGFiZWwtJyArIHByb3BlcnR5LmtleVwiXG4gICAgIGNsYXNzPVwiYWRmLXByb3BlcnR5LWxhYmVsXCJcbiAgICAgKm5nSWY9XCJzaG93UHJvcGVydHlcIj57eyBwcm9wZXJ0eS5sYWJlbCB8IHRyYW5zbGF0ZSB9fTwvZGl2PlxuPGRpdiBjbGFzcz1cImFkZi1wcm9wZXJ0eS12YWx1ZSBhZGYtbWFwLWl0ZW0tcGFkZGluZ1wiPlxuICAgIDxkaXY+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwiIWlzQ2xpY2thYmxlOyBlbHNlIGNsaWNrYWJsZVRlbXBsYXRlXCJcbiAgICAgICAgICAgICAgW2F0dHIuZGF0YS1hdXRvbWF0aW9uLWlkXT1cIidjYXJkLW1hcGl0ZW0tdmFsdWUtJyArIHByb3BlcnR5LmtleVwiPlxuICAgICAgICAgICAgPHNwYW4gKm5nSWY9XCJzaG93UHJvcGVydHk7XCI+e3sgcHJvcGVydHkuZGlzcGxheVZhbHVlIH19PC9zcGFuPlxuICAgICAgICA8L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPG5nLXRlbXBsYXRlICNjbGlja2FibGVUZW1wbGF0ZT5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJhZGYtbWFwaXRlbS1jbGlja2FibGUtdmFsdWVcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiY2xpY2tlZCgpXCJcbiAgICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgIChrZXl1cC5lbnRlcik9XCJjbGlja2VkKClcIlxuICAgICAgICAgICAgICBbYXR0ci5kYXRhLWF1dG9tYXRpb24taWRdPVwiJ2NhcmQtbWFwaXRlbS12YWx1ZS0nICsgcHJvcGVydHkua2V5XCI+XG4gICAgICAgICAgICA8c3BhbiAqbmdJZj1cInNob3dQcm9wZXJ0eTsgZWxzZSBlbXB0eVZhbHVlVGVtcGxhdGVcIj57eyBwcm9wZXJ0eS5kaXNwbGF5VmFsdWUgfX08L3NwYW4+XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSAjZW1wdHlWYWx1ZVRlbXBsYXRlPlxuICAgICAgICB7eyBwcm9wZXJ0eS5kZWZhdWx0IHwgdHJhbnNsYXRlIH19XG4gICAgPC9uZy10ZW1wbGF0ZT5cbjwvZGl2PlxuIl19