@alfresco/adf-core 8.1.0-16499147278 → 8.1.0-16877609768

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 (613) 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/feature-flags/lib/providers/debug-feature-flags.provider.d.ts +4 -35
  8. package/fesm2022/adf-core.mjs +1065 -1255
  9. package/fesm2022/adf-core.mjs.map +1 -1
  10. package/fesm2022/alfresco-adf-core-api.mjs +4 -4
  11. package/fesm2022/alfresco-adf-core-api.mjs.map +1 -1
  12. package/fesm2022/alfresco-adf-core-auth.mjs +3 -3
  13. package/fesm2022/alfresco-adf-core-auth.mjs.map +1 -1
  14. package/fesm2022/alfresco-adf-core-breadcrumbs.mjs +11 -11
  15. package/fesm2022/alfresco-adf-core-breadcrumbs.mjs.map +1 -1
  16. package/fesm2022/alfresco-adf-core-feature-flags.mjs +52 -59
  17. package/fesm2022/alfresco-adf-core-feature-flags.mjs.map +1 -1
  18. package/fesm2022/alfresco-adf-core-shell.mjs +68 -14
  19. package/fesm2022/alfresco-adf-core-shell.mjs.map +1 -1
  20. package/lib/app-config/provide-app-config.d.ts +2 -2
  21. package/lib/auth/basic-auth/basic-alfresco-auth.service.d.ts +0 -13
  22. package/lib/auth/interfaces/authentication-service.interface.d.ts +4 -9
  23. package/lib/auth/oidc/auth.module.d.ts +4 -4
  24. package/lib/auth/oidc/oidc-authentication.service.d.ts +5 -15
  25. package/lib/auth/oidc/view/authentication-confirmation/authentication-confirmation.component.d.ts +1 -1
  26. package/lib/auth/services/authentication.service.d.ts +2 -12
  27. package/lib/auth/services/base-authentication.service.d.ts +1 -5
  28. package/lib/card-view/components/base-card-view.d.ts +1 -1
  29. package/lib/card-view/components/card-view/card-view.component.scss +12 -9
  30. package/lib/card-view/components/card-view-selectitem/card-view-selectitem.component.scss +1 -2
  31. package/lib/card-view/components/card-view-textitem/card-view-textitem.component.scss +2 -5
  32. package/lib/datatable/data/data-table.schema.d.ts +1 -1
  33. package/lib/dialogs/confirm-dialog/confirm.dialog.d.ts +1 -1
  34. package/lib/dialogs/confirm-dialog/confirm.dialog.module.d.ts +2 -6
  35. package/lib/form/components/form-base.component.d.ts +7 -19
  36. package/lib/form/components/form-renderer.component.scss +5 -4
  37. package/lib/form/components/widgets/amount/amount.widget.scss +8 -0
  38. package/lib/form/components/widgets/core/form-outcome.model.d.ts +3 -3
  39. package/lib/form/components/widgets/core/form.model.d.ts +4 -4
  40. package/lib/form/components/widgets/text/text-mask.component.d.ts +0 -1
  41. package/lib/testing/unit-testing-utils.d.ts +0 -1
  42. package/lib/viewer/components/viewer.component.d.ts +2 -5
  43. package/lib/viewer/components/viewer.component.scss +0 -12
  44. package/package.json +3 -15
  45. package/public-api.d.ts +0 -1
  46. package/shell/README.md +13 -3
  47. package/shell/index.d.ts +1 -0
  48. package/shell/lib/providers.d.ts +36 -0
  49. package/shell/lib/shell.module.d.ts +1 -1
  50. package/esm2022/adf-core.mjs +0 -5
  51. package/esm2022/api/alfresco-adf-core-api.mjs +0 -5
  52. package/esm2022/api/index.mjs +0 -20
  53. package/esm2022/api/lib/adf-http-client.service.mjs +0 -311
  54. package/esm2022/api/lib/alfresco-api/alfresco-api.param-encoder.mjs +0 -33
  55. package/esm2022/api/lib/alfresco-api/alfresco-api.response-error.mjs +0 -25
  56. package/esm2022/api/lib/alfresco-api/alfresco-api.utils.mjs +0 -80
  57. package/esm2022/api/lib/interfaces.mjs +0 -18
  58. package/esm2022/api/lib/types.mjs +0 -18
  59. package/esm2022/auth/alfresco-adf-core-auth.mjs +0 -5
  60. package/esm2022/auth/authentication-interceptor/authentication.interceptor.mjs +0 -56
  61. package/esm2022/auth/authentication.mjs +0 -19
  62. package/esm2022/auth/index.mjs +0 -19
  63. package/esm2022/breadcrumbs/alfresco-adf-core-breadcrumbs.mjs +0 -5
  64. package/esm2022/breadcrumbs/components/breadcrumb/breadcrumb.component.mjs +0 -82
  65. package/esm2022/breadcrumbs/components/breadcrumb-item/breadcrumb-item.component.mjs +0 -42
  66. package/esm2022/breadcrumbs/directives/breadcrumb-focus.directive.mjs +0 -44
  67. package/esm2022/breadcrumbs/index.mjs +0 -19
  68. package/esm2022/feature-flags/alfresco-adf-core-feature-flags.mjs +0 -5
  69. package/esm2022/feature-flags/index.mjs +0 -29
  70. package/esm2022/feature-flags/lib/components/feature-flags-wrapper.mjs +0 -36
  71. package/esm2022/feature-flags/lib/components/feature-override-indicator.component.mjs +0 -56
  72. package/esm2022/feature-flags/lib/components/flags/flags.component.mjs +0 -129
  73. package/esm2022/feature-flags/lib/directives/features.directive.mjs +0 -63
  74. package/esm2022/feature-flags/lib/directives/not-features.directive.mjs +0 -63
  75. package/esm2022/feature-flags/lib/guards/is-feature-off.guard.mjs +0 -38
  76. package/esm2022/feature-flags/lib/guards/is-feature-on.guard.mjs +0 -38
  77. package/esm2022/feature-flags/lib/guards/is-flags-override-on.guard.mjs +0 -40
  78. package/esm2022/feature-flags/lib/interfaces/features.interface.mjs +0 -24
  79. package/esm2022/feature-flags/lib/mocks/features-service-mock.factory.mjs +0 -62
  80. package/esm2022/feature-flags/lib/providers/debug-feature-flags.provider.mjs +0 -51
  81. package/esm2022/feature-flags/lib/providers/dummy-feature-flags.provider.mjs +0 -36
  82. package/esm2022/feature-flags/lib/services/debug-features.service.mjs +0 -94
  83. package/esm2022/feature-flags/lib/services/dummy-features.service.mjs +0 -40
  84. package/esm2022/feature-flags/lib/services/flagset.parser.mjs +0 -38
  85. package/esm2022/feature-flags/lib/services/qa-features.helper.mjs +0 -62
  86. package/esm2022/feature-flags/lib/services/storage-features.service.mjs +0 -126
  87. package/esm2022/lib/about/about-extension-list/about-extension-list.component.mjs +0 -51
  88. package/esm2022/lib/about/about-license-list/about-license-list.component.mjs +0 -51
  89. package/esm2022/lib/about/about-module-list/module-list.component.mjs +0 -51
  90. package/esm2022/lib/about/about-package/package-list.component.mjs +0 -65
  91. package/esm2022/lib/about/about-panel.directive.mjs +0 -37
  92. package/esm2022/lib/about/about-repository-info/about-repository-info.component.mjs +0 -59
  93. package/esm2022/lib/about/about-repository-info/repository-info.interface.mjs +0 -18
  94. package/esm2022/lib/about/about-server-settings/about-server-settings.component.mjs +0 -42
  95. package/esm2022/lib/about/about-status-list/about-status-list.component.mjs +0 -51
  96. package/esm2022/lib/about/about.component.mjs +0 -35
  97. package/esm2022/lib/about/about.module.mjs +0 -75
  98. package/esm2022/lib/about/index.mjs +0 -18
  99. package/esm2022/lib/about/interfaces.mjs +0 -18
  100. package/esm2022/lib/about/public-api.mjs +0 -28
  101. package/esm2022/lib/app-config/app-config-storage-prefix.factory.mjs +0 -51
  102. package/esm2022/lib/app-config/app-config.loader.mjs +0 -41
  103. package/esm2022/lib/app-config/app-config.module.mjs +0 -33
  104. package/esm2022/lib/app-config/app-config.pipe.mjs +0 -38
  105. package/esm2022/lib/app-config/app-config.service.mjs +0 -243
  106. package/esm2022/lib/app-config/debug-app-config.service.mjs +0 -44
  107. package/esm2022/lib/app-config/index.mjs +0 -18
  108. package/esm2022/lib/app-config/provide-app-config.mjs +0 -44
  109. package/esm2022/lib/app-config/public-api.mjs +0 -23
  110. package/esm2022/lib/auth/authentication-interceptor/auth-bearer.interceptor.mjs +0 -67
  111. package/esm2022/lib/auth/basic-auth/basic-alfresco-auth.service.mjs +0 -369
  112. package/esm2022/lib/auth/basic-auth/content-auth.mjs +0 -189
  113. package/esm2022/lib/auth/basic-auth/process-auth.mjs +0 -193
  114. package/esm2022/lib/auth/guard/auth-guard-bpm.service.mjs +0 -31
  115. package/esm2022/lib/auth/guard/auth-guard-ecm.service.mjs +0 -31
  116. package/esm2022/lib/auth/guard/auth-guard-sso-role.service.mjs +0 -57
  117. package/esm2022/lib/auth/guard/auth-guard.mjs +0 -53
  118. package/esm2022/lib/auth/guard/auth-guard.service.mjs +0 -113
  119. package/esm2022/lib/auth/index.mjs +0 -18
  120. package/esm2022/lib/auth/interfaces/authentication-service.interface.mjs +0 -18
  121. package/esm2022/lib/auth/interfaces/authentication.interface.mjs +0 -18
  122. package/esm2022/lib/auth/interfaces/identity-group.interface.mjs +0 -18
  123. package/esm2022/lib/auth/interfaces/identity-user.service.interface.mjs +0 -18
  124. package/esm2022/lib/auth/interfaces/openid-configuration.interface.mjs +0 -18
  125. package/esm2022/lib/auth/models/application-access.model.mjs +0 -18
  126. package/esm2022/lib/auth/models/identity-group.model.mjs +0 -18
  127. package/esm2022/lib/auth/models/identity-role.model.mjs +0 -30
  128. package/esm2022/lib/auth/models/identity-user.model.mjs +0 -18
  129. package/esm2022/lib/auth/models/oauth-config.model.mjs +0 -18
  130. package/esm2022/lib/auth/models/redirection.model.mjs +0 -28
  131. package/esm2022/lib/auth/models/user-access.model.mjs +0 -18
  132. package/esm2022/lib/auth/oidc/auth-config.mjs +0 -19
  133. package/esm2022/lib/auth/oidc/auth-config.service.mjs +0 -110
  134. package/esm2022/lib/auth/oidc/auth-routing.module.mjs +0 -34
  135. package/esm2022/lib/auth/oidc/auth.module.mjs +0 -112
  136. package/esm2022/lib/auth/oidc/auth.service.mjs +0 -22
  137. package/esm2022/lib/auth/oidc/oidc-auth.guard.mjs +0 -37
  138. package/esm2022/lib/auth/oidc/oidc-authentication.service.mjs +0 -204
  139. package/esm2022/lib/auth/oidc/public-api.mjs +0 -24
  140. package/esm2022/lib/auth/oidc/redirect-auth.service.mjs +0 -267
  141. package/esm2022/lib/auth/oidc/retry-login.service.mjs +0 -66
  142. package/esm2022/lib/auth/oidc/token.interceptor.mjs +0 -62
  143. package/esm2022/lib/auth/oidc/view/authentication-confirmation/authentication-confirmation.component.mjs +0 -31
  144. package/esm2022/lib/auth/public-api.mjs +0 -44
  145. package/esm2022/lib/auth/services/authentication.service.mjs +0 -190
  146. package/esm2022/lib/auth/services/base-authentication.service.mjs +0 -95
  147. package/esm2022/lib/auth/services/identity-group.service.mjs +0 -269
  148. package/esm2022/lib/auth/services/identity-role.service.mjs +0 -99
  149. package/esm2022/lib/auth/services/identity-user.service.mjs +0 -443
  150. package/esm2022/lib/auth/services/jwt-helper.service.mjs +0 -205
  151. package/esm2022/lib/auth/services/oauth2.service.mjs +0 -69
  152. package/esm2022/lib/auth/services/time-sync.service.mjs +0 -83
  153. package/esm2022/lib/auth/services/user-access.service.mjs +0 -110
  154. package/esm2022/lib/avatar/avatar.component.mjs +0 -51
  155. package/esm2022/lib/blank-page/blank-page.component.mjs +0 -31
  156. package/esm2022/lib/blank-page/blank-page.module.mjs +0 -33
  157. package/esm2022/lib/blank-page/index.mjs +0 -18
  158. package/esm2022/lib/blank-page/public-api.mjs +0 -19
  159. package/esm2022/lib/button/button.component.mjs +0 -61
  160. package/esm2022/lib/card-view/card-view.module.mjs +0 -80
  161. package/esm2022/lib/card-view/components/base-card-view.mjs +0 -51
  162. package/esm2022/lib/card-view/components/card-view/card-view.component.mjs +0 -66
  163. package/esm2022/lib/card-view/components/card-view-arrayitem/card-view-arrayitem.component.mjs +0 -55
  164. package/esm2022/lib/card-view/components/card-view-boolitem/card-view-boolitem.component.mjs +0 -39
  165. package/esm2022/lib/card-view/components/card-view-dateitem/card-view-dateitem.component.mjs +0 -182
  166. package/esm2022/lib/card-view/components/card-view-item-dispatcher/card-view-item-dispatcher.component.mjs +0 -108
  167. package/esm2022/lib/card-view/components/card-view-keyvaluepairsitem/card-view-keyvaluepairsitem.component.mjs +0 -64
  168. package/esm2022/lib/card-view/components/card-view-mapitem/card-view-mapitem.component.mjs +0 -46
  169. package/esm2022/lib/card-view/components/card-view-selectitem/card-view-selectitem.component.mjs +0 -137
  170. package/esm2022/lib/card-view/components/card-view-selectitem/select-filter-input/select-filter-input.component.mjs +0 -113
  171. package/esm2022/lib/card-view/components/card-view-textitem/card-view-textitem.component.mjs +0 -239
  172. package/esm2022/lib/card-view/components/card-view.components.mjs +0 -28
  173. package/esm2022/lib/card-view/index.mjs +0 -18
  174. package/esm2022/lib/card-view/interfaces/base-card-view-update.interface.mjs +0 -18
  175. package/esm2022/lib/card-view/interfaces/card-view-arrayitem-properties.interface.mjs +0 -18
  176. package/esm2022/lib/card-view/interfaces/card-view-boolitem-properties.interface.mjs +0 -18
  177. package/esm2022/lib/card-view/interfaces/card-view-dateitem-properties.interface.mjs +0 -18
  178. package/esm2022/lib/card-view/interfaces/card-view-item-properties.interface.mjs +0 -18
  179. package/esm2022/lib/card-view/interfaces/card-view-item-validator.interface.mjs +0 -18
  180. package/esm2022/lib/card-view/interfaces/card-view-item.interface.mjs +0 -18
  181. package/esm2022/lib/card-view/interfaces/card-view-keyvaluepairsitem-properties.interface.mjs +0 -18
  182. package/esm2022/lib/card-view/interfaces/card-view-selectitem-properties.interface.mjs +0 -18
  183. package/esm2022/lib/card-view/interfaces/card-view-textitem-pipe-property.interface.mjs +0 -18
  184. package/esm2022/lib/card-view/interfaces/card-view-textitem-properties.interface.mjs +0 -18
  185. package/esm2022/lib/card-view/interfaces/card-view.interfaces.mjs +0 -29
  186. package/esm2022/lib/card-view/interfaces/click-notification.interface.mjs +0 -18
  187. package/esm2022/lib/card-view/interfaces/update-notification.interface.mjs +0 -18
  188. package/esm2022/lib/card-view/models/card-view-arrayitem.model.mjs +0 -28
  189. package/esm2022/lib/card-view/models/card-view-baseitem.model.mjs +0 -64
  190. package/esm2022/lib/card-view/models/card-view-boolitem.model.mjs +0 -36
  191. package/esm2022/lib/card-view/models/card-view-dateitem.model.mjs +0 -58
  192. package/esm2022/lib/card-view/models/card-view-datetimeitem.model.mjs +0 -28
  193. package/esm2022/lib/card-view/models/card-view-floatitem.model.mjs +0 -33
  194. package/esm2022/lib/card-view/models/card-view-intitem.model.mjs +0 -36
  195. package/esm2022/lib/card-view/models/card-view-keyvaluepairs.model.mjs +0 -27
  196. package/esm2022/lib/card-view/models/card-view-longitem.model.mjs +0 -36
  197. package/esm2022/lib/card-view/models/card-view-mapitem.model.mjs +0 -32
  198. package/esm2022/lib/card-view/models/card-view-selectitem.model.mjs +0 -41
  199. package/esm2022/lib/card-view/models/card-view-textitem.model.mjs +0 -40
  200. package/esm2022/lib/card-view/models/card-view.models.mjs +0 -29
  201. package/esm2022/lib/card-view/public-api.mjs +0 -25
  202. package/esm2022/lib/card-view/services/card-item-types.service.mjs +0 -54
  203. package/esm2022/lib/card-view/services/card-view-update.service.mjs +0 -59
  204. package/esm2022/lib/card-view/services/card-view.services.mjs +0 -19
  205. package/esm2022/lib/card-view/validators/card-view-item-float.validator.mjs +0 -31
  206. package/esm2022/lib/card-view/validators/card-view-item-int.validator.mjs +0 -35
  207. package/esm2022/lib/card-view/validators/card-view-item-length.validator.mjs +0 -34
  208. package/esm2022/lib/card-view/validators/card-view-item-long.validator.mjs +0 -35
  209. package/esm2022/lib/card-view/validators/card-view-item-match.validator.mjs +0 -35
  210. package/esm2022/lib/card-view/validators/card-view-item-minmax.validator.mjs +0 -35
  211. package/esm2022/lib/card-view/validators/card-view-item-only-positive-int.validator.mjs +0 -32
  212. package/esm2022/lib/card-view/validators/card-view-item-only-positive-long.validator.mjs +0 -31
  213. package/esm2022/lib/card-view/validators/card-view.validators.mjs +0 -26
  214. package/esm2022/lib/card-view/validators/validators.map.mjs +0 -26
  215. package/esm2022/lib/clipboard/clipboard.directive.mjs +0 -98
  216. package/esm2022/lib/clipboard/clipboard.module.mjs +0 -34
  217. package/esm2022/lib/clipboard/clipboard.service.mjs +0 -103
  218. package/esm2022/lib/clipboard/index.mjs +0 -18
  219. package/esm2022/lib/clipboard/public-api.mjs +0 -21
  220. package/esm2022/lib/comments/comment-list/comment-list.component.mjs +0 -52
  221. package/esm2022/lib/comments/comment-list/comment-list.module.mjs +0 -33
  222. package/esm2022/lib/comments/comment-list/index.mjs +0 -18
  223. package/esm2022/lib/comments/comment-list/public-api.mjs +0 -19
  224. package/esm2022/lib/comments/comments.component.mjs +0 -132
  225. package/esm2022/lib/comments/comments.module.mjs +0 -33
  226. package/esm2022/lib/comments/index.mjs +0 -18
  227. package/esm2022/lib/comments/interfaces/comments-service.interface.mjs +0 -18
  228. package/esm2022/lib/comments/interfaces/comments.token.mjs +0 -19
  229. package/esm2022/lib/comments/public-api.mjs +0 -22
  230. package/esm2022/lib/common/index.mjs +0 -35
  231. package/esm2022/lib/common/interface/search-component.interface.mjs +0 -18
  232. package/esm2022/lib/common/mock/app-config.service.mock.mjs +0 -47
  233. package/esm2022/lib/common/models/default-languages.model.mjs +0 -36
  234. package/esm2022/lib/common/models/log-levels.model.mjs +0 -33
  235. package/esm2022/lib/common/models/user-info-mode.enum.mjs +0 -25
  236. package/esm2022/lib/common/services/cookie.service.mjs +0 -82
  237. package/esm2022/lib/common/services/download.service.mjs +0 -102
  238. package/esm2022/lib/common/services/dynamic-component-mapper.service.mjs +0 -89
  239. package/esm2022/lib/common/services/highlight-transform.service.mjs +0 -61
  240. package/esm2022/lib/common/services/language-item.interface.mjs +0 -18
  241. package/esm2022/lib/common/services/log.service.mjs +0 -171
  242. package/esm2022/lib/common/services/page-title.service.mjs +0 -63
  243. package/esm2022/lib/common/services/sort-by-category.service.mjs +0 -81
  244. package/esm2022/lib/common/services/storage.service.mjs +0 -143
  245. package/esm2022/lib/common/services/thumbnail.service.mjs +0 -194
  246. package/esm2022/lib/common/services/url.service.mjs +0 -45
  247. package/esm2022/lib/common/services/user-preferences.service.mjs +0 -238
  248. package/esm2022/lib/common/utils/date-fns-adapter.mjs +0 -115
  249. package/esm2022/lib/common/utils/date-fns-utils.mjs +0 -222
  250. package/esm2022/lib/common/utils/datetime-fns-adapter.mjs +0 -134
  251. package/esm2022/lib/common/utils/file-utils.mjs +0 -65
  252. package/esm2022/lib/common/utils/index.mjs +0 -18
  253. package/esm2022/lib/common/utils/moment-date-adapter.mjs +0 -202
  254. package/esm2022/lib/common/utils/moment-date-formats.model.mjs +0 -32
  255. package/esm2022/lib/common/utils/object-utils.mjs +0 -107
  256. package/esm2022/lib/common/utils/public-api.mjs +0 -25
  257. package/esm2022/lib/common/utils/string-utils.mjs +0 -45
  258. package/esm2022/lib/context-menu/animations.mjs +0 -33
  259. package/esm2022/lib/context-menu/context-menu-list.component.mjs +0 -91
  260. package/esm2022/lib/context-menu/context-menu-overlay.mjs +0 -25
  261. package/esm2022/lib/context-menu/context-menu-overlay.service.mjs +0 -109
  262. package/esm2022/lib/context-menu/context-menu.directive.mjs +0 -63
  263. package/esm2022/lib/context-menu/context-menu.module.mjs +0 -35
  264. package/esm2022/lib/context-menu/context-menu.tokens.mjs +0 -19
  265. package/esm2022/lib/context-menu/index.mjs +0 -18
  266. package/esm2022/lib/context-menu/interfaces.mjs +0 -18
  267. package/esm2022/lib/context-menu/public-api.mjs +0 -21
  268. package/esm2022/lib/core.module.mjs +0 -296
  269. package/esm2022/lib/datatable/components/amount-cell/amount-cell.component.mjs +0 -45
  270. package/esm2022/lib/datatable/components/boolean-cell/boolean-cell.component.mjs +0 -65
  271. package/esm2022/lib/datatable/components/columns-selector/columns-search-filter.pipe.mjs +0 -55
  272. package/esm2022/lib/datatable/components/columns-selector/columns-selector.component.mjs +0 -113
  273. package/esm2022/lib/datatable/components/data-cell.event.mjs +0 -31
  274. package/esm2022/lib/datatable/components/data-row-action.event.mjs +0 -34
  275. package/esm2022/lib/datatable/components/datatable/datatable.component.mjs +0 -914
  276. package/esm2022/lib/datatable/components/datatable-cell/datatable-cell.component.mjs +0 -126
  277. package/esm2022/lib/datatable/components/datatable-row/datatable-row.component.mjs +0 -98
  278. package/esm2022/lib/datatable/components/date-cell/date-cell.component.mjs +0 -78
  279. package/esm2022/lib/datatable/components/empty-list/empty-list.component.mjs +0 -60
  280. package/esm2022/lib/datatable/components/filesize-cell/filesize-cell.component.mjs +0 -49
  281. package/esm2022/lib/datatable/components/icon-cell/icon-cell.component.mjs +0 -67
  282. package/esm2022/lib/datatable/components/json-cell/json-cell.component.mjs +0 -86
  283. package/esm2022/lib/datatable/components/location-cell/location-cell.component.mjs +0 -69
  284. package/esm2022/lib/datatable/components/mocks/datatable.mock.mjs +0 -153
  285. package/esm2022/lib/datatable/components/number-cell/number-cell.component.mjs +0 -42
  286. package/esm2022/lib/datatable/data/data-column.model.mjs +0 -18
  287. package/esm2022/lib/datatable/data/data-row-event.model.mjs +0 -26
  288. package/esm2022/lib/datatable/data/data-row-update.model.mjs +0 -18
  289. package/esm2022/lib/datatable/data/data-row.model.mjs +0 -18
  290. package/esm2022/lib/datatable/data/data-sorting.model.mjs +0 -24
  291. package/esm2022/lib/datatable/data/data-table.schema.mjs +0 -132
  292. package/esm2022/lib/datatable/data/datatable-adapter.mjs +0 -18
  293. package/esm2022/lib/datatable/data/object-datacolumn.model.mjs +0 -46
  294. package/esm2022/lib/datatable/data/object-datarow.model.mjs +0 -41
  295. package/esm2022/lib/datatable/data/object-datatable-adapter.mjs +0 -134
  296. package/esm2022/lib/datatable/data-column/data-column-header.component.mjs +0 -45
  297. package/esm2022/lib/datatable/data-column/data-column-list.component.mjs +0 -36
  298. package/esm2022/lib/datatable/data-column/data-column.component.mjs +0 -114
  299. package/esm2022/lib/datatable/data-column/index.mjs +0 -18
  300. package/esm2022/lib/datatable/data-column/public-api.mjs +0 -20
  301. package/esm2022/lib/datatable/datatable.module.mjs +0 -161
  302. package/esm2022/lib/datatable/directives/custom-empty-content-template.directive.mjs +0 -35
  303. package/esm2022/lib/datatable/directives/custom-loading-template.directive.mjs +0 -30
  304. package/esm2022/lib/datatable/directives/custom-no-permission-template.directive.mjs +0 -35
  305. package/esm2022/lib/datatable/directives/drop-zone.directive.mjs +0 -89
  306. package/esm2022/lib/datatable/directives/header-filter-template.directive.mjs +0 -43
  307. package/esm2022/lib/datatable/directives/loading-template.directive.mjs +0 -46
  308. package/esm2022/lib/datatable/directives/main-data-table-action-template.directive.mjs +0 -43
  309. package/esm2022/lib/datatable/directives/no-content-template.directive.mjs +0 -46
  310. package/esm2022/lib/datatable/directives/no-permission-template.directive.mjs +0 -46
  311. package/esm2022/lib/datatable/directives/resizable/resizable.directive.mjs +0 -173
  312. package/esm2022/lib/datatable/directives/resizable/resize-handle.directive.mjs +0 -72
  313. package/esm2022/lib/datatable/directives/resizable/types.mjs +0 -18
  314. package/esm2022/lib/datatable/index.mjs +0 -18
  315. package/esm2022/lib/datatable/public-api.mjs +0 -55
  316. package/esm2022/lib/datatable/services/datatable.service.mjs +0 -33
  317. package/esm2022/lib/dialogs/confirm-dialog/confirm.dialog.mjs +0 -50
  318. package/esm2022/lib/dialogs/confirm-dialog/confirm.dialog.module.mjs +0 -38
  319. package/esm2022/lib/dialogs/dialog/dialog-data.interface.mjs +0 -18
  320. package/esm2022/lib/dialogs/dialog/dialog.component.mjs +0 -70
  321. package/esm2022/lib/dialogs/dialog/dialog.model.mjs +0 -22
  322. package/esm2022/lib/dialogs/dialog/index.mjs +0 -20
  323. package/esm2022/lib/dialogs/edit-json/edit-json.dialog.mjs +0 -52
  324. package/esm2022/lib/dialogs/edit-json/edit-json.dialog.module.mjs +0 -34
  325. package/esm2022/lib/dialogs/index.mjs +0 -18
  326. package/esm2022/lib/dialogs/public-api.mjs +0 -25
  327. package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +0 -73
  328. package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.model.mjs +0 -18
  329. package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +0 -33
  330. package/esm2022/lib/dialogs/unsaved-changes-dialog/unsaved-changes.guard.mjs +0 -64
  331. package/esm2022/lib/directives/directive.module.mjs +0 -56
  332. package/esm2022/lib/directives/highlight.directive.mjs +0 -67
  333. package/esm2022/lib/directives/index.mjs +0 -18
  334. package/esm2022/lib/directives/infinite-select-scroll.directive.mjs +0 -67
  335. package/esm2022/lib/directives/logout.directive.mjs +0 -72
  336. package/esm2022/lib/directives/public-api.mjs +0 -24
  337. package/esm2022/lib/directives/tooltip-card/tooltip-card.component.mjs +0 -60
  338. package/esm2022/lib/directives/tooltip-card/tooltip-card.directive.mjs +0 -104
  339. package/esm2022/lib/directives/upload.directive.mjs +0 -241
  340. package/esm2022/lib/dynamic-chip-list/chip.mjs +0 -18
  341. package/esm2022/lib/dynamic-chip-list/dynamic-chip-list.component.mjs +0 -204
  342. package/esm2022/lib/dynamic-chip-list/dynamic-chip-list.module.mjs +0 -33
  343. package/esm2022/lib/dynamic-chip-list/index.mjs +0 -18
  344. package/esm2022/lib/dynamic-chip-list/public-api.mjs +0 -20
  345. package/esm2022/lib/events/base-ui.event.mjs +0 -21
  346. package/esm2022/lib/events/base.event.mjs +0 -29
  347. package/esm2022/lib/events/index.mjs +0 -18
  348. package/esm2022/lib/events/public-api.mjs +0 -19
  349. package/esm2022/lib/form/components/form-base.component.mjs +0 -224
  350. package/esm2022/lib/form/components/form-custom-button.directive.mjs +0 -30
  351. package/esm2022/lib/form/components/form-field/form-field.component.mjs +0 -142
  352. package/esm2022/lib/form/components/form-renderer.component.mjs +0 -161
  353. package/esm2022/lib/form/components/form-section/form-section.component.mjs +0 -46
  354. package/esm2022/lib/form/components/helpers/buttons-visibility.mjs +0 -37
  355. package/esm2022/lib/form/components/inplace-form-input/inplace-form-input.component.mjs +0 -37
  356. package/esm2022/lib/form/components/middlewares/decimal-middleware.service.mjs +0 -48
  357. package/esm2022/lib/form/components/middlewares/middleware.mjs +0 -19
  358. package/esm2022/lib/form/components/widgets/amount/amount.widget.mjs +0 -77
  359. package/esm2022/lib/form/components/widgets/base-viewer/base-viewer.widget.mjs +0 -59
  360. package/esm2022/lib/form/components/widgets/checkbox/checkbox.widget.mjs +0 -52
  361. package/esm2022/lib/form/components/widgets/core/container-column.model.mjs +0 -28
  362. package/esm2022/lib/form/components/widgets/core/container.model.mjs +0 -50
  363. package/esm2022/lib/form/components/widgets/core/content-link.model.mjs +0 -52
  364. package/esm2022/lib/form/components/widgets/core/displayable-cm-properties.model.mjs +0 -18
  365. package/esm2022/lib/form/components/widgets/core/error-message.model.mjs +0 -38
  366. package/esm2022/lib/form/components/widgets/core/external-content-link.mjs +0 -18
  367. package/esm2022/lib/form/components/widgets/core/external-content.mjs +0 -18
  368. package/esm2022/lib/form/components/widgets/core/form-field-file-source.mjs +0 -18
  369. package/esm2022/lib/form/components/widgets/core/form-field-metadata.mjs +0 -18
  370. package/esm2022/lib/form/components/widgets/core/form-field-option.mjs +0 -18
  371. package/esm2022/lib/form/components/widgets/core/form-field-rule.mjs +0 -18
  372. package/esm2022/lib/form/components/widgets/core/form-field-selected-folder.mjs +0 -18
  373. package/esm2022/lib/form/components/widgets/core/form-field-templates.mjs +0 -18
  374. package/esm2022/lib/form/components/widgets/core/form-field-types.mjs +0 -74
  375. package/esm2022/lib/form/components/widgets/core/form-field-utils.mjs +0 -23
  376. package/esm2022/lib/form/components/widgets/core/form-field-validator.mjs +0 -268
  377. package/esm2022/lib/form/components/widgets/core/form-field-variable-options.mjs +0 -18
  378. package/esm2022/lib/form/components/widgets/core/form-field.model.mjs +0 -490
  379. package/esm2022/lib/form/components/widgets/core/form-outcome-event.model.mjs +0 -32
  380. package/esm2022/lib/form/components/widgets/core/form-outcome.model.mjs +0 -38
  381. package/esm2022/lib/form/components/widgets/core/form-values.mjs +0 -18
  382. package/esm2022/lib/form/components/widgets/core/form-variable.model.mjs +0 -18
  383. package/esm2022/lib/form/components/widgets/core/form-widget.model.mjs +0 -33
  384. package/esm2022/lib/form/components/widgets/core/form.model.mjs +0 -387
  385. package/esm2022/lib/form/components/widgets/core/group.model.mjs +0 -18
  386. package/esm2022/lib/form/components/widgets/core/index.mjs +0 -49
  387. package/esm2022/lib/form/components/widgets/core/predefined-theme.mjs +0 -115
  388. package/esm2022/lib/form/components/widgets/core/process-form-model.interface.mjs +0 -18
  389. package/esm2022/lib/form/components/widgets/core/process-variable.model.mjs +0 -18
  390. package/esm2022/lib/form/components/widgets/core/tab.model.mjs +0 -34
  391. package/esm2022/lib/form/components/widgets/core/theme.model.mjs +0 -18
  392. package/esm2022/lib/form/components/widgets/core/upload-widget-content-link.model.mjs +0 -27
  393. package/esm2022/lib/form/components/widgets/core/widget-schema.model.mjs +0 -18
  394. package/esm2022/lib/form/components/widgets/date/date.widget.mjs +0 -162
  395. package/esm2022/lib/form/components/widgets/date-time/date-time.widget.mjs +0 -153
  396. package/esm2022/lib/form/components/widgets/decimal/decimal.component.mjs +0 -53
  397. package/esm2022/lib/form/components/widgets/display-text/display-text.schema.mjs +0 -86
  398. package/esm2022/lib/form/components/widgets/display-text/display-text.widget.mjs +0 -46
  399. package/esm2022/lib/form/components/widgets/display-text/index.mjs +0 -19
  400. package/esm2022/lib/form/components/widgets/error/error.component.mjs +0 -92
  401. package/esm2022/lib/form/components/widgets/header/header.schema.mjs +0 -86
  402. package/esm2022/lib/form/components/widgets/header/header.widget.mjs +0 -42
  403. package/esm2022/lib/form/components/widgets/header/index.mjs +0 -19
  404. package/esm2022/lib/form/components/widgets/hyperlink/hyperlink.widget.mjs +0 -69
  405. package/esm2022/lib/form/components/widgets/index.mjs +0 -71
  406. package/esm2022/lib/form/components/widgets/json/json.widget.mjs +0 -66
  407. package/esm2022/lib/form/components/widgets/multiline-text/multiline-text.widget.mjs +0 -55
  408. package/esm2022/lib/form/components/widgets/number/number.widget.mjs +0 -71
  409. package/esm2022/lib/form/components/widgets/reactive-widget.interface.mjs +0 -18
  410. package/esm2022/lib/form/components/widgets/text/text-mask.component.mjs +0 -221
  411. package/esm2022/lib/form/components/widgets/text/text.widget.mjs +0 -65
  412. package/esm2022/lib/form/components/widgets/unknown/unknown.widget.mjs +0 -63
  413. package/esm2022/lib/form/components/widgets/widget.component.mjs +0 -110
  414. package/esm2022/lib/form/events/form-error.event.mjs +0 -24
  415. package/esm2022/lib/form/events/form-field.event.mjs +0 -24
  416. package/esm2022/lib/form/events/form-rules.event.mjs +0 -25
  417. package/esm2022/lib/form/events/form-spinner.event.mjs +0 -23
  418. package/esm2022/lib/form/events/form.event.mjs +0 -29
  419. package/esm2022/lib/form/events/index.mjs +0 -24
  420. package/esm2022/lib/form/events/validate-form-field.event.mjs +0 -24
  421. package/esm2022/lib/form/events/validate-form.event.mjs +0 -25
  422. package/esm2022/lib/form/form-base.module.mjs +0 -75
  423. package/esm2022/lib/form/index.mjs +0 -18
  424. package/esm2022/lib/form/models/form-rules.model.mjs +0 -77
  425. package/esm2022/lib/form/models/task-process-variable.model.mjs +0 -19
  426. package/esm2022/lib/form/models/widget-visibility.model.mjs +0 -104
  427. package/esm2022/lib/form/pipes/field-style.pipe.mjs +0 -45
  428. package/esm2022/lib/form/pipes/index.mjs +0 -18
  429. package/esm2022/lib/form/public-api.mjs +0 -35
  430. package/esm2022/lib/form/services/form-rendering.service.mjs +0 -53
  431. package/esm2022/lib/form/services/form-validation-service.interface.mjs +0 -18
  432. package/esm2022/lib/form/services/form.service.mjs +0 -86
  433. package/esm2022/lib/form/services/widget-visibility.service.mjs +0 -294
  434. package/esm2022/lib/header/header.component.mjs +0 -73
  435. package/esm2022/lib/header/index.mjs +0 -18
  436. package/esm2022/lib/header/navbar/navbar-item.component.mjs +0 -37
  437. package/esm2022/lib/header/navbar/navbar.component.mjs +0 -36
  438. package/esm2022/lib/header/public-api.mjs +0 -20
  439. package/esm2022/lib/icon/icon.component.mjs +0 -51
  440. package/esm2022/lib/icon/icon.module.mjs +0 -36
  441. package/esm2022/lib/icon/index.mjs +0 -18
  442. package/esm2022/lib/icon/public-api.mjs +0 -19
  443. package/esm2022/lib/identity-user-info/identity-user-info.component.mjs +0 -86
  444. package/esm2022/lib/identity-user-info/identity-user-info.module.mjs +0 -33
  445. package/esm2022/lib/identity-user-info/index.mjs +0 -18
  446. package/esm2022/lib/identity-user-info/public-api.mjs +0 -19
  447. package/esm2022/lib/info-drawer/index.mjs +0 -18
  448. package/esm2022/lib/info-drawer/info-drawer-layout.component.mjs +0 -71
  449. package/esm2022/lib/info-drawer/info-drawer.component.mjs +0 -113
  450. package/esm2022/lib/info-drawer/info-drawer.module.mjs +0 -53
  451. package/esm2022/lib/info-drawer/public-api.mjs +0 -20
  452. package/esm2022/lib/interface/index.mjs +0 -18
  453. package/esm2022/lib/interface/injection.tokens.mjs +0 -19
  454. package/esm2022/lib/interface/public-api.mjs +0 -18
  455. package/esm2022/lib/landing-page/index.mjs +0 -18
  456. package/esm2022/lib/landing-page/provider.mjs +0 -30
  457. package/esm2022/lib/landing-page/public-api.mjs +0 -18
  458. package/esm2022/lib/language-menu/index.mjs +0 -18
  459. package/esm2022/lib/language-menu/language-menu.component.mjs +0 -61
  460. package/esm2022/lib/language-menu/language-menu.module.mjs +0 -35
  461. package/esm2022/lib/language-menu/language-picker.component.mjs +0 -77
  462. package/esm2022/lib/language-menu/public-api.mjs +0 -21
  463. package/esm2022/lib/language-menu/service/language.service.interface.mjs +0 -18
  464. package/esm2022/lib/language-menu/service/language.service.mjs +0 -34
  465. package/esm2022/lib/layout/components/header/header.component.mjs +0 -99
  466. package/esm2022/lib/layout/components/layout-container/layout-container.component.mjs +0 -180
  467. package/esm2022/lib/layout/components/sidebar-action/sidebar-action-menu.component.mjs +0 -82
  468. package/esm2022/lib/layout/components/sidenav-layout/sidenav-layout.component.mjs +0 -145
  469. package/esm2022/lib/layout/directives/sidenav-layout-content.directive.mjs +0 -33
  470. package/esm2022/lib/layout/directives/sidenav-layout-header.directive.mjs +0 -33
  471. package/esm2022/lib/layout/directives/sidenav-layout-navigation.directive.mjs +0 -33
  472. package/esm2022/lib/layout/index.mjs +0 -18
  473. package/esm2022/lib/layout/layout.module.mjs +0 -72
  474. package/esm2022/lib/layout/public-api.mjs +0 -25
  475. package/esm2022/lib/login/components/login/login.component.mjs +0 -367
  476. package/esm2022/lib/login/components/login-dialog/login-dialog-component-data.interface.mjs +0 -18
  477. package/esm2022/lib/login/components/login-dialog/login-dialog.component.mjs +0 -57
  478. package/esm2022/lib/login/components/login-dialog-panel/login-dialog-panel.component.mjs +0 -48
  479. package/esm2022/lib/login/directives/login-footer.directive.mjs +0 -41
  480. package/esm2022/lib/login/directives/login-header.directive.mjs +0 -41
  481. package/esm2022/lib/login/index.mjs +0 -18
  482. package/esm2022/lib/login/login.module.mjs +0 -54
  483. package/esm2022/lib/login/models/login-error.event.mjs +0 -22
  484. package/esm2022/lib/login/models/login-submit.event.mjs +0 -32
  485. package/esm2022/lib/login/models/login-success.event.mjs +0 -24
  486. package/esm2022/lib/login/public-api.mjs +0 -27
  487. package/esm2022/lib/material.module.mjs +0 -254
  488. package/esm2022/lib/mock/cookie.service.mock.mjs +0 -43
  489. package/esm2022/lib/mock/data-column.mock.mjs +0 -73
  490. package/esm2022/lib/mock/event.mock.mjs +0 -39
  491. package/esm2022/lib/mock/form/form-definition-readonly.mock.mjs +0 -225
  492. package/esm2022/lib/mock/form/form-definition-visibility.mock.mjs +0 -347
  493. package/esm2022/lib/mock/form/form-definition.mock.mjs +0 -403
  494. package/esm2022/lib/mock/form/form.component.mock.mjs +0 -275
  495. package/esm2022/lib/mock/form/form.service.mock.mjs +0 -248
  496. package/esm2022/lib/mock/form/widget-visibility.service.mock.mjs +0 -1835
  497. package/esm2022/lib/mock/index.mjs +0 -18
  498. package/esm2022/lib/mock/public-api.mjs +0 -27
  499. package/esm2022/lib/mock/translation.service.mock.mjs +0 -44
  500. package/esm2022/lib/models/comment.model.mjs +0 -51
  501. package/esm2022/lib/models/component.model.mjs +0 -24
  502. package/esm2022/lib/models/decimal-number.model.mjs +0 -26
  503. package/esm2022/lib/models/general-user.model.mjs +0 -24
  504. package/esm2022/lib/models/index.mjs +0 -18
  505. package/esm2022/lib/models/pagination.model.mjs +0 -29
  506. package/esm2022/lib/models/path.model.mjs +0 -24
  507. package/esm2022/lib/models/product-version.model.mjs +0 -28
  508. package/esm2022/lib/models/public-api.mjs +0 -24
  509. package/esm2022/lib/models/request-pagination.model.mjs +0 -25
  510. package/esm2022/lib/notifications/components/add-notification.stories.component.mjs +0 -44
  511. package/esm2022/lib/notifications/components/notification-history.component.mjs +0 -138
  512. package/esm2022/lib/notifications/helpers/notification.factory.mjs +0 -43
  513. package/esm2022/lib/notifications/index.mjs +0 -18
  514. package/esm2022/lib/notifications/models/notification.model.mjs +0 -25
  515. package/esm2022/lib/notifications/notification-history.module.mjs +0 -35
  516. package/esm2022/lib/notifications/public-api.mjs +0 -23
  517. package/esm2022/lib/notifications/services/notification.service.mjs +0 -166
  518. package/esm2022/lib/pagination/index.mjs +0 -18
  519. package/esm2022/lib/pagination/infinite-pagination.component.mjs +0 -111
  520. package/esm2022/lib/pagination/paginated-component.interface.mjs +0 -18
  521. package/esm2022/lib/pagination/pagination-component.interface.mjs +0 -18
  522. package/esm2022/lib/pagination/pagination.component.mjs +0 -263
  523. package/esm2022/lib/pagination/pagination.module.mjs +0 -35
  524. package/esm2022/lib/pagination/public-api.mjs +0 -22
  525. package/esm2022/lib/pipes/date-time.pipe.mjs +0 -46
  526. package/esm2022/lib/pipes/decimal-number.pipe.mjs +0 -78
  527. package/esm2022/lib/pipes/file-size.pipe.mjs +0 -54
  528. package/esm2022/lib/pipes/file-type.pipe.mjs +0 -40
  529. package/esm2022/lib/pipes/format-space.pipe.mjs +0 -39
  530. package/esm2022/lib/pipes/full-name.pipe.mjs +0 -43
  531. package/esm2022/lib/pipes/index.mjs +0 -18
  532. package/esm2022/lib/pipes/localized-date.pipe.mjs +0 -70
  533. package/esm2022/lib/pipes/multi-value.pipe.mjs +0 -37
  534. package/esm2022/lib/pipes/pipe.module.mjs +0 -83
  535. package/esm2022/lib/pipes/public-api.mjs +0 -30
  536. package/esm2022/lib/pipes/text-highlight.pipe.mjs +0 -39
  537. package/esm2022/lib/pipes/time-ago.pipe.mjs +0 -65
  538. package/esm2022/lib/pipes/truncate.pipe.mjs +0 -33
  539. package/esm2022/lib/pipes/user-initial.pipe.mjs +0 -52
  540. package/esm2022/lib/pipes/user-like.interface.mjs +0 -18
  541. package/esm2022/lib/progress/progress.component.mjs +0 -90
  542. package/esm2022/lib/search-text/animations.mjs +0 -32
  543. package/esm2022/lib/search-text/index.mjs +0 -18
  544. package/esm2022/lib/search-text/models/search-text-input.model.mjs +0 -23
  545. package/esm2022/lib/search-text/public-api.mjs +0 -22
  546. package/esm2022/lib/search-text/search-text-input.component.mjs +0 -283
  547. package/esm2022/lib/search-text/search-text-input.module.mjs +0 -35
  548. package/esm2022/lib/search-text/search-trigger.directive.mjs +0 -181
  549. package/esm2022/lib/snackbar-content/index.mjs +0 -18
  550. package/esm2022/lib/snackbar-content/public-api.mjs +0 -20
  551. package/esm2022/lib/snackbar-content/snack-bar-data.mjs +0 -18
  552. package/esm2022/lib/snackbar-content/snackbar-content.component.mjs +0 -49
  553. package/esm2022/lib/snackbar-content/snackbar-content.module.mjs +0 -33
  554. package/esm2022/lib/sorting-picker/index.mjs +0 -18
  555. package/esm2022/lib/sorting-picker/public-api.mjs +0 -18
  556. package/esm2022/lib/sorting-picker/sorting-picker.component.mjs +0 -67
  557. package/esm2022/lib/templates/empty-content/empty-content.component.mjs +0 -43
  558. package/esm2022/lib/templates/error-content/error-content.component.mjs +0 -61
  559. package/esm2022/lib/templates/index.mjs +0 -18
  560. package/esm2022/lib/templates/public-api.mjs +0 -20
  561. package/esm2022/lib/templates/template.module.mjs +0 -38
  562. package/esm2022/lib/testing/core.story.module.mjs +0 -39
  563. package/esm2022/lib/testing/core.testing.module.mjs +0 -36
  564. package/esm2022/lib/testing/index.mjs +0 -22
  565. package/esm2022/lib/testing/noop-auth.module.mjs +0 -80
  566. package/esm2022/lib/testing/noop-translate.module.mjs +0 -75
  567. package/esm2022/lib/testing/unit-testing-utils.mjs +0 -367
  568. package/esm2022/lib/toolbar/index.mjs +0 -18
  569. package/esm2022/lib/toolbar/public-api.mjs +0 -21
  570. package/esm2022/lib/toolbar/toolbar-divider.component.mjs +0 -27
  571. package/esm2022/lib/toolbar/toolbar-title.component.mjs +0 -32
  572. package/esm2022/lib/toolbar/toolbar.component.mjs +0 -39
  573. package/esm2022/lib/toolbar/toolbar.module.mjs +0 -36
  574. package/esm2022/lib/translation/index.mjs +0 -18
  575. package/esm2022/lib/translation/provide-i18n.mjs +0 -48
  576. package/esm2022/lib/translation/public-api.mjs +0 -20
  577. package/esm2022/lib/translation/translate-loader.service.mjs +0 -153
  578. package/esm2022/lib/translation/translation.service.mjs +0 -148
  579. package/esm2022/lib/viewer/components/download-prompt-dialog/download-prompt-dialog.component.mjs +0 -36
  580. package/esm2022/lib/viewer/components/img-viewer/img-viewer.component.mjs +0 -220
  581. package/esm2022/lib/viewer/components/media-player/media-player.component.mjs +0 -64
  582. package/esm2022/lib/viewer/components/pdf-viewer/pdf-viewer.component.mjs +0 -550
  583. package/esm2022/lib/viewer/components/pdf-viewer-password-dialog/pdf-viewer-password-dialog.mjs +0 -60
  584. package/esm2022/lib/viewer/components/pdf-viewer-thumb/pdf-viewer-thumb.component.mjs +0 -48
  585. package/esm2022/lib/viewer/components/pdf-viewer-thumbnails/pdf-viewer-thumbnails.component.mjs +0 -198
  586. package/esm2022/lib/viewer/components/txt-viewer/txt-viewer.component.mjs +0 -85
  587. package/esm2022/lib/viewer/components/unknown-format/unknown-format.component.mjs +0 -32
  588. package/esm2022/lib/viewer/components/viewer-more-actions.component.mjs +0 -34
  589. package/esm2022/lib/viewer/components/viewer-open-with.component.mjs +0 -34
  590. package/esm2022/lib/viewer/components/viewer-render/viewer-render.component.mjs +0 -216
  591. package/esm2022/lib/viewer/components/viewer-sidebar.component.mjs +0 -46
  592. package/esm2022/lib/viewer/components/viewer-toolbar-actions.component.mjs +0 -34
  593. package/esm2022/lib/viewer/components/viewer-toolbar-custom-actions.component.mjs +0 -34
  594. package/esm2022/lib/viewer/components/viewer-toolbar.component.mjs +0 -34
  595. package/esm2022/lib/viewer/components/viewer.component.mjs +0 -492
  596. package/esm2022/lib/viewer/directives/viewer-extension.directive.mjs +0 -67
  597. package/esm2022/lib/viewer/index.mjs +0 -18
  598. package/esm2022/lib/viewer/models/download-prompt.actions.mjs +0 -23
  599. package/esm2022/lib/viewer/models/viewer.model.mjs +0 -22
  600. package/esm2022/lib/viewer/public-api.mjs +0 -40
  601. package/esm2022/lib/viewer/services/rendering-queue.services.mjs +0 -179
  602. package/esm2022/lib/viewer/services/view-util.service.mjs +0 -149
  603. package/esm2022/lib/viewer/viewer.module.mjs +0 -110
  604. package/esm2022/public-api.mjs +0 -61
  605. package/esm2022/shell/alfresco-adf-core-shell.mjs +0 -5
  606. package/esm2022/shell/index.mjs +0 -21
  607. package/esm2022/shell/lib/components/shell/shell.component.mjs +0 -122
  608. package/esm2022/shell/lib/services/shell-app.service.mjs +0 -22
  609. package/esm2022/shell/lib/shell.module.mjs +0 -75
  610. package/esm2022/shell/lib/shell.routes.mjs +0 -50
  611. package/lib/landing-page/index.d.ts +0 -17
  612. package/lib/landing-page/provider.d.ts +0 -24
  613. package/lib/landing-page/public-api.d.ts +0 -17
@@ -53,7 +53,6 @@
53
53
  }
54
54
  }
55
55
 
56
- &__title-display-name-container,
57
56
  &__display-name {
58
57
  font-size: var(--theme-subheading-2-font-size);
59
58
  line-height: 1.5;
@@ -62,17 +61,6 @@
62
61
  white-space: nowrap;
63
62
  }
64
63
 
65
- &__display-name-value,
66
- &__title-value {
67
- margin-top: 0;
68
- margin-bottom: 0;
69
- text-align: left;
70
- }
71
-
72
- &__display-name-value {
73
- font-size: var(--theme-body-1-font-size);
74
- }
75
-
76
64
  &-container {
77
65
  .adf-viewer-layout-content {
78
66
  @extend .adf-full-screen;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@alfresco/adf-core",
3
3
  "description": "Alfresco ADF core",
4
- "version": "8.1.0-16499147278",
4
+ "version": "8.1.0-16877609768",
5
5
  "author": "Hyland Software, Inc. and its affiliates",
6
6
  "repository": {
7
7
  "type": "git",
@@ -17,8 +17,6 @@
17
17
  "./breadcrumbs": {
18
18
  "sass": "./breadcrumbs/styles/_breadcrumb.theme.scss",
19
19
  "types": "./breadcrumbs/index.d.ts",
20
- "esm2022": "./esm2022/breadcrumbs/alfresco-adf-core-breadcrumbs.mjs",
21
- "esm": "./esm2022/breadcrumbs/alfresco-adf-core-breadcrumbs.mjs",
22
20
  "default": "./fesm2022/alfresco-adf-core-breadcrumbs.mjs"
23
21
  },
24
22
  "./package.json": {
@@ -26,32 +24,22 @@
26
24
  },
27
25
  ".": {
28
26
  "types": "./index.d.ts",
29
- "esm2022": "./esm2022/adf-core.mjs",
30
- "esm": "./esm2022/adf-core.mjs",
31
27
  "default": "./fesm2022/adf-core.mjs"
32
28
  },
33
29
  "./api": {
34
30
  "types": "./api/index.d.ts",
35
- "esm2022": "./esm2022/api/alfresco-adf-core-api.mjs",
36
- "esm": "./esm2022/api/alfresco-adf-core-api.mjs",
37
31
  "default": "./fesm2022/alfresco-adf-core-api.mjs"
38
32
  },
39
33
  "./auth": {
40
34
  "types": "./auth/index.d.ts",
41
- "esm2022": "./esm2022/auth/alfresco-adf-core-auth.mjs",
42
- "esm": "./esm2022/auth/alfresco-adf-core-auth.mjs",
43
35
  "default": "./fesm2022/alfresco-adf-core-auth.mjs"
44
36
  },
45
37
  "./feature-flags": {
46
38
  "types": "./feature-flags/index.d.ts",
47
- "esm2022": "./esm2022/feature-flags/alfresco-adf-core-feature-flags.mjs",
48
- "esm": "./esm2022/feature-flags/alfresco-adf-core-feature-flags.mjs",
49
39
  "default": "./fesm2022/alfresco-adf-core-feature-flags.mjs"
50
40
  },
51
41
  "./shell": {
52
42
  "types": "./shell/index.d.ts",
53
- "esm2022": "./esm2022/shell/alfresco-adf-core-shell.mjs",
54
- "esm": "./esm2022/shell/alfresco-adf-core-shell.mjs",
55
43
  "default": "./fesm2022/alfresco-adf-core-shell.mjs"
56
44
  }
57
45
  },
@@ -75,8 +63,8 @@
75
63
  "@angular/router": ">=16.0.0",
76
64
  "@mat-datetimepicker/core": ">=12.0.1",
77
65
  "@ngx-translate/core": ">=16.0.0",
78
- "@alfresco/js-api": ">=9.1.0-16499147278",
79
- "@alfresco/adf-extensions": ">=8.1.0-16499147278",
66
+ "@alfresco/js-api": ">=9.1.0-16877609768",
67
+ "@alfresco/adf-extensions": ">=8.1.0-16877609768",
80
68
  "minimatch": ">=10.0.0",
81
69
  "pdfjs-dist": ">=3.3.122",
82
70
  "ts-morph": ">=20.0.0"
package/public-api.d.ts CHANGED
@@ -23,7 +23,6 @@ export * from './lib/toolbar/index';
23
23
  export * from './lib/header/index';
24
24
  export * from './lib/pagination/index';
25
25
  export * from './lib/login/index';
26
- export * from './lib/landing-page/index';
27
26
  export * from './lib/language-menu/index';
28
27
  export * from './lib/info-drawer/index';
29
28
  export * from './lib/identity-user-info/index';
package/shell/README.md CHANGED
@@ -9,9 +9,19 @@ This module provides the main layout for the application, allowing you to define
9
9
  Passed routes are going to be attached to shell main route.
10
10
 
11
11
  ```typescript
12
- import { provideShellRoutes } from '@alfresco/adf-core/shell';
13
-
14
- provideShellRoutes([/*Your Routes*/])
12
+ import { provideShell } from '@alfresco/adf-core/shell';
13
+
14
+ provideShell(
15
+ {
16
+ routes: [],
17
+ appService: AppService,
18
+ authGuard: AuthGuard,
19
+ navBar: {
20
+ minWidth: 0,
21
+ maxWidth: 100
22
+ }
23
+ }
24
+ )
15
25
  ```
16
26
 
17
27
  If you would like to provide custom app guard, you can provide your own using `SHELL_AUTH_TOKEN`.
package/shell/index.d.ts CHANGED
@@ -18,3 +18,4 @@ export * from './lib/shell.module';
18
18
  export * from './lib/services/shell-app.service';
19
19
  export * from './lib/components/shell/shell.component';
20
20
  export * from './lib/shell.routes';
21
+ export * from './lib/providers';
@@ -0,0 +1,36 @@
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 { EnvironmentProviders, Provider } from '@angular/core';
18
+ import { CanActivateChildFn, CanActivateFn, Routes } from '@angular/router';
19
+ import { AppShellRoutesConfig } from './shell.routes';
20
+ import { ShellAppService } from './services/shell-app.service';
21
+ export interface ProvideShellOpts {
22
+ routes: Routes | AppShellRoutesConfig;
23
+ appService?: ShellAppService;
24
+ authGuard?: CanActivateFn | CanActivateChildFn;
25
+ navBar?: {
26
+ minWidth: number;
27
+ maxWidth: number;
28
+ };
29
+ }
30
+ /**
31
+ * Provides Shell-related api and providers
32
+ *
33
+ * @param opts Optional parameters
34
+ * @returns list of Angular providers
35
+ */
36
+ export declare function provideShell(opts?: ProvideShellOpts): (Provider | EnvironmentProviders)[];
@@ -18,7 +18,7 @@ import { ModuleWithProviders } from '@angular/core';
18
18
  import { Routes } from '@angular/router';
19
19
  import { AppShellRoutesConfig } from './shell.routes';
20
20
  import * as i0 from "@angular/core";
21
- /** @deprecated use `provideShellRoutes` instead */
21
+ /** @deprecated use `provideShell` instead */
22
22
  export declare class ShellModule {
23
23
  static withRoutes(routes: Routes | AppShellRoutesConfig): ModuleWithProviders<ShellModule>;
24
24
  static ɵfac: i0.ɵɵFactoryDeclaration<ShellModule, never>;
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRmLWNvcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWIvY29yZS9zcmMvYWRmLWNvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxmcmVzY28tYWRmLWNvcmUtYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGliL2NvcmUvYXBpL3NyYy9hbGZyZXNjby1hZGYtY29yZS1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
@@ -1,20 +0,0 @@
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
- export * from './lib/types';
18
- export * from './lib/adf-http-client.service';
19
- export * from './lib/interfaces';
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWIvY29yZS9hcGkvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7R0FlRztBQUVILGNBQWMsYUFBYSxDQUFDO0FBQzVCLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjUgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYWRmLWh0dHAtY2xpZW50LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaW50ZXJmYWNlcyc7XG4iXX0=
@@ -1,311 +0,0 @@
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 { SHOULD_ADD_AUTH_TOKEN } from '@alfresco/adf-core/auth';
18
- import { HttpClient, HttpContext, HttpHeaders, HttpParams } from '@angular/common/http';
19
- import { Injectable } from '@angular/core';
20
- import { of, Subject, throwError } from 'rxjs';
21
- import { catchError, map, takeUntil } from 'rxjs/operators';
22
- import { convertObjectToFormData, getQueryParamsWithCustomEncoder, isBlobResponse, isConstructor, isHttpResponseEvent, isHttpUploadProgressEvent, removeNilValues } from './alfresco-api/alfresco-api.utils';
23
- import { AlfrescoApiParamEncoder } from './alfresco-api/alfresco-api.param-encoder';
24
- import { AlfrescoApiResponseError } from './alfresco-api/alfresco-api.response-error';
25
- import ee from 'event-emitter';
26
- import * as i0 from "@angular/core";
27
- import * as i1 from "@angular/common/http";
28
- export class AdfHttpClient {
29
- get disableCsrf() {
30
- return this._disableCsrf;
31
- }
32
- set disableCsrf(disableCsrf) {
33
- this._disableCsrf = disableCsrf;
34
- }
35
- constructor(httpClient) {
36
- this.httpClient = httpClient;
37
- this.defaultSecurityOptions = {
38
- withCredentials: true,
39
- isBpmRequest: false,
40
- authentications: {},
41
- defaultHeaders: {}
42
- };
43
- ee(this);
44
- }
45
- setDefaultSecurityOption(options) {
46
- this.defaultSecurityOptions = this.merge(this.defaultSecurityOptions, options);
47
- }
48
- merge(...objects) {
49
- const result = {};
50
- objects.forEach((source) => {
51
- Object.keys(source).forEach((prop) => {
52
- if (prop in result && Array.isArray(result[prop])) {
53
- result[prop] = result[prop].concat(source[prop]);
54
- }
55
- else if (prop in result && typeof result[prop] === 'object') {
56
- result[prop] = this.merge(result[prop], source[prop]);
57
- }
58
- else {
59
- result[prop] = source[prop];
60
- }
61
- });
62
- });
63
- return result;
64
- }
65
- request(url, options, sc = this.defaultSecurityOptions, emitters) {
66
- const body = AdfHttpClient.getBody(options);
67
- const params = getQueryParamsWithCustomEncoder(options.queryParams, new AlfrescoApiParamEncoder());
68
- const responseType = AdfHttpClient.getResponseType(options);
69
- const context = new HttpContext().set(SHOULD_ADD_AUTH_TOKEN, true);
70
- const security = { ...this.defaultSecurityOptions, ...sc };
71
- const headers = this.getHeaders(options);
72
- if (!emitters) {
73
- emitters = this.getEventEmitters();
74
- }
75
- const request = this.httpClient.request(options.httpMethod, url, {
76
- context,
77
- ...(body && { body }),
78
- ...(responseType && { responseType }),
79
- ...security,
80
- ...(params && { params }),
81
- headers,
82
- observe: 'events',
83
- reportProgress: true
84
- });
85
- return this.requestWithLegacyEventEmitters(request, emitters, options.returnType);
86
- }
87
- post(url, options, sc, emitters) {
88
- return this.request(url, { ...options, httpMethod: 'POST' }, sc, emitters);
89
- }
90
- put(url, options, sc, emitters) {
91
- return this.request(url, { ...options, httpMethod: 'PUT' }, sc, emitters);
92
- }
93
- get(url, options, sc, emitters) {
94
- return this.request(url, { ...options, httpMethod: 'GET' }, sc, emitters);
95
- }
96
- delete(url, options, sc, emitters) {
97
- return this.request(url, { ...options, httpMethod: 'DELETE' }, sc, emitters);
98
- }
99
- addPromiseListeners(promise, eventEmitter) {
100
- const eventPromise = Object.assign(promise, {
101
- on() {
102
- // eslint-disable-next-line prefer-spread, prefer-rest-params
103
- eventEmitter.on.apply(eventEmitter, arguments);
104
- return this;
105
- },
106
- once() {
107
- // eslint-disable-next-line prefer-spread, prefer-rest-params
108
- eventEmitter.once.apply(eventEmitter, arguments);
109
- return this;
110
- },
111
- emit() {
112
- // eslint-disable-next-line prefer-spread, prefer-rest-params
113
- eventEmitter.emit.apply(eventEmitter, arguments);
114
- return this;
115
- },
116
- off() {
117
- // eslint-disable-next-line prefer-spread, prefer-rest-params
118
- eventEmitter.off.apply(eventEmitter, arguments);
119
- return this;
120
- }
121
- });
122
- return eventPromise;
123
- }
124
- getEventEmitters() {
125
- const apiClientEmitter = {
126
- on: this.on.bind(this),
127
- off: this.off.bind(this),
128
- once: this.once.bind(this),
129
- emit: this.emit.bind(this)
130
- };
131
- return {
132
- apiClientEmitter,
133
- eventEmitter: ee({})
134
- };
135
- }
136
- requestWithLegacyEventEmitters(request$, emitters, returnType) {
137
- const abort$ = new Subject();
138
- const { eventEmitter, apiClientEmitter } = emitters;
139
- const promise = request$
140
- .pipe(map((res) => {
141
- if (isHttpUploadProgressEvent(res)) {
142
- const percent = Math.round((res.loaded / res.total) * 100);
143
- eventEmitter.emit('progress', { loaded: res.loaded, total: res.total, percent });
144
- }
145
- if (isHttpResponseEvent(res)) {
146
- eventEmitter.emit('success', res.body);
147
- return AdfHttpClient.deserialize(res, returnType);
148
- }
149
- }), catchError((err) => {
150
- // since we can't always determinate ahead of time if the response is going to be xml or plain text response
151
- // we need to handle false positive cases here.
152
- if (err.status === 200) {
153
- eventEmitter.emit('success', err.error.text);
154
- return of(err.error.text);
155
- }
156
- eventEmitter.emit('error', err);
157
- apiClientEmitter.emit('error', { ...err, response: { req: err } });
158
- if (err.status === 401) {
159
- eventEmitter.emit('unauthorized');
160
- apiClientEmitter.emit('unauthorized');
161
- }
162
- // for backwards compatibility we need to convert it to error class as the HttpErrorResponse only implements Error interface, not extending it,
163
- // and we need to be able to correctly pass instanceof Error conditions used inside repository
164
- // we also need to pass error as Stringify string as we are detecting statusCodes using JSON.parse(error.message) in some places
165
- const msg = typeof err.error === 'string' ? err.error : JSON.stringify(err.error);
166
- // for backwards compatibility to handle cases in code where we try read response.error.response.body;
167
- const error = {
168
- ...err,
169
- body: err.error
170
- };
171
- const alfrescoApiError = new AlfrescoApiResponseError(msg, err.status, error);
172
- return throwError(alfrescoApiError);
173
- }), takeUntil(abort$))
174
- .toPromise();
175
- promise.abort = function () {
176
- eventEmitter.emit('abort');
177
- abort$.next();
178
- abort$.complete();
179
- return this;
180
- };
181
- return this.addPromiseListeners(promise, eventEmitter);
182
- }
183
- static getBody(options) {
184
- const contentType = options.contentType ? options.contentType : AdfHttpClient.jsonPreferredMime(options.contentTypes);
185
- const isFormData = contentType === 'multipart/form-data';
186
- const isFormUrlEncoded = contentType === 'application/x-www-form-urlencoded';
187
- const body = options.bodyParam;
188
- if (isFormData) {
189
- return convertObjectToFormData(options.formParams);
190
- }
191
- if (isFormUrlEncoded) {
192
- return new HttpParams({ fromObject: removeNilValues(options.formParams) });
193
- }
194
- return body;
195
- }
196
- getHeaders(options) {
197
- const contentType = options.contentType || AdfHttpClient.jsonPreferredMime(options.contentTypes);
198
- const accept = options.accept || AdfHttpClient.jsonPreferredMime(options.accepts);
199
- const optionsHeaders = {
200
- ...options.headerParams,
201
- ...(accept && { Accept: accept }),
202
- ...(contentType && { 'Content-Type': contentType })
203
- };
204
- if (!this.disableCsrf) {
205
- this.setCsrfToken(optionsHeaders);
206
- }
207
- return new HttpHeaders(optionsHeaders);
208
- }
209
- /**
210
- * Chooses a content type from the given array, with JSON preferred; i.e. return JSON if included, otherwise return the first.
211
- *
212
- * @param contentTypes a contentType array
213
- * @returns The chosen content type, preferring JSON.
214
- */
215
- static jsonPreferredMime(contentTypes) {
216
- if (!contentTypes?.length) {
217
- return 'application/json';
218
- }
219
- for (let i = 0; i < contentTypes.length; i++) {
220
- if (AdfHttpClient.isJsonMime(contentTypes[i])) {
221
- return contentTypes[i];
222
- }
223
- }
224
- return contentTypes[0];
225
- }
226
- /**
227
- * Checks whether the given content type represents JSON.<br>
228
- * JSON content type examples:<br>
229
- * <ul>
230
- * <li>application/json</li>
231
- * <li>application/json; charset=UTF8</li>
232
- * <li>APPLICATION/JSON</li>
233
- * </ul>
234
- *
235
- * @param contentType The MIME content type to check.
236
- * @returns <code>true</code> if <code>contentType</code> represents JSON, otherwise <code>false</code>.
237
- */
238
- static isJsonMime(contentType) {
239
- return Boolean(contentType?.match(/^application\/json(;.*)?$/i));
240
- }
241
- setCsrfToken(optionsHeaders) {
242
- const token = this.createCSRFToken();
243
- optionsHeaders['X-CSRF-TOKEN'] = token;
244
- try {
245
- document.cookie = 'CSRF-TOKEN=' + token + ';path=/';
246
- }
247
- catch (err) {
248
- /* continue regardless of error */
249
- }
250
- }
251
- createCSRFToken(a) {
252
- const randomValue = AdfHttpClient.getSecureRandomValue();
253
- return a ? (a ^ ((randomValue * 16) >> (a / 4))).toString(16) : ([1e16] + (1e16).toString()).replace(/[01]/g, this.createCSRFToken);
254
- }
255
- static getSecureRandomValue() {
256
- const max = Math.pow(2, 32);
257
- return window.crypto.getRandomValues(new Uint32Array(1))[0] / max;
258
- }
259
- static getResponseType(options) {
260
- const isBlobType = options.returnType?.toString().toLowerCase() === 'blob' || options.responseType?.toString().toLowerCase() === 'blob';
261
- if (isBlobType) {
262
- return 'blob';
263
- }
264
- if (options.returnType === 'String') {
265
- return 'text';
266
- }
267
- return 'json';
268
- }
269
- /**
270
- * Deserialize an HTTP response body into a value of the specified type.
271
- *
272
- * @param response response object
273
- * @param returnType return type
274
- * @returns deserialized object
275
- */
276
- static deserialize(response, returnType) {
277
- if (response === null) {
278
- return null;
279
- }
280
- const body = response.body;
281
- if (!returnType) {
282
- // for backwards compatibility we need to return empty string instead of null,
283
- // to avoid issues when accessing null response would break application [C309878]
284
- // cannot read property 'entry' of null in cases like
285
- // return this.post(apiUrl, saveFormRepresentation).pipe(map((res: any) => res.entry))
286
- return body !== null ? body : '';
287
- }
288
- if (isBlobResponse(response, returnType)) {
289
- return AdfHttpClient.deserializeBlobResponse(response);
290
- }
291
- if (!isConstructor(returnType)) {
292
- return body;
293
- }
294
- if (Array.isArray(body)) {
295
- return body.map((element) => new returnType(element));
296
- }
297
- return new returnType(body);
298
- }
299
- static deserializeBlobResponse(response) {
300
- return new Blob([response.body], { type: response.headers.get('Content-Type') });
301
- }
302
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AdfHttpClient, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
303
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AdfHttpClient, providedIn: 'root' }); }
304
- }
305
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AdfHttpClient, decorators: [{
306
- type: Injectable,
307
- args: [{
308
- providedIn: 'root'
309
- }]
310
- }], ctorParameters: () => [{ type: i1.HttpClient }] });
311
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRmLWh0dHAtY2xpZW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9hcGkvc3JjL2xpYi9hZGYtaHR0cC1jbGllbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFFSCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVoRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFdBQVcsRUFBZ0MsV0FBVyxFQUFFLFVBQVUsRUFBZ0IsTUFBTSxzQkFBc0IsQ0FBQztBQUNwSSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1RCxPQUFPLEVBQ0gsdUJBQXVCLEVBQ3ZCLCtCQUErQixFQUMvQixjQUFjLEVBQ2QsYUFBYSxFQUNiLG1CQUFtQixFQUNuQix5QkFBeUIsRUFDekIsZUFBZSxFQUNsQixNQUFNLG1DQUFtQyxDQUFDO0FBQzNDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBR3RGLE9BQU8sRUFBZSxNQUFNLGVBQWUsQ0FBQzs7O0FBVTVDLE1BQU0sT0FBTyxhQUFhO0lBUXRCLElBQUksV0FBVztRQUNYLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUM3QixDQUFDO0lBRUQsSUFBSSxXQUFXLENBQUMsV0FBb0I7UUFDaEMsSUFBSSxDQUFDLFlBQVksR0FBRyxXQUFXLENBQUM7SUFDcEMsQ0FBQztJQVNELFlBQW9CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixV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RSxJQUFJLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3JGLENBQUM7K0dBbFZRLGFBQWE7bUhBQWIsYUFBYSxjQUZWLE1BQU07OzRGQUVULGFBQWE7a0JBSHpCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBTSE9VTERfQUREX0FVVEhfVE9LRU4gfSBmcm9tICdAYWxmcmVzY28vYWRmLWNvcmUvYXV0aCc7XG5pbXBvcnQgeyBFbWl0dGVycyBhcyBKc0FwaUVtaXR0ZXJzLCBIdHRwQ2xpZW50IGFzIEpzQXBpSHR0cENsaWVudCB9IGZyb20gJ0BhbGZyZXNjby9qcy1hcGknO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cENvbnRleHQsIEh0dHBFcnJvclJlc3BvbnNlLCBIdHRwRXZlbnQsIEh0dHBIZWFkZXJzLCBIdHRwUGFyYW1zLCBIdHRwUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiwgU3ViamVjdCwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1xuICAgIGNvbnZlcnRPYmplY3RUb0Zvcm1EYXRhLFxuICAgIGdldFF1ZXJ5UGFyYW1zV2l0aEN1c3RvbUVuY29kZXIsXG4gICAgaXNCbG9iUmVzcG9uc2UsXG4gICAgaXNDb25zdHJ1Y3RvcixcbiAgICBpc0h0dHBSZXNwb25zZUV2ZW50LFxuICAgIGlzSHR0cFVwbG9hZFByb2dyZXNzRXZlbnQsXG4gICAgcmVtb3ZlTmlsVmFsdWVzXG59IGZyb20gJy4vYWxmcmVzY28tYXBpL2FsZnJlc2NvLWFwaS51dGlscyc7XG5pbXBvcnQgeyBBbGZyZXNjb0FwaVBhcmFtRW5jb2RlciB9IGZyb20gJy4vYWxmcmVzY28tYXBpL2FsZnJlc2NvLWFwaS5wYXJhbS1lbmNvZGVyJztcbmltcG9ydCB7IEFsZnJlc2NvQXBpUmVzcG9uc2VFcnJvciB9IGZyb20gJy4vYWxmcmVzY28tYXBpL2FsZnJlc2NvLWFwaS5yZXNwb25zZS1lcnJvcic7XG5pbXBvcnQgeyBDb25zdHJ1Y3RvciB9IGZyb20gJy4vdHlwZXMnO1xuaW1wb3J0IHsgUmVxdWVzdE9wdGlvbnMsIFNlY3VyaXR5T3B0aW9ucyB9IGZyb20gJy4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgZWUsIHsgRW1pdHRlciB9IGZyb20gJ2V2ZW50LWVtaXR0ZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIEVtaXR0ZXJzIHtcbiAgICByZWFkb25seSBldmVudEVtaXR0ZXI6IEVtaXR0ZXI7XG4gICAgcmVhZG9ubHkgYXBpQ2xpZW50RW1pdHRlcjogRW1pdHRlcjtcbn1cblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBZGZIdHRwQ2xpZW50IGltcGxlbWVudHMgZWUuRW1pdHRlciwgSnNBcGlIdHRwQ2xpZW50IHtcbiAgICBvbjogZWUuRW1pdHRlck1ldGhvZDtcbiAgICBvZmY6IGVlLkVtaXR0ZXJNZXRob2Q7XG4gICAgb25jZTogZWUuRW1pdHRlck1ldGhvZDtcbiAgICBfZGlzYWJsZUNzcmY6IGJvb2xlYW47XG5cbiAgICBlbWl0OiAodHlwZTogc3RyaW5nLCAuLi5hcmdzOiBhbnlbXSkgPT4gdm9pZDtcblxuICAgIGdldCBkaXNhYmxlQ3NyZigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVDc3JmO1xuICAgIH1cblxuICAgIHNldCBkaXNhYmxlQ3NyZihkaXNhYmxlQ3NyZjogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9kaXNhYmxlQ3NyZiA9IGRpc2FibGVDc3JmO1xuICAgIH1cblxuICAgIHByaXZhdGUgZGVmYXVsdFNlY3VyaXR5T3B0aW9ucyA9IHtcbiAgICAgICAgd2l0aENyZWRlbnRpYWxzOiB0cnVlLFxuICAgICAgICBpc0JwbVJlcXVlc3Q6IGZhbHNlLFxuICAgICAgICBhdXRoZW50aWNhdGlvbnM6IHt9LFxuICAgICAgICBkZWZhdWx0SGVhZGVyczoge31cbiAgICB9O1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50KSB7XG4gICAgICAgIGVlKHRoaXMpO1xuICAgIH1cblxuICAgIHNldERlZmF1bHRTZWN1cml0eU9wdGlvbihvcHRpb25zOiBhbnkpIHtcbiAgICAgICAgdGhpcy5kZWZhdWx0U2VjdXJpdHlPcHRpb25zID0gdGhpcy5tZXJnZSh0aGlzLmRlZmF1bHRTZWN1cml0eU9wdGlvbnMsIG9wdGlvbnMpO1xuICAgIH1cblxuICAgIG1lcmdlKC4uLm9iamVjdHMpOiBhbnkge1xuICAgICAgICBjb25zdCByZXN1bHQgPSB7fTtcblxuICAgICAgICBvYmplY3RzLmZvckVhY2goKHNvdXJjZSkgPT4ge1xuICAgICAgICAgICAgT2JqZWN0LmtleXMoc291cmNlKS5mb3JFYWNoKChwcm9wKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHByb3AgaW4gcmVzdWx0ICYmIEFycmF5LmlzQXJyYXkocmVzdWx0W3Byb3BdKSkge1xuICAgICAgICAgICAgICAgICAgICByZXN1bHRbcHJvcF0gPSByZXN1bHRbcHJvcF0uY29uY2F0KHNvdXJjZVtwcm9wXSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChwcm9wIGluIHJlc3VsdCAmJiB0eXBlb2YgcmVzdWx0W3Byb3BdID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgICAgICAgICByZXN1bHRbcHJvcF0gPSB0aGlzLm1lcmdlKHJlc3VsdFtwcm9wXSwgc291cmNlW3Byb3BdKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICByZXN1bHRbcHJvcF0gPSBzb3VyY2VbcHJvcF07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuXG4gICAgcmVxdWVzdDxUID0gYW55Pih1cmw6IHN0cmluZywgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zLCBzYzogU2VjdXJpdHlPcHRpb25zID0gdGhpcy5kZWZhdWx0U2VjdXJpdHlPcHRpb25zLCBlbWl0dGVycz86IEpzQXBpRW1pdHRlcnMpOiBQcm9taXNlPFQ+IHtcbiAgICAgICAgY29uc3QgYm9keSA9IEFkZkh0dHBDbGllbnQuZ2V0Qm9keShvcHRpb25zKTtcbiAgICAgICAgY29uc3QgcGFyYW1zID0gZ2V0UXVlcnlQYXJhbXNXaXRoQ3VzdG9tRW5jb2RlcihvcHRpb25zLnF1ZXJ5UGFyYW1zLCBuZXcgQWxmcmVzY29BcGlQYXJhbUVuY29kZXIoKSk7XG4gICAgICAgIGNvbnN0IHJlc3BvbnNlVHlwZSA9IEFkZkh0dHBDbGllbnQuZ2V0UmVzcG9uc2VUeXBlKG9wdGlvbnMpO1xuICAgICAgICBjb25zdCBjb250ZXh0ID0gbmV3IEh0dHBDb250ZXh0KCkuc2V0KFNIT1VMRF9BRERfQVVUSF9UT0tFTiwgdHJ1ZSk7XG4gICAgICAgIGNvbnN0IHNlY3VyaXR5OiBTZWN1cml0eU9wdGlvbnMgPSB7IC4uLnRoaXMuZGVmYXVsdFNlY3VyaXR5T3B0aW9ucywgLi4uc2MgfTtcbiAgICAgICAgY29uc3QgaGVhZGVycyA9IHRoaXMuZ2V0SGVhZGVycyhvcHRpb25zKTtcbiAgICAgICAgaWYgKCFlbWl0dGVycykge1xuICAgICAgICAgICAgZW1pdHRlcnMgPSB0aGlzLmdldEV2ZW50RW1pdHRlcnMoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlcXVlc3QgPSB0aGlzLmh0dHBDbGllbnQucmVxdWVzdChvcHRpb25zLmh0dHBNZXRob2QsIHVybCwge1xuICAgICAgICAgICAgY29udGV4dCxcbiAgICAgICAgICAgIC4uLihib2R5ICYmIHsgYm9keSB9KSxcbiAgICAgICAgICAgIC4uLihyZXNwb25zZVR5cGUgJiYgeyByZXNwb25zZVR5cGUgfSksXG4gICAgICAgICAgICAuLi5zZWN1cml0eSxcbiAgICAgICAgICAgIC4uLihwYXJhbXMgJiYgeyBwYXJhbXMgfSksXG4gICAgICAgICAgICBoZWFkZXJzLFxuICAgICAgICAgICAgb2JzZXJ2ZTogJ2V2ZW50cycsXG4gICAgICAgICAgICByZXBvcnRQcm9ncmVzczogdHJ1ZVxuICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gdGhpcy5yZXF1ZXN0V2l0aExlZ2FjeUV2ZW50RW1pdHRlcnM8VD4ocmVxdWVzdCwgZW1pdHRlcnMsIG9wdGlvbnMucmV0dXJuVHlwZSk7XG4gICAgfVxuXG4gICAgcG9zdDxUID0gYW55Pih1cmw6IHN0cmluZywgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zLCBzYz86IFNlY3VyaXR5T3B0aW9ucywgZW1pdHRlcnM/OiBKc0FwaUVtaXR0ZXJzKTogUHJvbWlzZTxUPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlcXVlc3Q8VD4odXJsLCB7IC4uLm9wdGlvbnMsIGh0dHBNZXRob2Q6ICdQT1NUJyB9LCBzYywgZW1pdHRlcnMpO1xuICAgIH1cblxuICAgIHB1dDxUID0gYW55Pih1cmw6IHN0cmluZywgb3B0aW9ucz86IFJlcXVlc3RPcHRpb25zLCBzYz86IFNlY3VyaXR5T3B0aW9ucywgZW1pdHRlcnM/OiBKc0FwaUVtaXR0ZXJzKTogUHJvbWlzZTxUPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlcXVlc3Q8VD4odXJsLCB7IC4uLm9wdGlvbnMsIGh0dHBNZXRob2Q6ICdQVVQnIH0sIHNjLCBlbWl0dGVycyk7XG4gICAgfVxuXG4gICAgZ2V0PFQgPSBhbnk+KHVybDogc3RyaW5nLCBvcHRpb25zPzogUmVxdWVzdE9wdGlvbnMsIHNjPzogU2VjdXJpdHlPcHRpb25zLCBlbWl0dGVycz86IEpzQXBpRW1pdHRlcnMpOiBQcm9taXNlPFQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVxdWVzdDxUPih1cmwsIHsgLi4ub3B0aW9ucywgaHR0cE1ldGhvZDogJ0dFVCcgfSwgc2MsIGVtaXR0ZXJzKTtcbiAgICB9XG5cbiAgICBkZWxldGU8VCA9IHZvaWQ+KHVybDogc3RyaW5nLCBvcHRpb25zPzogUmVxdWVzdE9wdGlvbnMsIHNjPzogU2VjdXJpdHlPcHRpb25zLCBlbWl0dGVycz86IEpzQXBpRW1pdHRlcnMpOiBQcm9taXNlPFQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVxdWVzdDxUPih1cmwsIHsgLi4ub3B0aW9ucywgaHR0cE1ldGhvZDogJ0RFTEVURScgfSwgc2MsIGVtaXR0ZXJzKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZFByb21pc2VMaXN0ZW5lcnM8VCA9IGFueT4ocHJvbWlzZTogUHJvbWlzZTxUPiwgZXZlbnRFbWl0dGVyOiBhbnkpIHtcbiAgICAgICAgY29uc3QgZXZlbnRQcm9taXNlID0gT2JqZWN0LmFzc2lnbihwcm9taXNlLCB7XG4gICAgICAgICAgICBvbigpIHtcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXNwcmVhZCwgcHJlZmVyLXJlc3QtcGFyYW1zXG4gICAgICAgICAgICAgICAgZXZlbnRFbWl0dGVyLm9uLmFwcGx5KGV2ZW50RW1pdHRlciwgYXJndW1lbnRzKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcztcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBvbmNlKCkge1xuICAgICAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItc3ByZWFkLCBwcmVmZXItcmVzdC1wYXJhbXNcbiAgICAgICAgICAgICAgICBldmVudEVtaXR0ZXIub25jZS5hcHBseShldmVudEVtaXR0ZXIsIGFyZ3VtZW50cyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgZW1pdCgpIHtcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXNwcmVhZCwgcHJlZmVyLXJlc3QtcGFyYW1zXG4gICAgICAgICAgICAgICAgZXZlbnRFbWl0dGVyLmVtaXQuYXBwbHkoZXZlbnRFbWl0dGVyLCBhcmd1bWVudHMpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIG9mZigpIHtcbiAgICAgICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgcHJlZmVyLXNwcmVhZCwgcHJlZmVyLXJlc3QtcGFyYW1zXG4gICAgICAgICAgICAgICAgZXZlbnRFbWl0dGVyLm9mZi5hcHBseShldmVudEVtaXR0ZXIsIGFyZ3VtZW50cyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXM7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHJldHVybiBldmVudFByb21pc2U7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRFdmVudEVtaXR0ZXJzKCk6IEVtaXR0ZXJzIHtcbiAgICAgICAgY29uc3QgYXBpQ2xpZW50RW1pdHRlciA9IHtcbiAgICAgICAgICAgIG9uOiB0aGlzLm9uLmJpbmQodGhpcyksXG4gICAgICAgICAgICBvZmY6IHRoaXMub2ZmLmJpbmQodGhpcyksXG4gICAgICAgICAgICBvbmNlOiB0aGlzLm9uY2UuYmluZCh0aGlzKSxcbiAgICAgICAgICAgIGVtaXQ6IHRoaXMuZW1pdC5iaW5kKHRoaXMpXG4gICAgICAgIH07XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIGFwaUNsaWVudEVtaXR0ZXIsXG4gICAgICAgICAgICBldmVudEVtaXR0ZXI6IGVlKHt9KVxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVxdWVzdFdpdGhMZWdhY3lFdmVudEVtaXR0ZXJzPFQgPSBhbnk+KHJlcXVlc3QkOiBPYnNlcnZhYmxlPEh0dHBFdmVudDxUPj4sIGVtaXR0ZXJzOiBKc0FwaUVtaXR0ZXJzLCByZXR1cm5UeXBlOiBhbnkpOiBQcm9taXNlPFQ+IHtcbiAgICAgICAgY29uc3QgYWJvcnQkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcbiAgICAgICAgY29uc3QgeyBldmVudEVtaXR0ZXIsIGFwaUNsaWVudEVtaXR0ZXIgfSA9IGVtaXR0ZXJzO1xuXG4gICAgICAgIGNvbnN0IHByb21pc2UgPSByZXF1ZXN0JFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzSHR0cFVwbG9hZFByb2dyZXNzRXZlbnQocmVzKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcGVyY2VudCA9IE1hdGgucm91bmQoKHJlcy5sb2FkZWQgLyByZXMudG90YWwpICogMTAwKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50RW1pdHRlci5lbWl0KCdwcm9ncmVzcycsIHsgbG9hZGVkOiByZXMubG9hZGVkLCB0b3RhbDogcmVzLnRvdGFsLCBwZXJjZW50IH0pO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgaWYgKGlzSHR0cFJlc3BvbnNlRXZlbnQocmVzKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRFbWl0dGVyLmVtaXQoJ3N1Y2Nlc3MnLCByZXMuYm9keSk7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gQWRmSHR0cENsaWVudC5kZXNlcmlhbGl6ZShyZXMsIHJldHVyblR5cGUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgY2F0Y2hFcnJvcigoZXJyOiBIdHRwRXJyb3JSZXNwb25zZSk6IE9ic2VydmFibGU8QWxmcmVzY29BcGlSZXNwb25zZUVycm9yPiA9PiB7XG4gICAgICAgICAgICAgICAgICAgIC8vIHNpbmNlIHdlIGNhbid0IGFsd2F5cyBkZXRlcm1pbmF0ZSBhaGVhZCBvZiB0aW1lIGlmIHRoZSByZXNwb25zZSBpcyBnb2luZyB0byBiZSB4bWwgb3IgcGxhaW4gdGV4dCByZXNwb25zZVxuICAgICAgICAgICAgICAgICAgICAvLyB3ZSBuZWVkIHRvIGhhbmRsZSBmYWxzZSBwb3NpdGl2ZSBjYXNlcyBoZXJlLlxuXG4gICAgICAgICAgICAgICAgICAgIGlmIChlcnIuc3RhdHVzID09PSAyMDApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50RW1pdHRlci5lbWl0KCdzdWNjZXNzJywgZXJyLmVycm9yLnRleHQpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIG9mKGVyci5lcnJvci50ZXh0KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIGV2ZW50RW1pdHRlci5lbWl0KCdlcnJvcicsIGVycik7XG4gICAgICAgICAgICAgICAgICAgIGFwaUNsaWVudEVtaXR0ZXIuZW1pdCgnZXJyb3InLCB7IC4uLmVyciwgcmVzcG9uc2U6IHsgcmVxOiBlcnIgfSB9KTtcblxuICAgICAgICAgICAgICAgICAgICBpZiAoZXJyLnN0YXR1cyA9PT0gNDAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBldmVudEVtaXR0ZXIuZW1pdCgndW5hdXRob3JpemVkJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBhcGlDbGllbnRFbWl0dGVyLmVtaXQoJ3VuYXV0aG9yaXplZCcpO1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdlIG5lZWQgdG8gY29udmVydCBpdCB0byBlcnJvciBjbGFzcyBhcyB0aGUgSHR0cEVycm9yUmVzcG9uc2Ugb25seSBpbXBsZW1lbnRzIEVycm9yIGludGVyZmFjZSwgbm90IGV4dGVuZGluZyBpdCxcbiAgICAgICAgICAgICAgICAgICAgLy8gYW5kIHdlIG5lZWQgdG8gYmUgYWJsZSB0byBjb3JyZWN0bHkgcGFzcyBpbnN0YW5jZW9mIEVycm9yIGNvbmRpdGlvbnMgdXNlZCBpbnNpZGUgcmVwb3NpdG9yeVxuICAgICAgICAgICAgICAgICAgICAvLyB3ZSBhbHNvIG5lZWQgdG8gcGFzcyBlcnJvciBhcyBTdHJpbmdpZnkgc3RyaW5nIGFzIHdlIGFyZSBkZXRlY3Rpbmcgc3RhdHVzQ29kZXMgdXNpbmcgSlNPTi5wYXJzZShlcnJvci5tZXNzYWdlKSBpbiBzb21lIHBsYWNlc1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBtc2cgPSB0eXBlb2YgZXJyLmVycm9yID09PSAnc3RyaW5nJyA/IGVyci5lcnJvciA6IEpTT04uc3RyaW5naWZ5KGVyci5lcnJvcik7XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gZm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHRvIGhhbmRsZSBjYXNlcyBpbiBjb2RlIHdoZXJlIHdlIHRyeSByZWFkIHJlc3BvbnNlLmVycm9yLnJlc3BvbnNlLmJvZHk7XG5cbiAgICAgICAgICAgICAgICAgICAgY29uc3QgZXJyb3IgPSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5lcnIsXG4gICAgICAgICAgICAgICAgICAgICAgICBib2R5OiBlcnIuZXJyb3JcbiAgICAgICAgICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgICAgICAgICBjb25zdCBhbGZyZXNjb0FwaUVycm9yID0gbmV3IEFsZnJlc2NvQXBpUmVzcG9uc2VFcnJvcihtc2csIGVyci5zdGF0dXMsIGVycm9yKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoYWxmcmVzY29BcGlFcnJvcik7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKGFib3J0JClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC50b1Byb21pc2UoKTtcblxuICAgICAgICAocHJvbWlzZSBhcyBhbnkpLmFib3J0ID0gZnVuY3Rpb24gKCkge1xuICAgICAgICAgICAgZXZlbnRFbWl0dGVyLmVtaXQoJ2Fib3J0Jyk7XG4gICAgICAgICAgICBhYm9ydCQubmV4dCgpO1xuICAgICAgICAgICAgYWJvcnQkLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICByZXR1cm4gdGhpcztcbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4gdGhpcy5hZGRQcm9taXNlTGlzdGVuZXJzKHByb21pc2UsIGV2ZW50RW1pdHRlcik7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzdGF0aWMgZ2V0Qm9keShvcHRpb25zOiBSZXF1ZXN0T3B0aW9ucyk6IGFueSB7XG4gICAgICAgIGNvbnN0IGNvbnRlbnRUeXBlID0gb3B0aW9ucy5jb250ZW50VHlwZSA/IG9wdGlvbnMuY29udGVudFR5cGUgOiBBZGZIdHRwQ2xpZW50Lmpzb25QcmVmZXJyZWRNaW1lKG9wdGlvbnMuY29udGVudFR5cGVzKTtcbiAgICAgICAgY29uc3QgaXNGb3JtRGF0YSA9IGNvbnRlbnRUeXBlID09PSAnbXVsdGlwYXJ0L2Zvcm0tZGF0YSc7XG4gICAgICAgIGNvbnN0IGlzRm9ybVVybEVuY29kZWQgPSBjb250ZW50VHlwZSA9PT0gJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCc7XG4gICAgICAgIGNvbnN0IGJvZHkgPSBvcHRpb25zLmJvZHlQYXJhbTtcblxuICAgICAgICBpZiAoaXNGb3JtRGF0YSkge1xuICAgICAgICAgICAgcmV0dXJuIGNvbnZlcnRPYmplY3RUb0Zvcm1EYXRhKG9wdGlvbnMuZm9ybVBhcmFtcyk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXNGb3JtVXJsRW5jb2RlZCkge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBIdHRwUGFyYW1zKHsgZnJvbU9iamVjdDogcmVtb3ZlTmlsVmFsdWVzKG9wdGlvbnMuZm9ybVBhcmFtcykgfSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gYm9keTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEhlYWRlcnMob3B0aW9uczogUmVxdWVzdE9wdGlvbnMpOiBIdHRwSGVhZGVycyB7XG4gICAgICAgIGNvbnN0IGNvbnRlbnRUeXBlID0gb3B0aW9ucy5jb250ZW50VHlwZSB8fCBBZGZIdHRwQ2xpZW50Lmpzb25QcmVmZXJyZWRNaW1lKG9wdGlvbnMuY29udGVudFR5cGVzKTtcbiAgICAgICAgY29uc3QgYWNjZXB0ID0gb3B0aW9ucy5hY2NlcHQgfHwgQWRmSHR0cENsaWVudC5qc29uUHJlZmVycmVkTWltZShvcHRpb25zLmFjY2VwdHMpO1xuXG4gICAgICAgIGNvbnN0IG9wdGlvbnNIZWFkZXJzID0ge1xuICAgICAgICAgICAgLi4ub3B0aW9ucy5oZWFkZXJQYXJhbXMsXG4gICAgICAgICAgICAuLi4oYWNjZXB0ICYmIHsgQWNjZXB0OiBhY2NlcHQgfSksXG4gICAgICAgICAgICAuLi4oY29udGVudFR5cGUgJiYgeyAnQ29udGVudC1UeXBlJzogY29udGVudFR5cGUgfSlcbiAgICAgICAgfTtcblxuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZUNzcmYpIHtcbiAgICAgICAgICAgIHRoaXMuc2V0Q3NyZlRva2VuKG9wdGlvbnNIZWFkZXJzKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBuZXcgSHR0cEhlYWRlcnMob3B0aW9uc0hlYWRlcnMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENob29zZXMgYSBjb250ZW50IHR5cGUgZnJvbSB0aGUgZ2l2ZW4gYXJyYXksIHdpdGggSlNPTiBwcmVmZXJyZWQ7IGkuZS4gcmV0dXJuIEpTT04gaWYgaW5jbHVkZWQsIG90aGVyd2lzZSByZXR1cm4gdGhlIGZpcnN0LlxuICAgICAqXG4gICAgICogQHBhcmFtIGNvbnRlbnRUeXBlcyBhIGNvbnRlbnRUeXBlIGFycmF5XG4gICAgICogQHJldHVybnMgIFRoZSBjaG9zZW4gY29udGVudCB0eXBlLCBwcmVmZXJyaW5nIEpTT04uXG4gICAgICovXG4gICAgcHJpdmF0ZSBzdGF0aWMganNvblByZWZlcnJlZE1pbWUoY29udGVudFR5cGVzOiByZWFkb25seSBzdHJpbmdbXSk6IHN0cmluZyB7XG4gICAgICAgIGlmICghY29udGVudFR5cGVzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHJldHVybiAnYXBwbGljYXRpb24vanNvbic7XG4gICAgICAgIH1cblxuICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IGNvbnRlbnRUeXBlcy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKEFkZkh0dHBDbGllbnQuaXNKc29uTWltZShjb250ZW50VHlwZXNbaV0pKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGNvbnRlbnRUeXBlc1tpXTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gY29udGVudFR5cGVzWzBdO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrcyB3aGV0aGVyIHRoZSBnaXZlbiBjb250ZW50IHR5cGUgcmVwcmVzZW50cyBKU09OLjxicj5cbiAgICAgKiBKU09OIGNvbnRlbnQgdHlwZSBleGFtcGxlczo8YnI+XG4gICAgICogPHVsPlxuICAgICAqIDxsaT5hcHBsaWNhdGlvbi9qc29uPC9saT5cbiAgICAgKiA8bGk+YXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEY4PC9saT5cbiAgICAgKiA8bGk+QVBQTElDQVRJT04vSlNPTjwvbGk+XG4gICAgICogPC91bD5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjb250ZW50VHlwZSBUaGUgTUlNRSBjb250ZW50IHR5cGUgdG8gY2hlY2suXG4gICAgICogQHJldHVybnMgPGNvZGU+dHJ1ZTwvY29kZT4gaWYgPGNvZGU+Y29udGVudFR5cGU8L2NvZGU+IHJlcHJlc2VudHMgSlNPTiwgb3RoZXJ3aXNlIDxjb2RlPmZhbHNlPC9jb2RlPi5cbiAgICAgKi9cbiAgICBwcml2YXRlIHN0YXRpYyBpc0pzb25NaW1lKGNvbnRlbnRUeXBlOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIEJvb2xlYW4oY29udGVudFR5cGU/Lm1hdGNoKC9eYXBwbGljYXRpb25cXC9qc29uKDsuKik/JC9pKSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRDc3JmVG9rZW4ob3B0aW9uc0hlYWRlcnM6IGFueSkge1xuICAgICAgICBjb25zdCB0b2tlbiA9IHRoaXMuY3JlYXRlQ1NSRlRva2VuKCk7XG4gICAgICAgIG9wdGlvbnNIZWFkZXJzWydYLUNTUkYtVE9LRU4nXSA9IHRva2VuO1xuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBkb2N1bWVudC5jb29raWUgPSAnQ1NSRi1UT0tFTj0nICsgdG9rZW4gKyAnO3BhdGg9Lyc7XG4gICAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICAgICAgLyogY29udGludWUgcmVnYXJkbGVzcyBvZiBlcnJvciAqL1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjcmVhdGVDU1JGVG9rZW4oYT86IGFueSk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHJhbmRvbVZhbHVlID0gQWRmSHR0cENsaWVudC5nZXRTZWN1cmVSYW5kb21WYWx1ZSgpO1xuICAgICAgICByZXR1cm4gYSA/IChhIF4gKChyYW5kb21WYWx1ZSAqIDE2KSA+PiAoYSAvIDQpKSkudG9TdHJpbmcoMTYpIDogKFsxZTE2XSArICgxZTE2KS50b1N0cmluZygpKS5yZXBsYWNlKC9bMDFdL2csIHRoaXMuY3JlYXRlQ1NSRlRva2VuKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyBnZXRTZWN1cmVSYW5kb21WYWx1ZSgpOiBudW1iZXIge1xuICAgICAgICBjb25zdCBtYXggPSBNYXRoLnBvdygyLCAzMik7XG4gICAgICAgIHJldHVybiB3aW5kb3cuY3J5cHRvLmdldFJhbmRvbVZhbHVlcyhuZXcgVWludDMyQXJyYXkoMSkpWzBdIC8gbWF4O1xuICAgIH1cblxuICAgIHByaXZhdGUgc3RhdGljIGdldFJlc3BvbnNlVHlwZShvcHRpb25zOiBSZXF1ZXN0T3B0aW9ucyk6ICdibG9iJyB8ICdqc29uJyB8ICd0ZXh0JyB7XG4gICAgICAgIGNvbnN0IGlzQmxvYlR5cGUgPSBvcHRpb25zLnJldHVyblR5cGU/LnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKSA9PT0gJ2Jsb2InIHx8IG9wdGlvbnMucmVzcG9uc2VUeXBlPy50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkgPT09ICdibG9iJztcblxuICAgICAgICBpZiAoaXNCbG9iVHlwZSkge1xuICAgICAgICAgICAgcmV0dXJuICdibG9iJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChvcHRpb25zLnJldHVyblR5cGUgPT09ICdTdHJpbmcnKSB7XG4gICAgICAgICAgICByZXR1cm4gJ3RleHQnO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuICdqc29uJztcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEZXNlcmlhbGl6ZSBhbiBIVFRQIHJlc3BvbnNlIGJvZHkgaW50byBhIHZhbHVlIG9mIHRoZSBzcGVjaWZpZWQgdHlwZS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSByZXNwb25zZSByZXNwb25zZSBvYmplY3RcbiAgICAgKiBAcGFyYW0gcmV0dXJuVHlwZSByZXR1cm4gdHlwZVxuICAgICAqIEByZXR1cm5zIGRlc2VyaWFsaXplZCBvYmplY3RcbiAgICAgKi9cbiAgICBwcml2YXRlIHN0YXRpYyBkZXNlcmlhbGl6ZTxUPihyZXNwb25zZTogSHR0cFJlc3BvbnNlPFQ+LCByZXR1cm5UeXBlPzogQ29uc3RydWN0b3I8dW5rbm93bj4gfCAnYmxvYicpOiBhbnkge1xuICAgICAgICBpZiAocmVzcG9uc2UgPT09IG51bGwpIHtcbiAgICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgYm9keSA9IHJlc3BvbnNlLmJvZHk7XG5cbiAgICAgICAgaWYgKCFyZXR1cm5UeXBlKSB7XG4gICAgICAgICAgICAvLyBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHkgd2UgbmVlZCB0byByZXR1cm4gZW1wdHkgc3RyaW5nIGluc3RlYWQgb2YgbnVsbCxcbiAgICAgICAgICAgIC8vIHRvIGF2b2lkIGlzc3VlcyB3aGVuIGFjY2Vzc2luZyBudWxsIHJlc3BvbnNlIHdvdWxkIGJyZWFrIGFwcGxpY2F0aW9uIFtDMzA5ODc4XVxuICAgICAgICAgICAgLy8gY2Fubm90IHJlYWQgcHJvcGVydHkgJ2VudHJ5JyBvZiBudWxsIGluIGNhc2VzIGxpa2VcbiAgICAgICAgICAgIC8vIHJldHVybiB0aGlzLnBvc3QoYXBpVXJsLCBzYXZlRm9ybVJlcHJlc2VudGF0aW9uKS5waXBlKG1hcCgocmVzOiBhbnkpID0+IHJlcy5lbnRyeSkpXG5cbiAgICAgICAgICAgIHJldHVybiBib2R5ICE9PSBudWxsID8gYm9keSA6ICcnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGlzQmxvYlJlc3BvbnNlKHJlc3BvbnNlLCByZXR1cm5UeXBlKSkge1xuICAgICAgICAgICAgcmV0dXJuIEFkZkh0dHBDbGllbnQuZGVzZXJpYWxpemVCbG9iUmVzcG9uc2UocmVzcG9uc2UpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCFpc0NvbnN0cnVjdG9yKHJldHVyblR5cGUpKSB7XG4gICAgICAgICAgICByZXR1cm4gYm9keTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChBcnJheS5pc0FycmF5KGJvZHkpKSB7XG4gICAgICAgICAgICByZXR1cm4gYm9keS5tYXAoKGVsZW1lbnQpID0+IG5ldyByZXR1cm5UeXBlKGVsZW1lbnQpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBuZXcgcmV0dXJuVHlwZShib2R5KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHN0YXRpYyBkZXNlcmlhbGl6ZUJsb2JSZXNwb25zZShyZXNwb25zZTogSHR0cFJlc3BvbnNlPEJsb2I+KSB7XG4gICAgICAgIHJldHVybiBuZXcgQmxvYihbcmVzcG9uc2UuYm9keV0sIHsgdHlwZTogcmVzcG9uc2UuaGVhZGVycy5nZXQoJ0NvbnRlbnQtVHlwZScpIH0pO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,33 +0,0 @@
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
- // The default implementation of HttpParameterCodec from angular
18
- // does not encode some special characters like + with is causing issues with the alfresco js API and returns 500 error
19
- export class AlfrescoApiParamEncoder {
20
- encodeKey(key) {
21
- return encodeURIComponent(key);
22
- }
23
- encodeValue(value) {
24
- return encodeURIComponent(value);
25
- }
26
- decodeKey(key) {
27
- return decodeURIComponent(key);
28
- }
29
- decodeValue(value) {
30
- return decodeURIComponent(value);
31
- }
32
- }
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxmcmVzY28tYXBpLnBhcmFtLWVuY29kZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWIvY29yZS9hcGkvc3JjL2xpYi9hbGZyZXNjby1hcGkvYWxmcmVzY28tYXBpLnBhcmFtLWVuY29kZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBSUgsZ0VBQWdFO0FBQ2hFLHVIQUF1SDtBQUV2SCxNQUFNLE9BQU8sdUJBQXVCO0lBQ2hDLFNBQVMsQ0FBQyxHQUFXO1FBQ2pCLE9BQU8sa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFhO1FBQ3JCLE9BQU8sa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELFNBQVMsQ0FBQyxHQUFXO1FBQ2pCLE9BQU8sa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFhO1FBQ3JCLE9BQU8sa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNSBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqL1xuXG5pbXBvcnQgeyBIdHRwUGFyYW1ldGVyQ29kZWMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5cbi8vIFRoZSBkZWZhdWx0IGltcGxlbWVudGF0aW9uIG9mIEh0dHBQYXJhbWV0ZXJDb2RlYyBmcm9tIGFuZ3VsYXJcbi8vIGRvZXMgbm90IGVuY29kZSBzb21lIHNwZWNpYWwgY2hhcmFjdGVycyBsaWtlICsgd2l0aCBpcyBjYXVzaW5nIGlzc3VlcyB3aXRoIHRoZSBhbGZyZXNjbyBqcyBBUEkgYW5kIHJldHVybnMgNTAwIGVycm9yXG5cbmV4cG9ydCBjbGFzcyBBbGZyZXNjb0FwaVBhcmFtRW5jb2RlciBpbXBsZW1lbnRzIEh0dHBQYXJhbWV0ZXJDb2RlYyB7XG4gICAgZW5jb2RlS2V5KGtleTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIGVuY29kZVVSSUNvbXBvbmVudChrZXkpO1xuICAgIH1cblxuICAgIGVuY29kZVZhbHVlKHZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gZW5jb2RlVVJJQ29tcG9uZW50KHZhbHVlKTtcbiAgICB9XG5cbiAgICBkZWNvZGVLZXkoa2V5OiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gZGVjb2RlVVJJQ29tcG9uZW50KGtleSk7XG4gICAgfVxuXG4gICAgZGVjb2RlVmFsdWUodmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBkZWNvZGVVUklDb21wb25lbnQodmFsdWUpO1xuICAgIH1cbn1cbiJdfQ==